~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/tests/test_merge_directive.py

  • Committer: Aaron Bentley
  • Date: 2007-06-28 14:14:16 UTC
  • mto: (2520.5.2 bzr.mpbundle)
  • mto: This revision was merged to the branch mainline in revision 2631.
  • Revision ID: abentley@panoramicfeedback.com-20070628141416-lf6u1noi6gk5lf1g
start work on directive cherry-picking

Show diffs side-by-side

added added

removed removed

Lines of Context:
435
435
        self.assertEqual('rev2a', revision)
436
436
        self.assertTrue(tree_b.branch.repository.has_revision('rev2a'))
437
437
 
438
 
    def test_install_revisions_base_branch(self):
 
438
    def test_get_merge_request(self):
439
439
        tree_a, tree_b, branch_c = self.make_trees()
440
440
        md = self.from_objects(tree_a.branch.repository, 'rev2a', 500, 36,
 
441
            tree_b.branch.base, patch_type='bundle',
 
442
            public_branch=tree_a.branch.base)
 
443
        self.assertFalse(tree_b.branch.repository.has_revision('rev2a'))
 
444
        md.install_revisions(tree_b.branch.repository)
 
445
        base, revision, verified = md.get_merge_request(
 
446
            tree_b.branch.repository)
 
447
        if isinstance(md, merge_directive.MergeDirective):
 
448
            self.assertIs(None, base)
 
449
            self.assertEqual('inapplicable', verified)
 
450
        else:
 
451
            self.assertEqual('rev1', base)
 
452
            self.assertEqual('verified', verified)
 
453
        self.assertEqual('rev2a', revision)
 
454
        self.assertTrue(tree_b.branch.repository.has_revision('rev2a'))
 
455
        md = self.from_objects(tree_a.branch.repository, 'rev2a', 500, 36,
441
456
            tree_b.branch.base, patch_type=None,
442
457
            public_branch=tree_a.branch.base)
443
 
        self.assertFalse(tree_b.branch.repository.has_revision('rev2a'))
444
 
        base, revision, verified = md.install_revisions_base(
 
458
        base, revision, verified = md.get_merge_request(
 
459
            tree_b.branch.repository)
 
460
        if isinstance(md, merge_directive.MergeDirective):
 
461
            self.assertIs(None, base)
 
462
            self.assertEqual('inapplicable', verified)
 
463
        else:
 
464
            self.assertEqual('rev1', base)
 
465
            self.assertEqual('inapplicable', verified)
 
466
        md = self.from_objects(tree_a.branch.repository, 'rev2a', 500, 36,
 
467
            tree_b.branch.base, patch_type='diff',
 
468
            public_branch=tree_a.branch.base)
 
469
        base, revision, verified = md.get_merge_request(
445
470
            tree_b.branch.repository)
446
471
        if isinstance(md, merge_directive.MergeDirective):
447
472
            self.assertIs(None, base)
449
474
        else:
450
475
            self.assertEqual('rev1', base)
451
476
            self.assertEqual('verified', verified)
452
 
        self.assertEqual('rev2a', revision)
453
 
        self.assertTrue(tree_b.branch.repository.has_revision('rev2a'))
 
477
        md.patch='asdf'
 
478
        base, revision, verified = md.get_merge_request(
 
479
            tree_b.branch.repository)
 
480
        if isinstance(md, merge_directive.MergeDirective):
 
481
            self.assertIs(None, base)
 
482
            self.assertEqual('inapplicable', verified)
 
483
        else:
 
484
            self.assertEqual('rev1', base)
 
485
            self.assertEqual('failed', verified)
454
486
 
455
487
    def test_install_revisions_bundle(self):
456
488
        tree_a, tree_b, branch_c = self.make_trees()
552
584
        self.assertTrue(md2._verify_patch(tree_a.branch.repository))
553
585
        md2.patch = md2.patch.replace('content_c', 'content_d')
554
586
        self.assertFalse(md2._verify_patch(tree_a.branch.repository))
555
 
        self.assertRaises(errors.PatchVerificationFailed,
556
 
                          md2.install_revisions, tree_a.branch.repository)