summaryrefslogtreecommitdiff
path: root/python/subunit/tests
diff options
context:
space:
mode:
authorMartin Pool <mbp@sourcefrog.net>2009-08-05 16:57:48 +1000
committerMartin Pool <mbp@sourcefrog.net>2009-08-05 16:57:48 +1000
commit8961227232a9d2736f386c519e432490a09d01be (patch)
tree053f2323be2a5f286faf29b02f1a947b8a04d761 /python/subunit/tests
parent27837a1f2a6a0a820cecfee674fac5592970a493 (diff)
downloadsubunit-git-8961227232a9d2736f386c519e432490a09d01be.tar.gz
Add TestResultFilter filter_predicate option
Diffstat (limited to 'python/subunit/tests')
-rw-r--r--python/subunit/tests/test_subunit_filter.py17
1 files changed, 16 insertions, 1 deletions
diff --git a/python/subunit/tests/test_subunit_filter.py b/python/subunit/tests/test_subunit_filter.py
index 1341d12..e7196ff 100644
--- a/python/subunit/tests/test_subunit_filter.py
+++ b/python/subunit/tests/test_subunit_filter.py
@@ -91,6 +91,19 @@ class TestTestResultFilter(unittest.TestCase):
self.filtered_result.failures])
self.assertEqual(5, self.filtered_result.testsRun)
+ def test_filter_predicate(self):
+ """You can filter by predicate callbacks"""
+ self.filtered_result = unittest.TestResult()
+ filter_cb = lambda test, err: str(err).find('error details') != -1
+ self.filter = subunit.TestResultFilter(self.filtered_result,
+ filter_predicate=filter_cb,
+ filter_success=False)
+ self.run_tests()
+ self.assertEqual(1,
+ self.filtered_result.testsRun)
+ # I'd like to test filtering the xfail but it's blocked by
+ # https://bugs.edge.launchpad.net/subunit/+bug/409193 -- mbp 20090805
+
def run_tests(self):
self.setUpTestStream()
self.test = subunit.ProtocolTestCase(self.input_stream)
@@ -109,7 +122,9 @@ test failed
tags: local
failure failed
test error
-error error
+error error [
+error details
+]
test skipped
skip skipped
test todo