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

fix reserve not setting bit len correctly

This commit is contained in:
Robin Appelman 2021-07-16 21:04:07 +02:00
commit 9587c7b872
3 changed files with 117 additions and 75 deletions

View file

@ -15,18 +15,22 @@ fn roundtrip<
) {
{
let mut data = Vec::new();
let mut stream = BitWriteStream::new(&mut data, LittleEndian);
stream.write(&val).unwrap();
let size = stream.bit_len();
let size = {
let mut stream = BitWriteStream::new(&mut data, LittleEndian);
stream.write(&val).unwrap();
stream.bit_len()
};
let mut read = BitReadStream::new(BitReadBuffer::new_owned(data, LittleEndian));
assert_eq!(val, read.read().unwrap());
assert_eq!(size, read.pos());
}
{
let mut data = Vec::new();
let mut stream = BitWriteStream::new(&mut data, BigEndian);
stream.write(&val).unwrap();
let size = stream.bit_len();
let size = {
let mut stream = BitWriteStream::new(&mut data, BigEndian);
stream.write(&val).unwrap();
stream.bit_len()
};
let mut read = BitReadStream::new(BitReadBuffer::new_owned(data, BigEndian));
assert_eq!(val, read.read().unwrap());
assert_eq!(size, read.pos());