Rev 4805: Remove decorator class that won't be needed with upgraded dependencies. in http://bazaar.launchpad.net/~lifeless/bzr/subunit

Robert Collins robertc at robertcollins.net
Sun Dec 13 03:59:59 GMT 2009


At http://bazaar.launchpad.net/~lifeless/bzr/subunit

------------------------------------------------------------
revno: 4805
revision-id: robertc at robertcollins.net-20091213035929-iwbndgy759olzlj5
parent: robertc at robertcollins.net-20091206005049-qwdqia6awryncyy1
committer: Robert Collins <robertc at robertcollins.net>
branch nick: subunit
timestamp: Sun 2009-12-13 14:59:29 +1100
message:
  Remove decorator class that won't be needed with upgraded dependencies.
=== modified file 'bzrlib/tests/__init__.py'
--- a/bzrlib/tests/__init__.py	2009-12-06 00:50:49 +0000
+++ b/bzrlib/tests/__init__.py	2009-12-13 03:59:29 +0000
@@ -617,14 +617,6 @@
         for decorator in self._result_decorators:
             result = decorator(result)
             result.stop_early = self.stop_on_failure
-        try:
-            import testtools
-        except ImportError:
-            pass
-        else:
-            if isinstance(test, testtools.ConcurrentTestSuite):
-                # We need to catch bzr specific behaviors
-                result = BZRTransformingResult(result)
         result.startTestRun()
         try:
             test.run(result)
@@ -3181,7 +3173,7 @@
                 sys.stdin.close()
                 sys.stdin = None
                 stream = os.fdopen(c2pwrite, 'wb', 1)
-                subunit_result = BzrAutoTimingTestResultDecorator(
+                subunit_result = AutoTimingTestResultDecorator(
                     TestProtocolClient(stream))
                 process_suite.run(subunit_result)
             finally:
@@ -3275,56 +3267,10 @@
 
     def addFailure(self, test, err):
         self.result.addFailure(test, err)
-
-
-class BZRTransformingResult(ForwardingResult):
-
-    def addError(self, test, err):
-        feature = self._error_looks_like('UnavailableFeature: ', err)
-        if feature is not None:
-            self.result.addNotSupported(test, feature)
-        else:
-            self.result.addError(test, err)
-
-    def addFailure(self, test, err):
-        known = self._error_looks_like('KnownFailure: ', err)
-        if known is not None:
-            self.result.addExpectedFailure(test,
-                [KnownFailure, KnownFailure(known), None])
-        else:
-            self.result.addFailure(test, err)
-
-    def _error_looks_like(self, prefix, err):
-        """Deserialize exception and returns the stringify value."""
-        import subunit
-        value = None
-        typ, exc, _ = err
-        if isinstance(exc, subunit.RemoteException):
-            # stringify the exception gives access to the remote traceback
-            # We search the last line for 'prefix'
-            lines = str(exc).split('\n')
-            while lines and not lines[-1]:
-                lines.pop(-1)
-            if lines:
-                if lines[-1].startswith(prefix):
-                    value = lines[-1][len(prefix):]
-        return value
-
-
-try:
-    from subunit.test_results import AutoTimingTestResultDecorator
-    # Expected failure should be seen as a success not a failure Once subunit
-    # provide native support for that, BZRTransformingResult and this class
-    # will become useless.
-    class BzrAutoTimingTestResultDecorator(AutoTimingTestResultDecorator):
-
-        def addExpectedFailure(self, test, err):
-            self._before_event()
-            return self._call_maybe("addExpectedFailure", self._degrade_skip,
-                                    test, err)
-except ImportError:
-    # Let's just define a no-op decorator
-    BzrAutoTimingTestResultDecorator = lambda x:x
+ForwardingResult = testtools.ExtendedToOriginalDecorator
+
+
+from subunit.test_results import AutoTimingTestResultDecorator
 
 
 class ProfileResult(ForwardingResult):
@@ -4309,7 +4255,7 @@
     from subunit import TestProtocolClient
     class SubUnitBzrRunner(TextTestRunner):
         def run(self, test):
-            result = BzrAutoTimingTestResultDecorator(
+            result = AutoTimingTestResultDecorator(
                 TestProtocolClient(self.stream))
             test.run(result)
             return result




More information about the bazaar-commits mailing list