~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/tests/test_log.py

  • Committer: Canonical.com Patch Queue Manager
  • Date: 2006-10-16 10:03:21 UTC
  • mfrom: (1988.4.6 dotted-revno-input.)
  • Revision ID: pqm@pqm.ubuntu.com-20061016100321-c4951c9fc020dbd0
(Robert Collins) Output dotted decimal revision numbers during log, and accept them as revision specifiers.

Show diffs side-by-side

added added

removed removed

Lines of Context:
126
126
        lf = LogCatcher()
127
127
        show_log(b, lf, verbose=True)
128
128
        eq(len(lf.logs), 1)
129
 
        eq(lf.logs[0].revno, 1)
 
129
        eq(lf.logs[0].revno, '1')
130
130
        eq(lf.logs[0].rev.message, 'empty commit')
131
131
        d = lf.logs[0].delta
132
132
        self.log('log delta: %r' % d)
149
149
        eq(len(lf.logs), 2)
150
150
        self.log('log entries:')
151
151
        for logentry in lf.logs:
152
 
            self.log('%4d %s' % (logentry.revno, logentry.rev.message))
 
152
            self.log('%4s %s' % (logentry.revno, logentry.rev.message))
153
153
        
154
154
        # first one is most recent
155
155
        logentry = lf.logs[0]
156
 
        eq(logentry.revno, 2)
 
156
        eq(logentry.revno, '2')
157
157
        eq(logentry.rev.message, 'add one file')
158
158
        d = logentry.delta
159
159
        self.log('log 2 delta: %r' % d)
325
325
        wt.commit('four-b', rev_id='4b')
326
326
        mainline_revs.append('4b')
327
327
        rev_nos['4b'] = 4
 
328
        # 4a: 3.1.1
328
329
        return mainline_revs, rev_nos, wt
329
330
 
330
331
    def make_tree_with_many_merges(self):
332
333
        wt = self.make_branch_and_tree('tree1')
333
334
        wt.commit('commit one', rev_id='1')
334
335
        wt.commit('commit two', rev_id='2')
335
 
        tree2 = wt.bzrdir.sprout('tree2').open_workingtree()
336
336
        tree3 = wt.bzrdir.sprout('tree3').open_workingtree()
337
337
        tree3.commit('commit three a', rev_id='3a')
 
338
        tree2 = wt.bzrdir.sprout('tree2').open_workingtree()
338
339
        tree2.merge_from_branch(tree3.branch)
339
340
        tree2.commit('commit three b', rev_id='3b')
340
341
        wt.merge_from_branch(tree2.branch)
343
344
        wt.merge_from_branch(tree2.branch)
344
345
        wt.commit('four-b', rev_id='4b')
345
346
        mainline_revs = [None, '1', '2', '3c', '4b']
346
 
        rev_nos = {'1': 1, '2': 2, '3c': 3, '4b': 4}
 
347
        rev_nos = {'1':1, '2':2, '3c': 3, '4b':4}
 
348
        full_rev_nos_for_reference = {
 
349
            '1': '1',
 
350
            '2': '2',
 
351
            '3a': '2.2.1', #first commit tree 3
 
352
            '3b': '2.1.1', # first commit tree 2
 
353
            '3c': '3', #merges 3b to main
 
354
            '4a': '2.1.2', # second commit tree 2
 
355
            '4b': '4', # merges 4a to main
 
356
            }
347
357
        return mainline_revs, rev_nos, wt
348
358
 
349
359
    def test_get_view_revisions_forward(self):
351
361
        mainline_revs, rev_nos, wt = self.make_tree_with_commits()
352
362
        revisions = list(get_view_revisions(mainline_revs, rev_nos, wt.branch,
353
363
                                            'forward'))
354
 
        self.assertEqual(revisions, [('1', 1, 0), ('2', 2, 0), ('3', 3, 0)])
 
364
        self.assertEqual([('1', '1', 0), ('2', '2', 0), ('3', '3', 0)],
 
365
            revisions)
355
366
        revisions2 = list(get_view_revisions(mainline_revs, rev_nos, wt.branch,
356
367
                                             'forward', include_merges=False))
357
368
        self.assertEqual(revisions, revisions2)
361
372
        mainline_revs, rev_nos, wt = self.make_tree_with_commits()
362
373
        revisions = list(get_view_revisions(mainline_revs, rev_nos, wt.branch,
363
374
                                            'reverse'))
