/brz/remove-bazaar

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/brz/remove-bazaar

« back to all changes in this revision

Viewing changes to bzrlib/tests/test_transport_implementations.py

  • Committer: Robert Collins
  • Date: 2007-10-08 04:53:50 UTC
  • mfrom: (2890.1.2 readv)
  • mto: This revision was merged to the branch mainline in revision 2933.
  • Revision ID: robertc@robertcollins.net-20071008045350-qwh1gb3r9vy3c8kk
Readv fixes.

Show diffs side-by-side

added added

removed removed

Lines of Context:
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
 
        
 
1554
        # test from observed failure case.
 
1555
        if transport.is_readonly():
 
1556
            file('a', 'w').write('a'*1024*1024)
 
1557
        else:
 
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)
1555
1570
 
1556
1571
    def test_get_with_open_write_stream_sees_all_content(self):
1557
1572
        t = self.get_transport()