/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/blackbox/test_merge.py

  • Committer: Robert Collins
  • Date: 2007-08-07 22:59:45 UTC
  • mfrom: (2681 +trunk)
  • mto: This revision was merged to the branch mainline in revision 2682.
  • Revision ID: robertc@robertcollins.net-20070807225945-dlxppeb3we4lh897
Merge bzr.dev.

Show diffs side-by-side

added added

removed removed

Lines of Context:
72
72
        self.run_bzr('revert --no-backup')
73
73
        self.run_bzr('merge ../b -r last:1..last:1 --merge-type weave')
74
74
        self.run_bzr('revert --no-backup')
 
75
        self.run_bzr_error(['Show-base is not supported for this merge type'],
 
76
                           'merge ../b -r last:1..last:1 --merge-type weave'
 
77
                           ' --show-base')
 
78
        self.run_bzr('revert --no-backup')
75
79
        self.run_bzr('merge ../b -r last:1..last:1 --reprocess')
76
80
        self.run_bzr('revert --no-backup')
77
81
        self.run_bzr('merge ../b -r last:1')
205
209
        f.close()
206
210
        tree_b.commit('message')
207
211
        os.chdir('branch_b')
208
 
        file('../bundle', 'wb').write(self.run_bzr('bundle ../branch_a')[0])
 
212
        self.run_bzr('bundle ../branch_a -o ../bundle')
209
213
        os.chdir('../branch_a')
210
214
        self.run_bzr('merge ../bundle', retcode=1)
211
215
        testament_a = Testament.from_revision(tree_a.branch.repository,
267
271
        self.pullable_branch()
268
272
        os.chdir('a')
269
273
        (out, err) = self.run_bzr('merge --pull ../b')
270
 
        self.assertContainsRe(err, 'Now on revision 2\\.')
 
274
        self.assertContainsRe(out, 'Now on revision 2\\.')
271
275
        tree_a = WorkingTree.open('.')
272
276
        self.assertEqual([self.id2], tree_a.get_parent_ids())
273
277
 
331
335
                             mangle_patch=True)
332
336
        err = self.run_bzr('merge -d target directive')[1]
333
337
        self.assertContainsRe(err, 'Preview patch does not match changes')
 
338
 
 
339
    def test_merge_arbitrary(self):
 
340
        target = self.make_branch_and_tree('target')
 
341
        target.commit('empty')
 
342
        # We need a revision that has no integer revno
 
343
        branch_a = target.bzrdir.sprout('branch_a').open_workingtree()
 
344
        self.build_tree(['branch_a/file1'])
 
345
        branch_a.add('file1')
 
346
        branch_a.commit('added file1', rev_id='rev2a')
 
347
        branch_b = target.bzrdir.sprout('branch_b').open_workingtree()
 
348
        self.build_tree(['branch_b/file2'])
 
349
        branch_b.add('file2')
 
350
        branch_b.commit('added file2', rev_id='rev2b')
 
351
        branch_b.merge_from_branch(branch_a.branch)
 
352
        self.failUnlessExists('branch_b/file1')
 
353
        branch_b.commit('merged branch_a', rev_id='rev3b')
 
354
 
 
355
        # It works if the revid has an interger revno
 
356
        self.run_bzr('merge -d target -r revid:rev2a branch_a')
 
357
        self.failUnlessExists('target/file1')
 
358
        self.failIfExists('target/file2')
 
359
        target.revert([])
 
360
 
 
361
        # It should work if the revid has no integer revno
 
362
        self.run_bzr('merge -d target -r revid:rev2a branch_b')
 
363
        self.failUnlessExists('target/file1')
 
364
        self.failIfExists('target/file2')