summaryrefslogtreecommitdiff
path: root/utils/lit/lit/LitTestCase.py
diff options
context:
space:
mode:
authorDaniel Dunbar <daniel@zuster.org>2010-03-25 07:10:01 +0000
committerDaniel Dunbar <daniel@zuster.org>2010-03-25 07:10:01 +0000
commitf104f5b17acdc613f76f733cd1c7ea1e4370ab07 (patch)
tree2921a33de362ff7d9707d88f66581ff898cf60e5 /utils/lit/lit/LitTestCase.py
parentd5d5a3dcbaa4e7f394ba045e2d7d0ec3aa76f50c (diff)
downloadllvm-f104f5b17acdc613f76f733cd1c7ea1e4370ab07.tar.gz
llvm-f104f5b17acdc613f76f733cd1c7ea1e4370ab07.tar.bz2
llvm-f104f5b17acdc613f76f733cd1c7ea1e4370ab07.tar.xz
lit: Add LitTestCase and lit.load_test_suite, for adapting lit based suites for
use with Python's unittest. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@99498 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'utils/lit/lit/LitTestCase.py')
-rw-r--r--utils/lit/lit/LitTestCase.py30
1 files changed, 30 insertions, 0 deletions
diff --git a/utils/lit/lit/LitTestCase.py b/utils/lit/lit/LitTestCase.py
new file mode 100644
index 0000000000..8951185843
--- /dev/null
+++ b/utils/lit/lit/LitTestCase.py
@@ -0,0 +1,30 @@
+import unittest
+import Test
+
+"""
+TestCase adaptor for providing a 'unittest' compatible interface to 'lit' tests.
+"""
+
+class UnresolvedError(RuntimeError):
+ pass
+
+class LitTestCase(unittest.TestCase):
+ def __init__(self, test, lit_config):
+ unittest.TestCase.__init__(self)
+ self._test = test
+ self._lit_config = lit_config
+
+ def id(self):
+ return self._test.getFullName()
+
+ def shortDescription(self):
+ return self._test.getFullName()
+
+ def runTest(self):
+ tr, output = self._test.config.test_format.execute(
+ self._test, self._lit_config)
+
+ if tr is Test.UNRESOLVED:
+ raise UnresolvedError(output)
+ elif tr.isFailure:
+ self.fail(output)