diff options
| author | Yong He <yonghe@outlook.com> | 2021-09-24 11:33:44 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-09-24 11:33:44 -0700 |
| commit | bec8e6aec85b6e3f875c58bdd59eb15613978358 (patch) | |
| tree | 0791fb2ce1be786c17e5a6ee489ed3065fc07332 /tools/unit-test/slang-unit-test.cpp | |
| parent | f2a3c933bc11a498c622fa18694c84beca8ca031 (diff) | |
Move existing unit tests to a standalone dll. (#1945)
Diffstat (limited to 'tools/unit-test/slang-unit-test.cpp')
| -rw-r--r-- | tools/unit-test/slang-unit-test.cpp | 27 |
1 files changed, 22 insertions, 5 deletions
diff --git a/tools/unit-test/slang-unit-test.cpp b/tools/unit-test/slang-unit-test.cpp index a31614c05..28eba3a1f 100644 --- a/tools/unit-test/slang-unit-test.cpp +++ b/tools/unit-test/slang-unit-test.cpp @@ -5,13 +5,14 @@ struct SlangUnitTest { const char* name; - slang::UnitTestFunc func; + UnitTestFunc func; }; -class SlangUnitTestModule : public slang::IUnitTestModule +class SlangUnitTestModule : public IUnitTestModule { public: Slang::List<SlangUnitTest> tests; + ITestReporter* testReporter = nullptr; virtual SlangInt getTestCount() override { @@ -22,10 +23,21 @@ public: return tests[index].name; } - virtual slang::UnitTestFunc getTestFunc(SlangInt index) override + virtual UnitTestFunc getTestFunc(SlangInt index) override { return tests[index].func; } + + virtual void setTestReporter(ITestReporter* reporter) override + { + testReporter = reporter; + } + + virtual void destroy() override + { + tests = decltype(tests)(); + } + }; SlangUnitTestModule* _getTestModule() @@ -34,15 +46,20 @@ SlangUnitTestModule* _getTestModule() return &testModule; } +ITestReporter* getTestReporter() +{ + return _getTestModule()->testReporter; +} + extern "C" { -SLANG_DLL_EXPORT slang::IUnitTestModule* slangUnitTestGetModule() +SLANG_DLL_EXPORT IUnitTestModule* slangUnitTestGetModule() { return _getTestModule(); } } -slang::UnitTestRegisterHelper::UnitTestRegisterHelper(const char* name, UnitTestFunc testFunc) +UnitTestRegisterHelper::UnitTestRegisterHelper(const char* name, UnitTestFunc testFunc) { _getTestModule()->tests.add(SlangUnitTest{ name, testFunc }); } |
