summaryrefslogtreecommitdiffstats
path: root/third_party/rust/bytes-0.4.12/tests/test_reader.rs
blob: 7103f3592ae8d0c8e4ddd578e23d3872724ca00d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
extern crate bytes;

use std::io::{BufRead, Cursor, Read};

use bytes::Buf;

#[test]
fn read() {
    let buf1 = Cursor::new(b"hello ");
    let buf2 = Cursor::new(b"world");
    let buf = Buf::chain(buf1, buf2); // Disambiguate with Read::chain
    let mut buffer = Vec::new();
    buf.reader().read_to_end(&mut buffer).unwrap();
    assert_eq!(b"hello world", &buffer[..]);
}

#[test]
fn buf_read() {
    let buf1 = Cursor::new(b"hell");
    let buf2 = Cursor::new(b"o\nworld");
    let mut reader = Buf::chain(buf1, buf2).reader();
    let mut line = String::new();
    reader.read_line(&mut line).unwrap();
    assert_eq!("hello\n", &line);
    line.clear();
    reader.read_line(&mut line).unwrap();
    assert_eq!("world", &line);
}