1551
1551
self.assertTrue(result[0][0] <= 400)
1552
1552
self.assertTrue(result[0][0] + data_len >= 1034)
1553
1553
check_result_data(result)
1554
# test from observed failure case.
1555
if transport.is_readonly():
1556
file('a', 'w').write('a'*1024*1024)
1558
transport.put_bytes('a', 'a'*1024*1024)
1559
broken_vector = [(465219, 800), (225221, 800), (445548, 800),
1560
(225037, 800), (221357, 800), (437077, 800), (947670, 800),
1561
(465373, 800), (947422, 800)]
1562
results = list(transport.readv('a', broken_vector, True, 1024*1024))
1563
found_items = [False]*9
1564
for pos, (start, length) in enumerate(broken_vector):
1565
# check the range is covered by the result
1566
for offset, data in results:
1567
if offset <= start and start + length <= offset + len(data):
1568
found_items[pos] = True
1569
self.assertEqual([True]*9, found_items)
1556
1571
def test_get_with_open_write_stream_sees_all_content(self):
1557
1572
t = self.get_transport()