2023-05-09 22:11:13 +02:00
|
|
|
use std::io::Cursor;
|
|
|
|
|
2023-06-06 13:51:33 +02:00
|
|
|
use mers_libs::{prelude::*, GlobalScriptInfo};
|
2023-05-09 22:11:13 +02:00
|
|
|
use mers_libs::{ByteData, ByteDataA};
|
|
|
|
|
|
|
|
#[test]
|
|
|
|
fn list_type() {
|
|
|
|
let a: Vec<i32> = vec![14, 26];
|
|
|
|
let bytes = a.as_byte_data_vec();
|
|
|
|
println!("{bytes:?}");
|
|
|
|
assert_eq!(
|
|
|
|
Vec::<i32>::from_byte_data(&mut Cursor::new(bytes)).unwrap(),
|
|
|
|
a
|
|
|
|
);
|
|
|
|
|
|
|
|
let a = VSingleType::List(VSingleType::Int.to()).to();
|
2023-06-06 13:51:33 +02:00
|
|
|
assert!(
|
|
|
|
VType::from_byte_data(&mut Cursor::new(a.as_byte_data_vec()))
|
|
|
|
.unwrap()
|
|
|
|
.eq(&a, &GlobalScriptInfo::default()),
|
2023-05-09 22:11:13 +02:00
|
|
|
);
|
|
|
|
|
|
|
|
let a = VSingleType::Tuple(vec![
|
|
|
|
VType {
|
|
|
|
types: vec![VSingleType::Tuple(vec![]), VSingleType::Int],
|
|
|
|
},
|
|
|
|
VSingleType::String.to(),
|
|
|
|
VSingleType::EnumVariant(12, VSingleType::Float.to()).to(),
|
|
|
|
])
|
|
|
|
.to();
|
2023-06-06 13:51:33 +02:00
|
|
|
assert!(
|
|
|
|
VType::from_byte_data(&mut Cursor::new(a.as_byte_data_vec()))
|
|
|
|
.unwrap()
|
|
|
|
.eq(&a, &GlobalScriptInfo::default())
|
2023-05-09 22:11:13 +02:00
|
|
|
);
|
|
|
|
}
|