fn write_2()

in src/session/buffer.rs [196:217]


    fn write_2() {
        let mut buffer = Buffer::with_capacity(0);
        assert_eq!(buffer.len(), 0);
        assert_eq!(buffer.available_capacity(), 0);
        assert!(buffer.is_empty());

        // zero capacity buffer grows on first write
        buffer.extend_from_slice(b"GET KEY\r\n");
        assert_eq!(buffer.len(), 9);
        assert_eq!(buffer.available_capacity(), 7);
        assert!(!buffer.is_empty());
        let content: &[u8] = buffer.borrow();
        assert_eq!(content, b"GET KEY\r\n");

        // and again on second write
        buffer.extend_from_slice(b"SET OTHER_KEY 0 0 1\r\nA\r\n");
        assert_eq!(buffer.len(), 33);
        assert_eq!(buffer.available_capacity(), 31);
        assert!(!buffer.is_empty());
        let content: &[u8] = buffer.borrow();
        assert_eq!(content, b"GET KEY\r\nSET OTHER_KEY 0 0 1\r\nA\r\n");
    }