def test_get_pointer_with_size(self): buf_size = 20 buf = AlignedBuffer(buf_size) expected = "Hello world!" buf.write(expected) size = 5 ptr = buf.get_pointer(size=size) actual = ptr.contents.raw self.assertEqual(expected[:5], actual[:len(expected)])
def test_get_pointer(self): buf_size = 20 buf = AlignedBuffer(buf_size) expected = "Hello world!" buf.write(expected) ptr = buf.get_pointer() actual = ptr.contents.raw # Without size read returns all contents, so expect nulls after data expected += '\x00' * (buf_size - len(expected)) self.assertEqual(expected, actual[:len(expected)])
def test_get_pointer_with_offset(self): buf_size = 20 buf = AlignedBuffer(buf_size) expected = "Hello world!" buf.write(expected) offset = 6 ptr = buf.get_pointer(offset=offset) actual = ptr.contents.raw expected = expected[6:] expected += '\x00' * (buf_size - len(expected) - offset) self.assertEqual(expected, actual)
def test_get_pointer_with_size_and_offset(self): buf_size = 20 buf = AlignedBuffer(buf_size) expected = "Hello world!" buf.write(expected) offset = 6 size = 5 ptr = buf.get_pointer(size=size, offset=offset) actual = ptr.contents.raw expected = expected[offset:offset + size] self.assertEqual(expected, actual)