/brz/remove-bazaar

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/brz/remove-bazaar

« back to all changes in this revision

Viewing changes to bzrlib/tests/test_merge_core.py

  • Committer: Martin Pool
  • Date: 2006-01-30 06:23:50 UTC
  • mfrom: (1534.1.17 integration)
  • Revision ID: mbp@sourcefrog.net-20060130062350-d6f25277ddcdfd79
[merge] robert's integration of much recent work

Show diffs side-by-side

added added

removed removed

Lines of Context:
3
3
import stat
4
4
import sys
5
5
 
 
6
from bzrlib.add import smart_add_tree
 
7
from bzrlib.builtins import merge
6
8
from bzrlib.tests import TestCaseInTempDir, TestCase
7
9
from bzrlib.branch import ScratchBranch, Branch
8
10
from bzrlib.errors import (NotBranchError, NotVersionedError,
10
12
from bzrlib.inventory import RootEntry
11
13
import bzrlib.inventory as inventory
12
14
from bzrlib.osutils import file_kind, rename, sha_file, pathjoin, mkdtemp
13
 
from bzrlib import changeset
14
 
from bzrlib.merge_core import (ApplyMerge3, make_merge_changeset,
 
15
from bzrlib import _changeset as changeset
 
16
from bzrlib._merge_core import (ApplyMerge3, make_merge_changeset,
15
17
                               BackupBeforeChange, ExecFlagMerge, WeaveMerge)
16
 
from bzrlib.changeset import Inventory, apply_changeset, invert_dict, \
 
18
from bzrlib._changeset import Inventory, apply_changeset, invert_dict, \
17
19
    get_contents, ReplaceContents, ChangeExecFlag, Diff3Merge
18
 
from bzrlib.clone import copy_branch
19
 
from bzrlib.merge import merge
20
20
from bzrlib.workingtree import WorkingTree
21
21
 
22
22
 
548
548
 
549
549
    def test_trivial_star_merge(self):
550
550
        """Test that merges in a star shape Just Work.""" 
551
 
        from bzrlib.add import smart_add_tree
552
 
        from bzrlib.clone import copy_branch
553
 
        from bzrlib.merge import merge
554
551
        # John starts a branch
555
552
        self.build_tree(("original/", "original/file1", "original/file2"))
556
553
        branch = Branch.initialize("original")
559
556
        tree.commit("start branch.", verbose=False)
560
557
        # Mary branches it.
561
558
        self.build_tree(("mary/",))
562
 
        copy_branch(branch, "mary")
 
559
        branch.clone("mary")
563
560
        # Now John commits a change
564
561
        file = open("original/file1", "wt")
565
562
        file.write("John\n")
589
586
        file('a/file', 'wb').write('contents\n')
590
587
        a.working_tree().add('file')
591
588
        a.working_tree().commit('base revision', allow_pointless=False)
592
 
        b = copy_branch(a, 'b')
 
589
        b = a.clone('b')
593
590
        file('a/file', 'wb').write('other contents\n')
594
591
        a.working_tree().commit('other revision', allow_pointless=False)
595
592
        file('b/file', 'wb').write('this contents contents\n')
601
598
        self.assertRaises(WorkingTreeNotRevision, merge, ['a', -1], 
602
599
                          [None, None], this_dir='b', check_clean=False,
603
600
                          merge_type=WeaveMerge)
604
 
        merge(['b', -1], ['b', None], this_dir='b', check_clean=False)
 
601
        b.working_tree().revert([])
605
602
        os.unlink('b/file.THIS')
606
603
        os.unlink('b/file.OTHER')
607
604
        os.unlink('b/file.BASE')
671
668
        a_wt = a.working_tree()
672
669
        a_wt.add('file')
673
670
        a_wt.commit('r0')
674
 
        copy_branch(a, 'b')
 
671
        a.clone('b')
675
672
        b = Branch.open('b')
676
673
        b_wt = b.working_tree()
677
674
        os.chmod('b/file', 0755)
692
689
        a_wt.add('un')
693
690
        a_wt.add('deux')
694
691
        a_wt.commit('r0')
695
 
        copy_branch(a,'b')
 
692
        a.clone('b')
696
693
        b = Branch.open('b')
697
694
        b_wt = b.working_tree()
698
 
        b_wt.rename_one('un','tmp')
699
 
        b_wt.rename_one('deux','un')
700
 
        b_wt.rename_one('tmp','deux')
 
695
        b_wt.rename_one('un', 'tmp')
 
696
        b_wt.rename_one('deux', 'un')
 
697
        b_wt.rename_one('tmp', 'deux')
701
698
        b_wt.commit('r1')
702
699
        merge(['b', -1],['b', 1],this_dir='a')
703
700
        self.assert_(os.path.exists('a/un'))
713
710
        a_wt = a.working_tree()
714
711
        a_wt.add('file')
715
712
        a_wt.commit('r0')
716
 
        copy_branch(a, 'b')
 
713
        a.clone('b')
717
714
        b = Branch.open('b')
718
715
        b_wt = b.working_tree()
719
716
        os.remove('b/file')
745
742
        a_wt = a.working_tree()
746
743
        a_wt.add('foo')
747
744
        a_wt.commit('added foo')
748
 
        copy_branch(a, 'b')
 
745
        a.clone('b')
749
746
        b = Branch.open('b')
750
747
        b_wt = b.working_tree()
751
748
        b_wt.rename_one('foo', 'bar')
775
772
        a_wt = a.working_tree()
776
773
        a_wt.add('foo')
777
774
        a_wt.commit('added foo')
778
 
        copy_branch(a, 'b')
 
775
        a.clone('b')
779
776
        b = Branch.open('b')
780
777
        b_wt = b.working_tree()
781
778
        os.mkdir('b/bar')
807
804
        a_wt.add('foo')
808
805
        a_wt.add('foo/bar')
809
806
        a_wt.commit('added foo/bar')
810
 
        copy_branch(a, 'b')
 
807
        a.clone('b')
811
808
        b = Branch.open('b')
812
809
        b_wt = b.working_tree()
813
810
        b_wt.rename_one('foo/bar', 'bar')
839
836
        a_wt.add('foo')
840
837
        a_wt.add('bar')
841
838
        a_wt.commit('added foo and bar')
842
 
        copy_branch(a, 'b')
 
839
        a.clone('b')
843
840
        b = Branch.open('b')
844
841
        b_wt = b.working_tree()
845
842
        os.unlink('b/foo')