mirror of
https://github.com/azalea-rs/simdnbt.git
synced 2025-08-02 07:26:04 +00:00
add more borrow=owned tests
This commit is contained in:
parent
6c54c4c240
commit
27766aa5fd
1 changed files with 29 additions and 7 deletions
|
@ -29,24 +29,46 @@ mod tests {
|
|||
|
||||
use flate2::bufread::GzDecoder;
|
||||
|
||||
#[test]
|
||||
fn complex_player_borrow_and_owned() {
|
||||
let src = include_bytes!("../tests/complex_player.dat").to_vec();
|
||||
let mut src_slice = src.as_slice();
|
||||
fn gzip_decode(src: &[u8]) -> Vec<u8> {
|
||||
let mut src_slice = src;
|
||||
let mut decoded_src_decoder = GzDecoder::new(&mut src_slice);
|
||||
let mut decoded_src = Vec::new();
|
||||
decoded_src_decoder.read_to_end(&mut decoded_src).unwrap();
|
||||
let nbt_borrow = crate::borrow::read(&mut Cursor::new(&decoded_src))
|
||||
decoded_src
|
||||
}
|
||||
|
||||
fn test_decodes_equally(src: &[u8]) {
|
||||
let nbt_borrow = crate::borrow::read(&mut Cursor::new(&src))
|
||||
.unwrap()
|
||||
.unwrap()
|
||||
.as_compound()
|
||||
.to_owned();
|
||||
let nbt_owned = crate::owned::read(&mut Cursor::new(&decoded_src))
|
||||
let nbt_owned = crate::owned::read(&mut Cursor::new(&src))
|
||||
.unwrap()
|
||||
.unwrap()
|
||||
.as_compound();
|
||||
|
||||
// (there's another test in owned to make sure that PartialEq actually works)
|
||||
assert_eq!(nbt_borrow, nbt_owned);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn complex_player_borrow_and_owned() {
|
||||
let src = include_bytes!("../tests/complex_player.dat").to_vec();
|
||||
test_decodes_equally(&gzip_decode(&src));
|
||||
}
|
||||
#[test]
|
||||
fn level_borrow_and_owned() {
|
||||
let src = include_bytes!("../tests/level.dat").to_vec();
|
||||
test_decodes_equally(&gzip_decode(&src));
|
||||
}
|
||||
#[test]
|
||||
fn hypixel_borrow_and_owned() {
|
||||
let src = include_bytes!("../tests/hypixel.nbt").to_vec();
|
||||
test_decodes_equally(&src);
|
||||
}
|
||||
#[test]
|
||||
fn bigtest_borrow_and_owned() {
|
||||
let src = include_bytes!("../tests/bigtest.nbt").to_vec();
|
||||
test_decodes_equally(&gzip_decode(&src));
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue