/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 brzlib/tests/blackbox/test_resolve.py

  • Committer: Jelmer Vernooij
  • Date: 2017-05-21 12:41:27 UTC
  • mto: This revision was merged to the branch mainline in revision 6623.
  • Revision ID: jelmer@jelmer.uk-20170521124127-iv8etg0vwymyai6y
s/bzr/brz/ in apport config.

Show diffs side-by-side

added added

removed removed

Lines of Context:
14
14
# along with this program; if not, write to the Free Software
15
15
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
16
16
 
17
 
from breezy import (
 
17
from brzlib import (
18
18
    conflicts,
19
19
    tests,
20
20
    )
21
 
from breezy.tests import (
22
 
    script,
23
 
    KnownFailure,
24
 
    )
25
 
from breezy.tests.blackbox import test_conflicts
 
21
from brzlib.tests import script
 
22
from brzlib.tests.blackbox import test_conflicts
26
23
 
27
24
 
28
25
class TestResolve(script.TestCaseWithTransportAndScript):
34
31
    def test_resolve_one_by_one(self):
35
32
        self.run_script("""\
36
33
$ cd branch
37
 
$ brz conflicts
 
34
$ bzr conflicts
38
35
Text conflict in my_other_file
39
36
Path conflict: mydir3 / mydir2
40
37
Text conflict in myfile
41
 
$ brz resolve myfile
 
38
$ bzr resolve myfile
42
39
2>1 conflict resolved, 2 remaining
43
 
$ brz resolve my_other_file
 
40
$ bzr resolve my_other_file
44
41
2>1 conflict resolved, 1 remaining
45
 
$ brz resolve mydir2
 
42
$ bzr resolve mydir2
46
43
2>1 conflict resolved, 0 remaining
47
44
""")
48
45
 
49
46
    def test_resolve_all(self):
50
47
        self.run_script("""\
51
48
$ cd branch
52
 
$ brz resolve --all
 
49
$ bzr resolve --all
53
50
2>3 conflicts resolved, 0 remaining
54
 
$ brz conflicts
 
51
$ bzr conflicts
55
52
""")
56
53
 
57
54
    def test_resolve_from_subdir(self):
58
55
        self.run_script("""\
59
56
$ mkdir branch/subdir
60
57
$ cd branch/subdir
61
 
$ brz resolve ../myfile
 
58
$ bzr resolve ../myfile
62
59
2>1 conflict resolved, 2 remaining
63
60
""")
64
61
 
65
62
    def test_resolve_via_directory_option(self):
66
63
        self.run_script("""\
67
 
$ brz resolve -d branch myfile
 
64
$ bzr resolve -d branch myfile
68
65
2>1 conflict resolved, 2 remaining
69
66
""")
70
67
 
71
68
    def test_resolve_all_via_directory_option(self):
72
69
        self.run_script("""\
73
 
$ brz resolve -d branch --all
 
70
$ bzr resolve -d branch --all
74
71
2>3 conflicts resolved, 0 remaining
75
 
$ brz conflicts -d branch
76
 
""")
77
 
 
78
 
    def test_bug_842575_manual_rm(self):
79
 
        self.run_script("""\
80
 
$ brz init -q trunk
81
 
$ echo original > trunk/foo
82
 
$ brz add -q trunk/foo
83
 
$ brz commit -q -m first trunk
84
 
$ brz checkout -q trunk tree
85
 
$ brz rm -q trunk/foo
86
 
$ brz commit -q -m second trunk
87
 
$ echo modified > tree/foo
88
 
$ brz update tree
89
 
2>RM  foo => foo.THIS
90
 
2>Contents conflict in foo
91
 
2>1 conflicts encountered.
92
 
2>Updated to revision 2 of branch ...
93
 
$ rm tree/foo.BASE tree/foo.THIS
94
 
$ brz resolve --all -d tree
95
 
2>1 conflict resolved, 0 remaining
96
 
""")
97
 
        try:
98
 
            self.run_script("""\
99
 
$ brz status tree
100
 
""")
101
 
        except AssertionError:
102
 
            raise KnownFailure("bug #842575")
103
 
 
104
 
    def test_bug_842575_take_other(self):
105
 
        self.run_script("""\
106
 
$ brz init -q trunk
107
 
$ echo original > trunk/foo
108
 
$ brz add -q trunk/foo
109
 
$ brz commit -q -m first trunk
110
 
$ brz checkout -q --lightweight trunk tree
111
 
$ brz rm -q trunk/foo
112
 
$ brz ignore -d trunk foo
113
 
$ brz commit -q -m second trunk
114
 
$ echo modified > tree/foo
115
 
$ brz update tree
116
 
2>+N  .bzrignore
117
 
2>RM  foo => foo.THIS
118
 
2>Contents conflict in foo
119
 
2>1 conflicts encountered.
120
 
2>Updated to revision 2 of branch ...
121
 
$ brz resolve --take-other --all -d tree
122
 
2>1 conflict resolved, 0 remaining
123
 
""")
124
 
        try:
125
 
            self.run_script("""\
126
 
$ brz status tree
127
 
$ echo mustignore > tree/foo
128
 
$ brz status tree
129
 
""")
130
 
        except AssertionError:
131
 
            raise KnownFailure("bug 842575")
 
72
$ bzr conflicts -d branch
 
73
""")
132
74
 
133
75
 
134
76
class TestBug788000(script.TestCaseWithTransportAndScript):
135
77
 
136
78
    def test_bug_788000(self):
137
79
        self.run_script('''\
138
 
$ brz init a
 
80
$ bzr init a
139
81
$ mkdir a/dir
140
82
$ echo foo > a/dir/file
141
 
$ brz add a/dir
 
83
$ bzr add a/dir
142
84
$ cd a
143
 
$ brz commit -m one
 
85
$ bzr commit -m one
144
86
$ cd ..
145
 
$ brz branch a b
 
87
$ bzr clone a b
146
88
$ echo bar > b/dir/file
147
89
$ cd a
148
90
$ rm -r dir
149
 
$ brz commit -m two
 
91
$ bzr commit -m two
150
92
$ cd ../b
151
93
''',
152
94
                        null_output_matches_anything=True)
153
95
 
154
96
        self.run_script('''\
155
 
$ brz pull
 
97
$ bzr pull
156
98
Using saved parent location:...
157
99
Now on revision 2.
158
100
2>RM  dir/file => dir/file.THIS
162
104
2>3 conflicts encountered.
163
105
''')
164
106
        self.run_script('''\
165
 
$ brz resolve --take-other
 
107
$ bzr resolve --take-other
166
108
2>deleted dir/file.THIS
167
109
2>deleted dir
168
110
2>3 conflicts resolved, 0 remaining
175
117
        """Text conflicts can be resolved automatically"""
176
118
        tree = self.make_branch_and_tree('tree')
177
119
        self.build_tree_contents([('tree/file',
178
 
                                   b'<<<<<<<\na\n=======\n>>>>>>>\n')])
179
 
        tree.add('file', b'file_id')
180
 
        self.assertEqual(tree.kind('file'), 'file')
181
 
        file_conflict = conflicts.TextConflict('file', file_id=b'file_id')
 
120
            '<<<<<<<\na\n=======\n>>>>>>>\n')])
 
121
        tree.add('file', 'file_id')
 
122
        self.assertEqual(tree.kind('file_id'), 'file')
 
123
        file_conflict = conflicts.TextConflict('file', file_id='file_id')
182
124
        tree.set_conflicts(conflicts.ConflictList([file_conflict]))
183
125
        note = self.run_bzr('resolve', retcode=1, working_dir='tree')[1]
184
126
        self.assertContainsRe(note, '0 conflicts auto-resolved.')
185
127
        self.assertContainsRe(note,
186
 
                              'Remaining conflicts:\nText conflict in file')
187
 
        self.build_tree_contents([('tree/file', b'a\n')])
 
128
            'Remaining conflicts:\nText conflict in file')
 
129
        self.build_tree_contents([('tree/file', 'a\n')])
188
130
        note = self.run_bzr('resolve', working_dir='tree')[1]
189
131
        self.assertContainsRe(note, 'All conflicts resolved.')