| 34 | |
| 35 | #[test] |
| 36 | fn assign_append() { |
| 37 | let mut dst = DataBuffer::new(DUMMY_DATA_0).unwrap(); |
| 38 | let mut src = DataBuffer::new(DUMMY_DATA_1).unwrap(); |
| 39 | DataBuffer::assign(&mut dst, &src); |
| 40 | |
| 41 | assert_eq!(dst.get_data(), DUMMY_DATA_1); |
| 42 | assert_eq!(src.get_data(), DUMMY_DATA_1); |
| 43 | // overwrite the src, to make sure that src is copied to dst, and not |
| 44 | // moved into it |
| 45 | src.set_data(DUMMY_DATA_0); |
| 46 | assert_eq!(dst.get_data(), DUMMY_DATA_1); |
| 47 | assert_eq!(src.get_data(), DUMMY_DATA_0); |
| 48 | |
| 49 | DataBuffer::append(&mut dst, &src); |
| 50 | let result: Vec<_> = DUMMY_DATA_1.iter().chain(DUMMY_DATA_0).copied().collect(); |
| 51 | assert_eq!(dst.get_data(), &result); |
| 52 | |
| 53 | assert_eq!(src.get_data(), DUMMY_DATA_0); |
| 54 | src.set_data(DUMMY_DATA_1); |
| 55 | assert_eq!(src.get_data(), DUMMY_DATA_1); |
| 56 | assert_eq!(dst.get_data(), &result); |
| 57 | } |
| 58 | |
| 59 | #[test] |
| 60 | fn to_from_formats() { |