~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/tests/test_weave.py

  • Committer: Robert Collins
  • Date: 2006-03-04 02:30:17 UTC
  • mto: (1594.2.4 integration)
  • mto: This revision was merged to the branch mainline in revision 1596.
  • Revision ID: robertc@robertcollins.net-20060304023017-7f5f460efff7d2e8
Make join cheaper for compatibly inconsistent parents.

Show diffs side-by-side

added added

removed removed

Lines of Context:
997
997
        self.assertRaises(errors.WeaveTextDiffers, w1.reweave, w2)
998
998
 
999
999
 
 
1000
class TestNeedsRweave(TestCase):
 
1001
    """Internal corner cases for when reweave is needed."""
 
1002
 
 
1003
    def test_compatible_parents(self):
 
1004
        w1 = Weave('a')
 
1005
        my_parents = set([1, 2, 3])
 
1006
        # subsets are ok
 
1007
        self.assertTrue(w1._compatible_parents(my_parents, set([3])))
 
1008
        # same sets
 
1009
        self.assertTrue(w1._compatible_parents(my_parents, set(my_parents)))
 
1010
        # same empty corner case
 
1011
        self.assertTrue(w1._compatible_parents(set(), set()))
 
1012
        # other cannot contain stuff my_parents does not
 
1013
        self.assertFalse(w1._compatible_parents(set(), set([1])))
 
1014
        self.assertFalse(w1._compatible_parents(my_parents, set([1, 2, 3, 4])))
 
1015
        self.assertFalse(w1._compatible_parents(my_parents, set([4])))
 
1016
        
 
1017