364
 
        self.assertEqual(revisions, [('3', 3, 0), ('2', 2, 0), ('1', 1, 0), ])
 
375
        self.assertEqual([('3', '3', 0), ('2', '2', 0), ('1', '1', 0), ],
 
376
            revisions)
365
377
        revisions2 = list(get_view_revisions(mainline_revs, rev_nos, wt.branch,
366
378
                                             'reverse', include_merges=False))
367
379
        self.assertEqual(revisions, revisions2)
371
383
        mainline_revs, rev_nos, wt = self.make_tree_with_merges()
372
384
        revisions = list(get_view_revisions(mainline_revs, rev_nos, wt.branch,
373
385
                                            'forward'))
374
 
        self.assertEqual(revisions, [('1', 1, 0), ('2', 2, 0), ('3', 3, 0),
375
 
                                     ('4b', 4, 0), ('4a', None, 1)])
 
386
        self.assertEqual([('1', '1', 0), ('2', '2', 0), ('3', '3', 0),
 
387
            ('4b', '4', 0), ('4a', '3.1.1', 1)],
 
388
            revisions)
376
389
        revisions = list(get_view_revisions(mainline_revs, rev_nos, wt.branch,
377
390
                                             'forward', include_merges=False))
378
 
        self.assertEqual(revisions, [('1', 1, 0), ('2', 2, 0), ('3', 3, 0),
379
 
                                     ('4b', 4, 0)])
 
391
        self.assertEqual([('1', '1', 0), ('2', '2', 0), ('3', '3', 0),
 
392
            ('4b', '4', 0)],
 
393
            revisions)
380
394
 
381
395
    def test_get_view_revisions_merge_reverse(self):
382
396
        """Test get_view_revisions in reverse when there are merges"""
383
397
        mainline_revs, rev_nos, wt = self.make_tree_with_merges()
384
398
        revisions = list(get_view_revisions(mainline_revs, rev_nos, wt.branch,
385
399
                                            'reverse'))
386
 
        self.assertEqual(revisions, [('4b', 4, 0), ('4a', None, 1), 
387
 
                                     ('3', 3, 0), ('2', 2, 0), ('1', 1, 0)])
 
400
        self.assertEqual([('4b', '4', 0), ('4a', '3.1.1', 1),
 
401
            ('3', '3', 0), ('2', '2', 0), ('1', '1', 0)],
 
402
            revisions)
388
403
        revisions = list(get_view_revisions(mainline_revs, rev_nos, wt.branch,
389
404
                                             'reverse', include_merges=False))
390
 
        self.assertEqual(revisions, [('4b', 4, 0), ('3', 3, 0), ('2', 2, 0),
391
 
                                     ('1', 1, 0)])
 
405
        self.assertEqual([('4b', '4', 0), ('3', '3', 0), ('2', '2', 0),
 
406
            ('1', '1', 0)],
 
407
            revisions)
392
408
 
393
409
    def test_get_view_revisions_merge2(self):
394
410
        """Test get_view_revisions when there are merges"""
395
411
        mainline_revs, rev_nos, wt = self.make_tree_with_many_merges()
396
412
        revisions = list(get_view_revisions(mainline_revs, rev_nos, wt.branch,
397
413
                                            'forward'))
398
 
        expected = [('1', 1, 0), ('2', 2, 0), ('3c', 3, 0), ('3a', None, 1),
399
 
                    ('3b', None, 1), ('4b', 4, 0), ('4a', None, 1)]
400
 
        self.assertEqual(revisions, expected)
 
414
        expected = [('1', '1', 0), ('2', '2', 0), ('3c', '3', 0),
 
415
            ('3a', '2.2.1', 1), ('3b', '2.1.1', 1), ('4b', '4', 0),
 
416
            ('4a', '2.1.2', 1)]
 
417
        self.assertEqual(expected, revisions)
401
418
        revisions = list(get_view_revisions(mainline_revs, rev_nos, wt.branch,
402
419
                                             'forward', include_merges=False))
403
 
        self.assertEqual(revisions, [('1', 1, 0), ('2', 2, 0), ('3c', 3, 0),
404
 
                                     ('4b', 4, 0)])
 
420
        self.assertEqual([('1', '1', 0), ('2', '2', 0), ('3c', '3', 0),
 
421
            ('4b', '4', 0)],
 
422
            revisions)