| OLD | NEW |
| (Empty) |
| 1 #ifndef DMTestTask_DEFINED | |
| 2 #define DMTestTask_DEFINED | |
| 3 | |
| 4 #include "DMReporter.h" | |
| 5 #include "DMJsonWriter.h" | |
| 6 #include "DMTask.h" | |
| 7 #include "DMTaskRunner.h" | |
| 8 #include "SkString.h" | |
| 9 #include "SkTemplates.h" | |
| 10 #include "Test.h" | |
| 11 | |
| 12 // Runs a unit test. | |
| 13 namespace DM { | |
| 14 | |
| 15 class TestReporter : public skiatest::Reporter { | |
| 16 public: | |
| 17 TestReporter() {} | |
| 18 | |
| 19 const SkTArray<SkString>& failures() const { return fFailures; } | |
| 20 | |
| 21 private: | |
| 22 bool allowExtendedTest() const SK_OVERRIDE; | |
| 23 bool verbose() const SK_OVERRIDE; | |
| 24 | |
| 25 void onReportFailed(const skiatest::Failure& failure) SK_OVERRIDE { | |
| 26 JsonWriter::AddTestFailure(failure); | |
| 27 | |
| 28 SkString newFailure; | |
| 29 failure.getFailureString(&newFailure); | |
| 30 fFailures.push_back(newFailure); | |
| 31 } | |
| 32 | |
| 33 SkTArray<SkString> fFailures; | |
| 34 }; | |
| 35 | |
| 36 class CpuTestTask : public CpuTask { | |
| 37 public: | |
| 38 CpuTestTask(Reporter*, TaskRunner*, skiatest::TestRegistry::Factory); | |
| 39 | |
| 40 void draw() SK_OVERRIDE; | |
| 41 bool shouldSkip() const SK_OVERRIDE { return false; } | |
| 42 SkString name() const SK_OVERRIDE { return fName; } | |
| 43 | |
| 44 private: | |
| 45 TestReporter fTestReporter; | |
| 46 SkAutoTDelete<skiatest::Test> fTest; | |
| 47 const SkString fName; | |
| 48 }; | |
| 49 | |
| 50 class GpuTestTask : public GpuTask { | |
| 51 public: | |
| 52 GpuTestTask(Reporter*, TaskRunner*, skiatest::TestRegistry::Factory); | |
| 53 | |
| 54 void draw(GrContextFactory*) SK_OVERRIDE; | |
| 55 bool shouldSkip() const SK_OVERRIDE; | |
| 56 SkString name() const SK_OVERRIDE { return fName; } | |
| 57 | |
| 58 private: | |
| 59 TestReporter fTestReporter; | |
| 60 SkAutoTDelete<skiatest::Test> fTest; | |
| 61 const SkString fName; | |
| 62 }; | |
| 63 | |
| 64 } // namespace DM | |
| 65 | |
| 66 #endif // DMTestTask_DEFINED | |
| OLD | NEW |