util: documentation example for LengthDelimitedCodec (#2339)

There is a gap in examples for Builder::num_skip() that shows how to
move past unused bytes between the length and payload.
This commit is contained in:
Benjamin Halsted
2020-04-02 17:09:56 -04:00
committed by GitHub
parent 2a8d917d2c
commit 215d7d4c5f
2 changed files with 50 additions and 0 deletions
+19
View File
@@ -372,6 +372,25 @@ fn read_single_multi_frame_one_packet_skip_none_adjusted() {
assert_done!(io);
}
#[test]
fn read_single_frame_length_adjusted() {
let mut d: Vec<u8> = vec![];
d.extend_from_slice(b"\x00\x00\x0b\x0cHello world");
let io = length_delimited::Builder::new()
.length_field_offset(0)
.length_field_length(3)
.length_adjustment(0)
.num_skip(4)
.new_read(mock! {
data(&d),
});
pin_mut!(io);
assert_next_eq!(io, b"Hello world");
assert_done!(io);
}
#[test]
fn read_single_multi_frame_one_packet_length_includes_head() {
let mut d: Vec<u8> = vec![];