Revert r188376, "[lit] Support parsing scripts with inconsistent or invalid encodings...
[oota-llvm.git] / utils / lit / lit / LitTestCase.py
1 from __future__ import absolute_import
2 import unittest
3
4 import lit.Test
5
6 """
7 TestCase adaptor for providing a 'unittest' compatible interface to 'lit' tests.
8 """
9
10 class UnresolvedError(RuntimeError):
11     pass
12         
13 class LitTestCase(unittest.TestCase):
14     def __init__(self, test, lit_config):
15         unittest.TestCase.__init__(self)
16         self._test = test
17         self._lit_config = lit_config
18
19     def id(self):
20         return self._test.getFullName()
21
22     def shortDescription(self):
23         return self._test.getFullName()
24
25     def runTest(self):
26         tr, output = self._test.config.test_format.execute(
27             self._test, self._lit_config)
28
29         if tr is lit.Test.UNRESOLVED:
30             raise UnresolvedError(output)
31         elif tr.isFailure:
32             self.fail(output)