| import sys |
| import traceback |
| import wvtest |
| |
| |
| class _Meta(type): |
| def __init__(cls, name, bases, attrs): |
| type.__init__(cls, name, bases, attrs) |
| print 'registering class %r' % name |
| for t in dir(cls): |
| if t.startswith('test'): |
| # TODO(apenwarr): inside a class, sort by source code line number |
| print 'registering func %r' % t |
| def DefineGo(t): |
| def Go(): |
| o = cls(t) |
| o.setUp() |
| try: |
| getattr(o, t)() |
| except Exception, e: |
| print |
| print traceback.format_exc() |
| tb = sys.exc_info()[2] |
| wvtest._result(repr(e), traceback.extract_tb(tb)[-1], |
| 'EXCEPTION') |
| finally: |
| o.tearDown() |
| return Go |
| wvtest.wvtest(DefineGo(t), getattr(cls, t)) |
| |
| |
| class TestCase(): |
| __metaclass__ = _Meta |
| |
| def __init__(self, testname): |
| pass |
| |
| def setUp(self): |
| pass |
| |
| def tearDown(self): |
| pass |
| |
| def assertTrue(self, a, unused_msg=''): |
| return wvtest.WVPASS(a, xdepth=1) |
| |
| def assertFalse(self, a, unused_msg=''): |
| return wvtest.WVFAIL(a, xdepth=1) |
| |
| def assertIs(self, a, b): |
| return wvtest.WVPASSIS(a, b, xdepth=1) |
| |
| def assertIsNot(self, a, b): |
| return wvtest.WVPASSISNOT(a, b, xdepth=1) |
| |
| def assertEqual(self, a, b): |
| return wvtest.WVPASSEQ(a, b, xdepth=1) |
| |
| def assertNotEqual(self, a, b): |
| return wvtest.WVPASSNE(a, b, xdepth=1) |
| |
| def assertGreaterEqual(self, a, b): |
| return wvtest.WVPASSGE(a, b, xdepth=1) |
| |
| def assertGreaterThan(self, a, b): |
| return wvtest.WVPASSGT(a, b, xdepth=1) |
| |
| def assertLessEqual(self, a, b): |
| return wvtest.WVPASSLE(a, b, xdepth=1) |
| |
| def assertLessThan(self, a, b): |
| return wvtest.WVPASSLT(a, b, xdepth=1) |
| |
| def assertAlmostEqual(self, a, b, places=7, delta=None): |
| return wvtest.WVPASSNEAR(a, b, places=places, delta=delta, xdepth=1) |
| |
| def assertNotAlmostEqual(self, a, b, places=7, delta=None): |
| return wvtest.WVPASSFAR(a, b, places=places, delta=delta, xdepth=1) |
| |
| def assertRaises(self, etype, func=None, *args, **kwargs): |
| return wvtest._WVEXCEPT(etype, 0, func, *args, **kwargs) |
| |
| assertEquals = assertEqual |
| assertNowEquals = assertNotEqual |
| assertGreater = assertGreaterThan |
| assertLess = assertLessThan |
| |
| def main(): |
| wvtest.wvtest_main() |