~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/tests/test_graph.py

  • Committer: Jelmer Vernooij
  • Date: 2011-12-05 15:16:52 UTC
  • mto: This revision was merged to the branch mainline in revision 6348.
  • Revision ID: jelmer@samba.org-20111205151652-8y6qgvv1qkbv5f71
Fix get_state().

Show diffs side-by-side

added added

removed removed

Lines of Context:
1029
1029
                search.start_searching(starts)
1030
1030
            if stops is not None:
1031
1031
                search.stop_searching_any(stops)
1032
 
            result = search.get_result()
1033
 
            self.assertEqual(recipe, result.get_recipe())
1034
 
            self.assertEqual(set(included_keys), result.get_keys())
 
1032
            state = search.get_state()
 
1033
            self.assertEqual(set(included_keys), state[2])
1035
1034
            self.assertEqual(seen, search.seen)
1036
1035
 
1037
1036
    def test_breadth_first_get_result_excludes_current_pending(self):
1042
1041
            })
1043
1042
        search = graph._make_breadth_first_searcher(['head'])
1044
1043
        # At the start, nothing has been seen, to its all excluded:
1045
 
        result = search.get_result()
1046
 
        self.assertEqual(('search', set(['head']), set(['head']), 0),
1047
 
            result.get_recipe())
1048
 
        self.assertEqual(set(), result.get_keys())
 
1044
        state = search.get_state()
 
1045
        self.assertEqual((set(['head']), set(['head']), set()),
 
1046
            state)
1049
1047
        self.assertEqual(set(), search.seen)
1050
1048
        # using next:
1051
1049
        expected = [
1074
1072
        # Starting with nothing and adding a search works:
1075
1073
        search.start_searching(['head'])
1076
1074
        # head has been seen:
1077
 
        result = search.get_result()
1078
 
        self.assertEqual(('search', set(['head']), set(['child']), 1),
1079
 
            result.get_recipe())
1080
 
        self.assertEqual(set(['head']), result.get_keys())
 
1075
        state = search.get_state()
 
1076
        self.assertEqual((set(['head']), set(['child']), set(['head'])),
 
1077
            state)
1081
1078
        self.assertEqual(set(['head']), search.seen)
1082
1079
        # using next:
1083
1080
        expected = [
1234
1231
        self.assertSeenAndResult(expected, search, search.next)
1235
1232
        self.assertRaises(StopIteration, search.next)
1236
1233
        self.assertEqual(set(['head', 'ghost', NULL_REVISION]), search.seen)
1237
 
        result = search.get_result()
1238
 
        self.assertEqual(('search', set(['ghost', 'head']), set(['ghost']), 2),
1239
 
            result.get_recipe())
1240
 
        self.assertEqual(set(['head', NULL_REVISION]), result.get_keys())
 
1234
        state = search.get_state()
 
1235
        self.assertEqual(
 
1236
            (set(['ghost', 'head']), set(['ghost']),
 
1237
                set(['head', NULL_REVISION])),
 
1238
            state)
1241
1239
        # using next_with_ghosts:
1242
1240
        search = graph._make_breadth_first_searcher(['head'])
1243
1241
        self.assertSeenAndResult(expected, search, search.next_with_ghosts)
1244
1242
        self.assertRaises(StopIteration, search.next)
1245
1243
        self.assertEqual(set(['head', 'ghost', NULL_REVISION]), search.seen)
1246
 
        result = search.get_result()
1247
 
        self.assertEqual(('search', set(['ghost', 'head']), set(['ghost']), 2),
1248
 
            result.get_recipe())
1249
 
        self.assertEqual(set(['head', NULL_REVISION]), result.get_keys())
 
1244
        state = search.get_state()
 
1245
        self.assertEqual(
 
1246
            (set(['ghost', 'head']), set(['ghost']),
 
1247
                set(['head', NULL_REVISION])),
 
1248
            state)
1250
1249
 
1251
1250
 
1252
1251
class TestFindUniqueAncestors(TestGraphBase):