/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/test_graph.py

  • Committer: Andrew Bennetts
  • Date: 2008-01-14 22:45:15 UTC
  • mfrom: (3179 +trunk)
  • mto: This revision was merged to the branch mainline in revision 3180.
  • Revision ID: andrew.bennetts@canonical.com-20080114224515-izp51fxci3hhopap
Merge from bzr.dev.

Show diffs side-by-side

added added

removed removed

Lines of Context:
244
244
        self.calls = []
245
245
        self._real_parents_provider = parents_provider
246
246
 
247
 
    def get_parents(self, nodes):
248
 
        self.calls.extend(nodes)
249
 
        return self._real_parents_provider.get_parents(nodes)
250
 
 
251
247
    def get_parent_map(self, nodes):
252
248
        self.calls.extend(nodes)
253
249
        return self._real_parents_provider.get_parent_map(nodes)
450
446
        self.assertEqual((set(['e']), set(['f', 'g'])),
451
447
                         graph.find_difference('e', 'f'))
452
448
 
453
 
    def test_stacked_parents_provider_get_parents(self):
454
 
        parents1 = _mod_graph.DictParentsProvider({'rev2': ['rev3']})
455
 
        parents2 = _mod_graph.DictParentsProvider({'rev1': ['rev4']})
456
 
        stacked = _mod_graph._StackedParentsProvider([parents1, parents2])
457
 
        self.assertEqual([['rev4',], ['rev3']],
458
 
             self.applyDeprecated(symbol_versioning.one_one,
459
 
                                  stacked.get_parents, ['rev1', 'rev2']))
460
 
        self.assertEqual([['rev3',], ['rev4']],
461
 
             self.applyDeprecated(symbol_versioning.one_one,
462
 
                                  stacked.get_parents, ['rev2', 'rev1']))
463
 
        self.assertEqual([['rev3',], ['rev3']],
464
 
             self.applyDeprecated(symbol_versioning.one_one,
465
 
                         stacked.get_parents, ['rev2', 'rev2']))
466
 
        self.assertEqual([['rev4',], ['rev4']],
467
 
             self.applyDeprecated(symbol_versioning.one_one,
468
 
                         stacked.get_parents, ['rev1', 'rev1']))
469
 
 
470
449
    def test_stacked_parents_provider(self):
471
450
        parents1 = _mod_graph.DictParentsProvider({'rev2': ['rev3']})
472
451
        parents2 = _mod_graph.DictParentsProvider({'rev1': ['rev4']})
626
605
        """
627
606
        class stub(object):
628
607
            pass
629
 
        def get_parents(keys):
630
 
            result = []
631
 
            for key in keys:
632
 
                if key == 'deeper':
633
 
                    self.fail('key deeper was accessed')
634
 
                result.append(graph_dict[key])
635
 
            return result
636
608
        def get_parent_map(keys):
637
609
            result = {}
638
610
            for key in keys:
641
613
                result[key] = graph_dict[key]
642
614
            return result
643
615
        an_obj = stub()
644
 
        an_obj.get_parents = get_parents
645
616
        an_obj.get_parent_map = get_parent_map
646
617
        graph = _mod_graph.Graph(an_obj)
647
618
        return graph.heads(search)
690
661
        self.inst_pp = InstrumentedParentsProvider(dict_pp)
691
662
        self.caching_pp = _mod_graph.CachingParentsProvider(self.inst_pp)
692
663
 
693
 
    def test_get_parents(self):
694
 
        """Requesting the same revision should be returned from cache"""
695
 
        self.assertEqual({}, self.caching_pp._cache)
696
 
        self.assertEqual([('b',)],
697
 
            self.applyDeprecated(symbol_versioning.one_one,
698
 
            self.caching_pp.get_parents, ['a']))
699
 
        self.assertEqual(['a'], self.inst_pp.calls)
700
 
        self.assertEqual([('b',)],
701
 
            self.applyDeprecated(symbol_versioning.one_one,
702
 
            self.caching_pp.get_parents, ['a']))
703
 
        # No new call, as it should have been returned from the cache
704
 
        self.assertEqual(['a'], self.inst_pp.calls)
705
 
        self.assertEqual({'a':('b',)}, self.caching_pp._cache)
706
 
 
707
664
    def test_get_parent_map(self):
708
665
        """Requesting the same revision should be returned from cache"""
709
666
        self.assertEqual({}, self.caching_pp._cache)