182
182
def check_b2_vs_b1(self, cmd):
183
183
# Compare branch2 vs branch1 using cmd and check the result
184
184
out, err = self.run_bzr(cmd, retcode=1)
185
self.assertEqual('', err)
186
self.assertEqual("=== modified file 'file'\n"
187
"--- old/file\tYYYY-MM-DD HH:MM:SS +ZZZZ\n"
188
"+++ new/file\tYYYY-MM-DD HH:MM:SS +ZZZZ\n"
191
"+contents of branch1/file\n"
192
"\n", subst_dates(out))
185
self.assertEqual(b'', err)
186
self.assertEqual(b"=== modified file 'file'\n"
187
b"--- old/file\tYYYY-MM-DD HH:MM:SS +ZZZZ\n"
188
b"+++ new/file\tYYYY-MM-DD HH:MM:SS +ZZZZ\n"
191
b"+contents of branch1/file\n"
192
b"\n", subst_dates(out))
194
194
def check_b1_vs_b2(self, cmd):
195
195
# Compare branch1 vs branch2 using cmd and check the result
196
196
out, err = self.run_bzr(cmd, retcode=1)
197
self.assertEqual('', err)
198
self.assertEqualDiff("=== modified file 'file'\n"
199
"--- old/file\tYYYY-MM-DD HH:MM:SS +ZZZZ\n"
200
"+++ new/file\tYYYY-MM-DD HH:MM:SS +ZZZZ\n"
202
"-contents of branch1/file\n"
204
"\n", subst_dates(out))
197
self.assertEqual(b'', err)
198
self.assertEqualDiff(b"=== modified file 'file'\n"
199
b"--- old/file\tYYYY-MM-DD HH:MM:SS +ZZZZ\n"
200
b"+++ new/file\tYYYY-MM-DD HH:MM:SS +ZZZZ\n"
202
b"-contents of branch1/file\n"
204
b"\n", subst_dates(out))
206
206
def check_no_diffs(self, cmd):
207
207
# Check that running cmd returns an empty diff
208
208
out, err = self.run_bzr(cmd, retcode=0)
209
self.assertEqual('', err)
210
self.assertEqual('', out)
209
self.assertEqual(b'', err)
210
self.assertEqual(b'', out)
212
212
def test_diff_branches(self):
213
213
self.example_branches()
256
256
out, err = self.run_bzr('diff -r revno:1:branch2..revno:1:branch1',
258
self.assertEqual('', err)
259
self.assertEqual('', out)
258
self.assertEqual(b'', err)
259
self.assertEqual(b'', out)
260
260
out, err = self.run_bzr('diff -r revno:2:branch2..revno:1:branch1',
262
self.assertEqual('', err)
263
self.assertEqualDiff("=== modified file 'file'\n"
264
"--- old/file\tYYYY-MM-DD HH:MM:SS +ZZZZ\n"
265
"+++ new/file\tYYYY-MM-DD HH:MM:SS +ZZZZ\n"
268
"+contents of branch1/file\n"
269
"\n", subst_dates(out))
262
self.assertEqual(b'', err)
263
self.assertEqualDiff(b"=== modified file 'file'\n"
264
b"--- old/file\tYYYY-MM-DD HH:MM:SS +ZZZZ\n"
265
b"+++ new/file\tYYYY-MM-DD HH:MM:SS +ZZZZ\n"
268
b"+contents of branch1/file\n"
269
b"\n", subst_dates(out))
271
271
def example_branch2(self):
272
272
branch1_tree = self.make_branch_and_tree('branch1')
395
395
if 'Diff is not installed on this machine' in err:
396
396
raise tests.TestSkipped("No external 'diff' is available")
397
self.assertEqual('', err)
397
self.assertEqual(b'', err)
398
398
# We have to skip the stuff in the middle, because it depends
400
400
self.assertStartsWith(
402
"=== added file 'goodbye'\n"
403
"--- old/goodbye\t1970-01-01 00:00:00 +0000\n"
405
self.assertEndsWith(out, "\n@@ -0,0 +1 @@\n"
402
b"=== added file 'goodbye'\n"
403
b"--- old/goodbye\t1970-01-01 00:00:00 +0000\n"
404
b"+++ new/goodbye\t")
405
self.assertEndsWith(out, b"\n@@ -0,0 +1 @@\n"
408
408
def test_external_diff_options_and_using(self):
409
409
"""Test that the options are passed correctly to an external diff process"""
412
412
self.build_tree_contents([('hello', b'Foo\n')])
413
413
out, err = self.run_bzr('diff --diff-options -i --using diff',
415
self.assertEqual("=== modified file 'hello'\n", out)
416
self.assertEqual('', err)
415
self.assertEqual(b"=== modified file 'hello'\n", out)
416
self.assertEqual(b'', err)
419
419
class TestDiffOutput(DiffBase):