Rev 4639: Layer tests for selftest --subunit better. in http://bazaar.launchpad.net/~lifeless/bzr/test-speed

Robert Collins robertc at robertcollins.net
Mon Aug 24 00:33:18 BST 2009


At http://bazaar.launchpad.net/~lifeless/bzr/test-speed

------------------------------------------------------------
revno: 4639
revision-id: robertc at robertcollins.net-20090823233316-ce8wwfi5vy2nph94
parent: robertc at robertcollins.net-20090823232033-bz1c16hevpt5hkem
committer: Robert Collins <robertc at robertcollins.net>
branch nick: test-speed
timestamp: Mon 2009-08-24 09:33:16 +1000
message:
  Layer tests for selftest --subunit better.
=== modified file 'bzrlib/tests/blackbox/test_selftest.py'
--- a/bzrlib/tests/blackbox/test_selftest.py	2009-08-23 23:20:33 +0000
+++ b/bzrlib/tests/blackbox/test_selftest.py	2009-08-23 23:33:16 +0000
@@ -93,17 +93,9 @@
         self.assertSubset(["list_only", "random_seed"], params[1])
 
     def test_subunit(self):
-        """Passing --subunit results in subunit output."""
         self.requireFeature(SubUnitFeature)
-        from subunit import ProtocolTestCase
-        stdout = self.run_bzr(
-            'selftest --subunit --no-plugins '
-            'tests.test_selftest.SelftestTests.test_import_tests')[0]
-        stream = StringIO(str(stdout))
-        test = ProtocolTestCase(stream)
-        result = unittest.TestResult()
-        test.run(result)
-        self.assertEqual(1, result.testsRun)
+        params = self.get_params_passed_to_core('selftest --subunit')
+        self.assertEqual(tests.SubUnitBzrRunner, params[1]['runner_class'])
 
 
 class TestRunBzr(ExternalBase):

=== modified file 'bzrlib/tests/test_selftest.py'
--- a/bzrlib/tests/test_selftest.py	2009-08-23 23:20:33 +0000
+++ b/bzrlib/tests/test_selftest.py	2009-08-23 23:33:16 +0000
@@ -50,6 +50,7 @@
     deprecated_method,
     )
 from bzrlib.tests import (
+    SubUnitFeature,
     test_lsprof,
     test_sftp_transport,
     TestUtil,
@@ -1831,6 +1832,16 @@
             list_only=True, random_seed="123")
         self.assertEqual(expected.getvalue(), repeated.getvalue())
 
+    def test_runner_class(self):
+        self.requireFeature(SubUnitFeature)
+        from subunit import ProtocolTestCase
+        stream = self.run_selftest(runner_class=tests.SubUnitBzrRunner,
+            test_suite_factory=self.factory)
+        test = ProtocolTestCase(stream)
+        result = unittest.TestResult()
+        test.run(result)
+        self.assertEqual(3, result.testsRun)
+
     def check_transport_set(self, transport_server):
         captured_transport = []
         def seen_transport(a_transport):




More information about the bazaar-commits mailing list