From 59b5ed77506b2ca196b9a454fc032e5897f1ca37 Mon Sep 17 00:00:00 2001 From: Jonathan Lange Date: Fri, 20 Apr 2012 10:57:47 +0100 Subject: Properly scope tag collapsing --- python/subunit/test_results.py | 2 +- python/subunit/tests/test_subunit_filter.py | 1 + python/subunit/tests/test_test_results.py | 16 ++++++++++++++++ 3 files changed, 18 insertions(+), 1 deletion(-) (limited to 'python') diff --git a/python/subunit/test_results.py b/python/subunit/test_results.py index dec168d..1988346 100644 --- a/python/subunit/test_results.py +++ b/python/subunit/test_results.py @@ -228,7 +228,7 @@ class TagCollapsingDecorator(HookedTestResultDecorator): def stopTest(self, test): super(TagCollapsingDecorator, self).stopTest(test) - self._current_test_tags = set(), set() + self._current_test_tags = None def _before_event(self): if not self._current_test_tags: diff --git a/python/subunit/tests/test_subunit_filter.py b/python/subunit/tests/test_subunit_filter.py index e04090d..35d4603 100644 --- a/python/subunit/tests/test_subunit_filter.py +++ b/python/subunit/tests/test_subunit_filter.py @@ -301,6 +301,7 @@ xfail todo ('startTest', foo), ('addSuccess', foo), ('stopTest', foo), + ('tags', set(), set(['a'])), ], events) diff --git a/python/subunit/tests/test_test_results.py b/python/subunit/tests/test_test_results.py index d11f482..750958e 100644 --- a/python/subunit/tests/test_test_results.py +++ b/python/subunit/tests/test_test_results.py @@ -208,6 +208,22 @@ class TestTagCollapsingDecorator(TestCase): self.assertEquals( [('tags', set(['a', 'b']), set([]))], result._events) + def test_tags_forwarded_after_tests(self): + test = subunit.RemotedTestCase('foo') + result = ExtendedTestResult() + tag_collapser = subunit.test_results.TagCollapsingDecorator(result) + tag_collapser.startTest(test) + tag_collapser.addSuccess(test) + tag_collapser.stopTest(test) + tag_collapser.tags(set(['a']), set(['b'])) + self.assertEqual( + [('startTest', test), + ('addSuccess', test), + ('stopTest', test), + ('tags', set(['a']), set(['b'])), + ], + result._events) + def test_tags_collapsed_inside_of_tests(self): result = ExtendedTestResult() tag_collapser = subunit.test_results.TagCollapsingDecorator(result) -- cgit v1.2.1