fixed-buffer 1.0.2

Fixed-size buffers for network protocol parsers
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
use fixed_buffer::deframe_line;

#[test]
fn test_dataframe_line() {
    assert_eq!((0, None), deframe_line(b"").unwrap());
    assert_eq!((0, None), deframe_line(b"abc").unwrap());
    assert_eq!((0, None), deframe_line(b"abc\r").unwrap());
    assert_eq!((1, Some(0..0)), deframe_line(b"\n").unwrap());
    assert_eq!((2, Some(0..0)), deframe_line(b"\r\n").unwrap());
    assert_eq!((4, Some(0..3)), deframe_line(b"abc\n").unwrap());
    assert_eq!((5, Some(0..3)), deframe_line(b"abc\r\n").unwrap());
    assert_eq!((4, Some(0..3)), deframe_line(b"abc\ndef").unwrap());
    assert_eq!((5, Some(0..3)), deframe_line(b"abc\r\ndef").unwrap());
    assert_eq!((4, Some(0..3)), deframe_line(b"abc\ndef\n").unwrap());
    assert_eq!((5, Some(0..3)), deframe_line(b"abc\r\ndef\r\n").unwrap());
    assert_eq!((6, Some(0..4)), deframe_line(b"abc\r\r\n").unwrap());
}