Codex Handbook
ollama/src/line_buffer_tests.rs 42 lines
use bytes::BytesMut;use pretty_assertions::assert_eq;use super::LineBuffer;#[test]fn searches_only_new_bytes_after_partial_line() {    let mut buffer = LineBuffer::default();    buffer.extend_from_slice(b"partial");    assert_eq!(buffer.take_line(), None);    assert_eq!(        buffer,        LineBuffer {            bytes: BytesMut::from(&b"partial"[..]),            scanned_len: 7,        }    );    buffer.extend_from_slice(b" line");    assert_eq!(buffer.take_line(), None);    assert_eq!(        buffer,        LineBuffer {            bytes: BytesMut::from(&b"partial line"[..]),            scanned_len: 12,        }    );    buffer.extend_from_slice(b"\nnext");    assert_eq!(        buffer.take_line(),        Some(BytesMut::from(&b"partial line\n"[..]))    );    assert_eq!(        buffer,        LineBuffer {            bytes: BytesMut::from(&b"next"[..]),            scanned_len: 0,        }    );}