~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/tests/test_merge.py

  • Committer: Canonical.com Patch Queue Manager
  • Date: 2011-06-28 15:58:20 UTC
  • mfrom: (5993.2.4 merge-inner-rootless)
  • Revision ID: pqm@pqm.ubuntu.com-20110628155820-g1hpzbqc5573rts5
(jelmer) Re-introduce root when merge result is empty tree. (Jelmer Vernooij)

Show diffs side-by-side

added added

removed removed

Lines of Context:
490
490
        finally:
491
491
            tree_file.close()
492
492
 
 
493
    def test_merge_require_tree_root(self):
 
494
        tree = self.make_branch_and_tree(".")
 
495
        tree.lock_write()
 
496
        self.addCleanup(tree.unlock)
 
497
        self.build_tree(['a'])
 
498
        tree.add('a')
 
499
        tree.commit("added a")
 
500
        old_root_id = tree.get_root_id()
 
501
        first_rev = tree.branch.revision_history()[0]
 
502
        merger = _mod_merge.Merger.from_revision_ids(None, tree,
 
503
                                          _mod_revision.NULL_REVISION,
 
504
                                          first_rev)
 
505
        merger.merge_type = _mod_merge.Merge3Merger
 
506
        conflict_count = merger.do_merge()
 
507
        self.assertEqual(0, conflict_count)
 
508
        self.assertEquals(set([old_root_id]), tree.all_file_ids())
 
509
        tree.set_parent_ids([])
 
510
 
493
511
    def test_merge_add_into_deleted_root(self):
494
512
        # Yes, people actually do this.  And report bugs if it breaks.
495
513
        source = self.make_branch_and_tree('source', format='rich-root-pack')