~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/tests/bzrdir_implementations/test_bzrdir.py

  • Committer: Canonical.com Patch Queue Manager
  • Date: 2009-03-13 03:56:23 UTC
  • mfrom: (4118.1.5 fix-stackable-remote-repo)
  • Revision ID: pqm@pqm.ubuntu.com-20090313035623-vn0615cs6bd6590e
(andrew) Fix performance regression (many small round-trips) when
        pushing to a remote pack, and improve some tests.

Show diffs side-by-side

added added

removed removed

Lines of Context:
126
126
                for rev_id in left_repo.all_revision_ids():
127
127
                    self.assertEqual(left_repo.get_revision(rev_id),
128
128
                        right_repo.get_revision(rev_id))
129
 
                # inventories
130
 
                left_inv_weave = left_repo.inventories
131
 
                right_inv_weave = right_repo.inventories
132
 
                self.assertEqual(set(left_inv_weave.keys()),
133
 
                    set(right_inv_weave.keys()))
134
 
                # XXX: currently this does not handle indirectly referenced
135
 
                # inventories (e.g. where the inventory is a delta basis for
136
 
                # one that is fully present but that the revid for that
137
 
                # inventory is not yet present.)
138
 
                self.assertEqual(set(left_inv_weave.keys()),
139
 
                    set(left_repo.revisions.keys()))
140
 
                left_trees = left_repo.revision_trees(all_revs)
141
 
                right_trees = right_repo.revision_trees(all_revs)
142
 
                for left_tree, right_tree in izip(left_trees, right_trees):
143
 
                    self.assertEqual(left_tree.inventory, right_tree.inventory)
 
129
                # Assert the revision trees (and thus the inventories) are equal
 
130
                sort_key = lambda rev_tree: rev_tree.get_revision_id()
 
131
                rev_trees_a = sorted(
 
132
                    left_repo.revision_trees(all_revs), key=sort_key)
 
133
                rev_trees_b = sorted(
 
134
                    right_repo.revision_trees(all_revs), key=sort_key)
 
135
                for tree_a, tree_b in zip(rev_trees_a, rev_trees_b):
 
136
                    self.assertEqual([], list(tree_a.iter_changes(tree_b)))
144
137
                # texts
145
138
                text_index = left_repo._generate_text_key_index()
146
139
                self.assertEqual(text_index,
886
879
        dir = source.bzrdir
887
880
        target = dir.sprout(self.get_url('target'))
888
881
        self.assertNotEqual(dir.transport.base, target.transport.base)
 
882
        target_repo = target.open_repository()
 
883
        self.assertRepositoryHasSameItems(source.repository, target_repo)
889
884
        self.assertDirectoriesEqual(dir.root_transport, target.root_transport,
890
885
                                    [
891
886
                                     './.bzr/basis-inventory-cache',
896
891
                                     './.bzr/checkout/stat-cache',
897
892
                                     './.bzr/inventory',
898
893
                                     './.bzr/parent',
899
 
                                     './.bzr/repository/inventory.knit',
 
894
                                     './.bzr/repository',
900
895
                                     './.bzr/stat-cache',
901
896
                                     './foo',
902
897
                                     ])