~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/tests/test_http.py

  • Committer: Robert Collins
  • Date: 2006-09-05 09:49:40 UTC
  • mto: (1852.16.2 Tree.walkdirs)
  • mto: This revision was merged to the branch mainline in revision 1993.
  • Revision ID: robertc@robertcollins.net-20060905094940-d7ff941c7dfc56a9
DeprecatedĀ WorkingTree.pending_merges.

Show diffs side-by-side

added added

removed removed

Lines of Context:
171
171
 
172
172
    def test_offsets_to_ranges_simple(self):
173
173
        to_range = HttpTransportBase.offsets_to_ranges
174
 
        ranges, tail = to_range([(10, 1)])
 
174
        ranges = to_range([(10, 1)])
175
175
        self.assertEqual([[10, 10]], ranges)
176
 
        self.assertEqual(0, tail)
177
 
 
178
 
        ranges, tail = to_range([(0, 1), (1, 1)])
179
 
        self.assertEqual([[0, 1]], ranges)
180
 
        self.assertEqual(0, tail)
181
 
 
182
 
        ranges, tail = to_range([(1, 1), (0, 1)])
183
 
        self.assertEqual([[0, 1]], ranges)
184
 
        self.assertEqual(0, tail)
 
176
 
 
177
        ranges = to_range([(0, 1), (1, 1)])
 
178
        self.assertEqual([[0, 1]], ranges)
 
179
 
 
180
        ranges = to_range([(1, 1), (0, 1)])
 
181
        self.assertEqual([[0, 1]], ranges)
185
182
 
186
183
    def test_offset_to_ranges_overlapped(self):
187
184
        to_range = HttpTransportBase.offsets_to_ranges
188
185
 
189
 
        ranges, tail = to_range([(10, 1), (20, 2), (22, 5)])
190
 
        self.assertEquals(tuple(ranges[0]), (10, 10))
191
 
        self.assertEquals(tuple(ranges[1]), (20, 26))
192
 
        self.assertEquals(tail, 0)
193
 
 
194
 
        ranges, tail = to_range([(10, 1), (11, 2), (22, 5), (-4, 4)])
195
 
        self.assertEquals(tuple(ranges[0]), (10, 12))
196
 
        self.assertEquals(tuple(ranges[1]), (22, 26))
197
 
        self.assertEquals(tail, 4)
198
 
 
199
 
    def test_offset_to_ranges_tail(self):
200
 
        to_range = HttpTransportBase.offsets_to_ranges
201
 
 
202
 
        ranges, tail = to_range([(-4, 4), (-8, 8)])
203
 
        self.assertEquals(tuple(ranges), ())
204
 
        self.assertEquals(tail, 8)
205
 
 
206
 
    def test_offset_to_ranges_fudge(self):
207
 
        to_range = HttpTransportBase.offsets_to_ranges
208
 
 
209
 
        ranges, tail = to_range([(10, 1), (20, 2)], fudge_factor=9)
210
 
        self.assertEquals(tuple(ranges[0]), (10, 21))
211
 
        self.assertEquals(len(ranges), 1)
212
 
        self.assertEquals(tail, 0)
213
 
 
214
 
        ranges, tail = to_range([(10, 1), (20, 2)], fudge_factor=8)
215
 
        self.assertEquals(tuple(ranges[0]), (10, 10))
216
 
        self.assertEquals(tuple(ranges[1]), (20, 21))
217
 
        self.assertEquals(tail, 0)
 
186
        ranges = to_range([(10, 1), (20, 2), (22, 5)])
 
187
        self.assertEqual([[10, 10], [20, 26]], ranges)
 
188
 
 
189
        ranges = to_range([(10, 1), (11, 2), (22, 5)])
 
190
        self.assertEqual([[10, 12], [22, 26]], ranges)
218
191
 
219
192
 
220
193
class TestRangeHeader(TestCase):
225
198
        self.assertEqual(value, range_header(ranges, tail))
226
199
 
227
200
    def test_range_header_single(self):
228
 
        self.check_header('bytes=0-9', ranges=[[0,9]])
229
 
        self.check_header('bytes=100-109', ranges=[[100,109]])
 
201
        self.check_header('0-9', ranges=[[0,9]])
 
202
        self.check_header('100-109', ranges=[[100,109]])
230
203
 
231
204
    def test_range_header_tail(self):
232
 
        self.check_header('bytes=-10', tail=10)
233
 
        self.check_header('bytes=-50', tail=50)
 
205
        self.check_header('-10', tail=10)
 
206
        self.check_header('-50', tail=50)
234
207
 
235
208
    def test_range_header_multi(self):
236
 
        self.check_header('bytes=0-9,100-200,300-5000',
 
209
        self.check_header('0-9,100-200,300-5000',
237
210
                          ranges=[(0,9), (100, 200), (300,5000)])
238
211
 
239
212
    def test_range_header_mixed(self):
240
 
        self.check_header('bytes=0-9,300-5000,-50',
 
213
        self.check_header('0-9,300-5000,-50',
241
214
                          ranges=[(0,9), (300,5000)],
242
215
                          tail=50)