use nrbf::{RemotingMessage, Value}; #[test] fn binary_array_jagged() { #[rustfmt::skip] let input = [ 0, 0x01, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 7, 0x01, 0x00, 0x00, 0x00, 1, 0x01, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 7, 8, 9, 0x02, 0x00, 0x00, 0x00, 9, 0x03, 0x00, 0x00, 0x00, 9, 0x04, 0x00, 0x00, 0x00, 15, 0x02, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 8, 0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 15, 0x03, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 8, 0x03, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 15, 0x04, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 8, 0x06, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 11, ]; let output = RemotingMessage::Value(Value::Array(vec![ Value::Array(vec![Value::Int32(1), Value::Int32(2)]), Value::Array(vec![Value::Int32(3), Value::Int32(4), Value::Int32(5)]), Value::Array(vec![Value::Int32(6), Value::Int32(7), Value::Int32(8), Value::Int32(9)]), ])); assert_eq!(RemotingMessage::parse(&input), Ok(output)); }