1
0
Fork 0
mirror of https://codeberg.org/icewind/bitbuffer.git synced 2026-06-03 16:44:06 +02:00

fix box/rc/arc write

This commit is contained in:
Robin Appelman 2021-07-16 21:15:34 +02:00
commit 309a3b1f6f
2 changed files with 29 additions and 9 deletions

View file

@ -1,4 +1,6 @@
use bitbuffer::{BigEndian, BitReadBuffer, BitReadStream, BitWriteStream, LittleEndian};
use std::rc::Rc;
use std::sync::Arc;
#[test]
fn test_write_bool_le() {
@ -184,3 +186,21 @@ fn test_write_signed() {
assert_eq!(-17i32, read.read_int(32).unwrap());
assert_eq!(-9i32, read.read_int(8).unwrap());
}
#[test]
fn test_write_container() {
let mut data = Vec::new();
{
let mut stream = BitWriteStream::new(&mut data, LittleEndian);
stream.write(&Box::new(true)).unwrap();
stream.write(&Rc::new(true)).unwrap();
stream.write(&Arc::new(true)).unwrap();
}
let mut read = BitReadStream::from(BitReadBuffer::new(&data, LittleEndian));
assert_eq!(Box::new(true), read.read().unwrap());
assert_eq!(Rc::new(true), read.read().unwrap());
assert_eq!(Arc::new(true), read.read().unwrap());
}