# Path: airy/utils/unittest/result.py
# def failfast(method):
#     def inner(self, *args, **kw):
#     def __init__(self):
#     def startTest(self, test):
#     def startTestRun(self):
#     def stopTest(self, test):
#     def stopTestRun(self):
#     def addError(self, test, err):
#     def addFailure(self, test, err):
#     def addSuccess(self, test):
#     def addSkip(self, test, reason):
#     def addExpectedFailure(self, test, err):
#     def addUnexpectedSuccess(self, test):
#     def wasSuccessful(self):
#     def stop(self):
#     def _exc_info_to_string(self, err, test):
#     def _is_relevant_tb_level(self, tb):
#     def _count_relevant_tb_levels(self, tb):
#     def __repr__(self):
# STDOUT_LINE = '\nStdout:\n%s'
# STDERR_LINE = '\nStderr:\n%s'
# class TestResult(unittest.TestResult):


import sys
import difflib
import pprint
import re
import unittest
import warnings
from airy.utils.unittest import result
from airy.utils.unittest.util import\
    safe_repr, safe_str, strclass,\
    unorderable_list_difference
from airy.utils.unittest.compatibility import wraps
    def run(self, result=None):
        orig_result = result
        if result is None:
            result = self.defaultTestResult()
            startTestRun = getattr(result, 'startTestRun', None)
            if startTestRun is not None:
                startTestRun()

        self._resultForDoCleanups = result
        result.startTest(self)

        testMethod = getattr(self, self._testMethodName)

        if (getattr(self.__class__, "__unittest_skip__", False) or
            getattr(testMethod, "__unittest_skip__", False)):
            # If the class or method was skipped.
            try:
                skip_why = (getattr(self.__class__, '__unittest_skip_why__', '')
                            or getattr(testMethod, '__unittest_skip_why__', ''))
                self._addSkip(result, skip_why)
            finally:
                result.stopTest(self)
            return
        try:
            success = False
            try:
                self.setUp()
            except SkipTest, e:
                self._addSkip(result, str(e))
            except Exception:

# Path: airy/utils/unittest/result.py
# def failfast(method):
#     def inner(self, *args, **kw):
#     def __init__(self):
#     def startTest(self, test):
#     def startTestRun(self):
#     def stopTest(self, test):
#     def stopTestRun(self):
#     def addError(self, test, err):
#     def addFailure(self, test, err):
#     def addSuccess(self, test):
#     def addSkip(self, test, reason):
#     def addExpectedFailure(self, test, err):
#     def addUnexpectedSuccess(self, test):
#     def wasSuccessful(self):
#     def stop(self):
#     def _exc_info_to_string(self, err, test):
#     def _is_relevant_tb_level(self, tb):
#     def _count_relevant_tb_levels(self, tb):
#     def __repr__(self):
# STDOUT_LINE = '\nStdout:\n%s'
# STDERR_LINE = '\nStderr:\n%s'
# class TestResult(unittest.TestResult):


# Path: airy/utils/unittest/case.py
import sys
import difflib
import pprint
import re
import unittest
import warnings
from airy.utils.unittest import result
from airy.utils.unittest.util import\
    safe_repr, safe_str, strclass,\
    unorderable_list_difference
from airy.utils.unittest.compatibility import wraps

    def run(self, result=None):
        orig_result = result
        if result is None:
            result = self.defaultTestResult()
            startTestRun = getattr(result, 'startTestRun', None)
            if startTestRun is not None:
                startTestRun()

        self._resultForDoCleanups = result
        result.startTest(self)

        testMethod = getattr(self, self._testMethodName)

        if (getattr(self.__class__, "__unittest_skip__", False) or
            getattr(testMethod, "__unittest_skip__", False)):
            # If the class or method was skipped.
            try:
                skip_why = (getattr(self.__class__, '__unittest_skip_why__', '')
                            or getattr(testMethod, '__unittest_skip_why__', ''))
                self._addSkip(result, skip_why)
            finally:
                result.stopTest(self)
            return
        try:
            success = False
            try:
                self.setUp()
            except SkipTest, e:
                self._addSkip(result, str(e))
            except Exception:

                result.addError(self, sys.exc_info())