| """ |
| Test TestBase test functions. |
| """ |
| |
| import io |
| |
| from lldbsuite.test.lldbtest import * |
| from lldbsuite.test_event import build_exception |
| |
| |
| class TestBuildMethod(Base): |
| def setUp(self): |
| super().setUp() |
| self._traces = [] |
| self.traceAlways = True |
| |
| # override the parent trace method |
| def trace(self, *args, **kwargs): |
| buf = io.StringIO() |
| print(*args, file=buf, **kwargs) |
| self._traces.append(buf.getvalue()) |
| |
| def test_build_fails_helpfully(self): |
| try: |
| self.build(dictionary={"CXX_SOURCES": "nonexisting-file.cpp"}) |
| except build_exception.BuildError as e: |
| self.assertIn("nonexisting-file.cpp", str(e)) |
| else: |
| self.fail("BuildError not raised!") |
| |
| def test_build_logs_traces(self): |
| self.build(dictionary={"CXX_SOURCES": "return0.cpp"}) |
| self.assertIn("CXX_SOURCES", self._traces[0]) |
| self.assertIn("return0.o", self._traces[1]) |