use std::io::{self, BufReader, BufWriter, Cursor, Write};
use rw_types::prelude::*;
#[test]
fn main() -> io::Result<()> {
let mut data = Cursor::new(Vec::new());
let mut writer = BufWriter::new(&mut data);
writer.write_type::<u8>(&31, Endian::Little)?;
writer.write_type::<f32>(&1.8, Endian::Big)?;
writer.write_type::<bool>(&true, Endian::Little)?;
writer.flush()?;
std::mem::drop(writer);
data.set_position(0);
let mut reader = BufReader::new(&mut data);
assert_eq!(reader.read_type::<u8>(Endian::Little)?, 31);
assert_eq!(reader.read_type::<f32>(Endian::Big)?, 1.8);
assert_eq!(reader.read_type::<bool>(Endian::Little)?, true);
Ok(())
}