~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/tests/branch_implementations/test_stacking.py

  • Committer: Aaron Bentley
  • Date: 2009-06-29 14:51:13 UTC
  • mfrom: (4489 +trunk)
  • mto: This revision was merged to the branch mainline in revision 4490.
  • Revision ID: aaron@aaronbentley.com-20090629145113-3w350dxgqppnzo4g
Merge bzr.dev

Show diffs side-by-side

added added

removed removed

Lines of Context:
78
78
            return
79
79
        self.assertEqual('../target', branch.get_stacked_on_url())
80
80
 
 
81
    def test_set_stacked_on_same_branch_raises(self):
 
82
        # Stacking on the same branch silently raises and doesn't execute the
 
83
        # change. Reported in bug 376243.
 
84
        branch = self.make_branch('branch')
 
85
        try:
 
86
            self.assertRaises(errors.UnstackableLocationError,
 
87
                branch.set_stacked_on_url, '../branch')
 
88
        except unstackable_format_errors:
 
89
            # if the set failed, so must the get
 
90
            self.assertRaises(unstackable_format_errors, branch.get_stacked_on_url)
 
91
            return
 
92
        self.assertRaises(errors.NotStacked, branch.get_stacked_on_url)
 
93
 
 
94
    def test_set_stacked_on_same_branch_after_being_stacked_raises(self):
 
95
        # Stacking on the same branch silently raises and doesn't execute the
 
96
        # change.
 
97
        branch = self.make_branch('branch')
 
98
        target = self.make_branch('target')
 
99
        try:
 
100
            branch.set_stacked_on_url('../target')
 
101
        except unstackable_format_errors:
 
102
            # if the set failed, so must the get
 
103
            self.assertRaises(unstackable_format_errors, branch.get_stacked_on_url)
 
104
            return
 
105
        self.assertRaises(errors.UnstackableLocationError,
 
106
            branch.set_stacked_on_url, '../branch')
 
107
        self.assertEqual('../target', branch.get_stacked_on_url())
 
108
 
81
109
    def assertRevisionInRepository(self, repo_path, revid):
82
110
        """Check that a revision is in a repository, disregarding stacking."""
83
111
        repo = bzrdir.BzrDir.open(repo_path).open_repository()