def test_reading_exact_wrapping_singles(self): b = RingBuffer(4) b.write(b"ab") self.assertEqual(b.read(), b"ab") b.write(b"defg") self.assertEqual(b.read_exactly(1), b"d") self.assertEqual(b.read_exactly(1), b"e") self.assertEqual(b.read_exactly(1), b"f")
def test_reading_exact_wrapping_full(self): b = RingBuffer(4) b.write(b"ab") self.assertEqual(b.read(), b"ab") b.write(b"defg") self.assertEqual(b.read_exactly(4), b"defg")
def test_reading_exact_nothing(self): b = RingBuffer(4) b.write(b"abc") self.assertEqual(b.read_exactly(0), b"")
def test_reading_exact_basic_full(self): b = RingBuffer(4) b.write(b"abcd") self.assertEqual(b.read_exactly(4), b"abcd")
def test_reading_exact_basic(self): b = RingBuffer(4) b.write(b"abc") self.assertEqual(b.read_exactly(2), b"ab")
def test_reading_exact_negative(self): b = RingBuffer(4) b.write(b"abc") with self.assertRaises(ValueError): b.read_exactly(-1)