33 lines · 763 B · Rust
RawDownload
use gix_utils::Buffers; #[test]fn lifecycle() {    let mut bufs = Buffers::default();    let mut bufs = bufs.use_foreign_src(b"a");     assert_eq!(bufs.ro_src.unwrap(), b"a");     let (src, dest) = bufs.src_and_dest();     assert_eq!(src, b"a");    assert_eq!(dest.len(), 0);    dest.push(b'b');     bufs.swap();     assert_eq!(bufs.src, b"b");    assert!(bufs.ro_src.is_none());     let (src, dest) = bufs.src_and_dest();    assert_eq!(src, b"b");    assert_eq!(        dest.len(),        0,        "the original previously empty source buffer was swapped in "    );    dest.push(b'c');    bufs.swap();    let (src, dest) = bufs.src_and_dest();    assert_eq!(src, b"c");    assert_eq!(dest.len(), 0, "dest always starting  out empty");}