From e0581e6819db7c2872ced4d43e803ae7b5e7bd05 Mon Sep 17 00:00:00 2001 From: Jonathan Lange Date: Sun, 13 Feb 2011 14:52:42 +0000 Subject: Make sure that we don't send time if there are none to send. --- python/subunit/test_results.py | 2 ++ python/subunit/tests/test_test_results.py | 15 +++++++++++++++ 2 files changed, 17 insertions(+) (limited to 'python/subunit') diff --git a/python/subunit/test_results.py b/python/subunit/test_results.py index cf051ba..a3f640d 100644 --- a/python/subunit/test_results.py +++ b/python/subunit/test_results.py @@ -256,6 +256,8 @@ class TimeCollapsingDecorator(HookedTestResultDecorator): self._last_sent_time = None def _before_event(self): + if self._last_received_time is None: + return if self._last_received_time != self._last_sent_time: self.decorated.time(self._last_received_time) self._last_sent_time = self._last_received_time diff --git a/python/subunit/tests/test_test_results.py b/python/subunit/tests/test_test_results.py index 8633b44..bed2bd8 100644 --- a/python/subunit/tests/test_test_results.py +++ b/python/subunit/tests/test_test_results.py @@ -263,6 +263,21 @@ class TestTimeCollapsingDecorator(TestCase): tag_collapser.startTest(subunit.RemotedTestCase('foo')) self.assertEquals([('time', a_time)], result._events[:-1]) + def test_no_times_inserted(self): + result = ExtendedTestResult() + tag_collapser = subunit.test_results.TimeCollapsingDecorator(result) + a_time = self.make_time() + tag_collapser.time(a_time) + foo = subunit.RemotedTestCase('foo') + tag_collapser.startTest(foo) + tag_collapser.addSuccess(foo) + tag_collapser.stopTest(foo) + self.assertEquals( + [('time', a_time), + ('startTest', foo), + ('addSuccess', foo), + ('stopTest', foo)], result._events) + def test_suite(): loader = subunit.tests.TestUtil.TestLoader() -- cgit v1.2.1