|
|
|
@ -2738,4 +2738,50 @@ mod test {
|
|
|
|
|
vec![(0, 0, 10), (16, 0, 20), (32, 0, 30), (48, 0, 40)] |
|
|
|
|
); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
#[test] |
|
|
|
|
fn check_transport_extension_tprobe_on_all_entities_fit() { |
|
|
|
|
let mut t = Transport::<u64>::new(16); |
|
|
|
|
t.append(1); |
|
|
|
|
t.set_extension(63); |
|
|
|
|
t.append_entity(10); |
|
|
|
|
t.append_entity(20); |
|
|
|
|
t.append_entity(30); |
|
|
|
|
|
|
|
|
|
let p1 = t.add_probe(48); |
|
|
|
|
|
|
|
|
|
assert_eq!( |
|
|
|
|
t.dump_contents(), |
|
|
|
|
vec![(0, 0, 10), (16, 0, 20), (32, 16, 30)] |
|
|
|
|
); |
|
|
|
|
assert!(t.insert_at_probe(p1, 40)); |
|
|
|
|
|
|
|
|
|
assert_eq!( |
|
|
|
|
t.dump_contents(), |
|
|
|
|
vec![(0, 0, 10), (16, 0, 20), (32, 0, 30), (48, 0, 40)] |
|
|
|
|
); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
#[test] |
|
|
|
|
fn check_transport_extension_merge_end_full() { |
|
|
|
|
let mut t1 = Transport::new(16); |
|
|
|
|
t1.append(16); |
|
|
|
|
t1.append_entity(941); |
|
|
|
|
t1.set_extension(16); |
|
|
|
|
t1.append_entity(942); |
|
|
|
|
let mut t2 = Transport::new(16); |
|
|
|
|
t2.append(16); |
|
|
|
|
t2.append_entity(841); |
|
|
|
|
t2.set_extension(16); |
|
|
|
|
t2.append_entity(842); |
|
|
|
|
|
|
|
|
|
assert_eq!(t1.dump_contents(), vec![(0, 0, 941), (16, 0, 942)]); |
|
|
|
|
t1.append_transport(&t2); |
|
|
|
|
assert_eq!( |
|
|
|
|
t1.dump_contents(), |
|
|
|
|
vec![(0, 0, 941), (16, 0, 942), (32, 0, 841), (48, 0, 842)] |
|
|
|
|
); |
|
|
|
|
assert_eq!(t1.length(), 64); |
|
|
|
|
assert_eq!(t1.extension_len(), 32); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|