~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/tests/blackbox/test_conflicts.py

  • Committer: Canonical.com Patch Queue Manager
  • Date: 2008-04-07 07:52:50 UTC
  • mfrom: (3340.1.1 208418-1.4)
  • Revision ID: pqm@pqm.ubuntu.com-20080407075250-phs53xnslo8boaeo
Return the correct knit serialisation method in _StreamAccess.
        (Andrew Bennetts, Martin Pool, Robert Collins)

Show diffs side-by-side

added added

removed removed

Lines of Context:
26
26
# the number of lines - there should be more examination.
27
27
 
28
28
class TestConflicts(ExternalBase):
 
29
 
29
30
    def setUp(self):
30
31
        super(ExternalBase, self).setUp()
31
 
        try:
32
 
            os.mkdir('a')
33
 
        except:
34
 
            raise os.getcwd()
 
32
        a_tree = self.make_branch_and_tree('a')
 
33
        self.build_tree_contents([
 
34
            ('a/myfile', 'contentsa\n'),
 
35
            ('a/my_other_file', 'contentsa\n'),
 
36
            ('a/mydir/',),
 
37
            ])
 
38
        a_tree.add('myfile')
 
39
        a_tree.add('my_other_file')
 
40
        a_tree.add('mydir')
 
41
        a_tree.commit(message="new")
 
42
        b_tree = a_tree.bzrdir.sprout('b').open_workingtree()
 
43
        self.build_tree_contents([
 
44
            ('b/myfile', 'contentsb\n'),
 
45
            ('b/my_other_file', 'contentsb\n'),
 
46
            ])
 
47
        b_tree.rename_one('mydir', 'mydir2')
 
48
        b_tree.commit(message="change")
 
49
        self.build_tree_contents([
 
50
            ('a/myfile', 'contentsa2\n'),
 
51
            ('a/my_other_file', 'contentsa2\n'),
 
52
            ])
 
53
        a_tree.rename_one('mydir', 'mydir3')
 
54
        a_tree.commit(message='change')
 
55
        a_tree.merge_from_branch(b_tree.branch)
35
56
        os.chdir('a')
36
 
        self.runbzr('init')
37
 
        file('myfile', 'wb').write('contentsa\n')
38
 
        file('my_other_file', 'wb').write('contentsa\n')
39
 
        os.mkdir('mydir')
40
 
        self.runbzr('add')
41
 
        self.runbzr('commit -m new')
42
 
        os.chdir('..')
43
 
        self.runbzr('branch a b')
44
 
        os.chdir('b')
45
 
        file('myfile', 'wb').write('contentsb\n')
46
 
        file('my_other_file', 'wb').write('contentsb\n')
47
 
        self.runbzr('mv mydir mydir2')
48
 
        self.runbzr('commit -m change')
49
 
        os.chdir('../a')
50
 
        file('myfile', 'wb').write('contentsa2\n')
51
 
        file('my_other_file', 'wb').write('contentsa2\n')
52
 
        self.runbzr('mv mydir mydir3')
53
 
        self.runbzr('commit -m change')
54
 
        self.runbzr('merge ../b', retcode=1)
55
57
 
56
58
    def test_conflicts(self):
57
 
        conflicts = self.runbzr('conflicts', backtick=True)
 
59
        conflicts, errs = self.run_bzr('conflicts')
58
60
        self.assertEqual(3, len(conflicts.splitlines()))
59
61
 
60
62
    def test_conflicts_text(self):
61
 
        conflicts = self.run_bzr('conflicts', '--text')[0].splitlines()
 
63
        conflicts = self.run_bzr('conflicts --text')[0].splitlines()
62
64
        self.assertEqual(['my_other_file', 'myfile'], conflicts)
63
65
 
64
66
    def test_resolve(self):
65
 
        self.runbzr('resolve myfile')
66
 
        conflicts = self.runbzr('conflicts', backtick=True)
 
67
        self.run_bzr('resolve myfile')
 
68
        conflicts, errs = self.run_bzr('conflicts')
67
69
        self.assertEqual(2, len(conflicts.splitlines()))
68
 
        self.runbzr('resolve my_other_file')
69
 
        self.runbzr('resolve mydir2')
70
 
        conflicts = self.runbzr('conflicts', backtick=True)
 
70
        self.run_bzr('resolve my_other_file')
 
71
        self.run_bzr('resolve mydir2')
 
72
        conflicts, errs = self.run_bzr('conflicts')
71
73
        self.assertEqual(len(conflicts.splitlines()), 0)
72
74
 
73
75
    def test_resolve_all(self):
74
 
        self.runbzr('resolve --all')
75
 
        conflicts = self.runbzr('conflicts', backtick=True)
 
76
        self.run_bzr('resolve --all')
 
77
        conflicts, errs = self.run_bzr('conflicts')
76
78
        self.assertEqual(len(conflicts.splitlines()), 0)
77
79
 
78
80
    def test_resolve_in_subdir(self):
81
83
        try:
82
84
            os.mkdir("subdir")
83
85
            os.chdir("subdir")
84
 
            self.runbzr("resolve ../myfile")
 
86
            self.run_bzr("resolve ../myfile")
85
87
            os.chdir("../../b")
86
 
            self.runbzr("resolve ../a/myfile")
 
88
            self.run_bzr("resolve ../a/myfile")
87
89
            wt = WorkingTree.open_containing('.')[0]
88
90
            conflicts = wt.conflicts()
89
91
            if not conflicts.is_empty():