Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1250)

Unified Diff: tests/Test.cpp

Issue 830513004: Simplify skiatest framework. (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: Created 5 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: tests/Test.cpp
diff --git a/tests/Test.cpp b/tests/Test.cpp
index cf068690a6109ee6406adb841991e5eda8914cb3..88d59c40693eb5ab9167f935ad331863a98b58d8 100644
--- a/tests/Test.cpp
+++ b/tests/Test.cpp
@@ -10,109 +10,35 @@
#include "SkCommandLineFlags.h"
#include "SkError.h"
#include "SkString.h"
-#include "SkTArray.h"
#include "SkTime.h"
-#if SK_SUPPORT_GPU
-#include "GrContext.h"
-#include "gl/SkGLContext.h"
-#else
-class GrContext;
-#endif
-
-DEFINE_string2(tmpDir, t, NULL, "tmp directory for tests to use.");
-
using namespace skiatest;
mtklein 2015/01/15 23:46:46 Remove this or remove all the skiatest:: below?
hal.canary 2015/01/16 15:31:57 Done.
-Reporter::Reporter() : fTestCount(0) {
-}
-
-void Reporter::startTest(Test* test) {
- this->onStart(test);
-}
-
-void Reporter::reportFailed(const skiatest::Failure& failure) {
- this->onReportFailed(failure);
-}
-
-void Reporter::endTest(Test* test) {
- this->onEnd(test);
-}
-
-///////////////////////////////////////////////////////////////////////////////
-
-Test::Test() : fReporter(NULL), fPassed(true) {}
-
-Test::~Test() {
- SkSafeUnref(fReporter);
-}
-
-void Test::setReporter(Reporter* r) {
- SkRefCnt_SafeAssign(fReporter, r);
+skiatest::Reporter::~Reporter() {
mtklein 2015/01/15 23:46:46 Any reason we don't just put this little nothing d
hal.canary 2015/01/16 15:31:57 Done.
}
-const char* Test::getName() {
- if (fName.size() == 0) {
- this->onGetName(&fName);
+SkString skiatest::FailureToString(const skiatest::Failure& failure) {
+ SkString result =
+ SkStringPrintf("%s:%d\t", failure.fileName, failure.lineNo);
+ if (!failure.message.isEmpty()) {
+ result.append(failure.message);
+ if (strlen(failure.condition) > 0) {
+ result.append(": ");
+ }
}
- return fName.c_str();
-}
-
-class LocalReporter : public Reporter {
-public:
- explicit LocalReporter(Reporter* reporterToMimic) : fReporter(reporterToMimic) {}
-
- int numFailures() const { return fFailures.count(); }
- const skiatest::Failure& failure(int i) const { return fFailures[i]; }
-
-protected:
- void onReportFailed(const Failure& failure) SK_OVERRIDE {
- fFailures.push_back(failure);
- }
-
- // Proxy down to fReporter. We assume these calls are threadsafe.
- bool allowExtendedTest() const SK_OVERRIDE {
- return fReporter->allowExtendedTest();
- }
-
- void bumpTestCount() SK_OVERRIDE {
- fReporter->bumpTestCount();
- }
-
- bool verbose() const SK_OVERRIDE {
- return fReporter->verbose();
- }
-
-private:
- Reporter* fReporter; // Unowned.
- SkTArray<skiatest::Failure> fFailures;
-};
-
-void Test::run() {
- // Clear the Skia error callback before running any test, to ensure that tests
- // don't have unintended side effects when running more than one.
- SkSetErrorCallback( NULL, NULL );
-
- // Tell (likely shared) fReporter that this test has started.
- fReporter->startTest(this);
-
- const SkMSec start = SkTime::GetMSecs();
- // Run the test into a LocalReporter so we know if it's passed or failed without interference
- // from other tests that might share fReporter.
- LocalReporter local(fReporter);
- this->onRun(&local);
- fPassed = local.numFailures() == 0;
- fElapsed = SkTime::GetMSecs() - start;
-
- // Now tell fReporter about any failures and wrap up.
- for (int i = 0; i < local.numFailures(); i++) {
- fReporter->reportFailed(local.failure(i));
- }
- fReporter->endTest(this);
-
-}
-
-SkString Test::GetTmpDir() {
- const char* tmpDir = FLAGS_tmpDir.isEmpty() ? NULL : FLAGS_tmpDir[0];
- return SkString(tmpDir);
-}
+ result.append(failure.condition);
+ return result;
+}
+
+// SkMSec skiatest::TimeTest(const skiatest::Test& test,
+// Reporter* reporter,
mtklein 2015/01/15 23:46:46 Yeah, die die die.
hal.canary 2015/01/16 15:31:57 Done.
+// GrContextFactory* grContextFactory) {
+// SkASSERT(grContextFactory || !test.needsGpu)
+// // Clear the Skia error callback before running any test, to
+// // ensure that tests don't have unintended side effects when
+// // running more than one.
+// SkSetErrorCallback(NULL, NULL);
+// const SkMSec start = SkTime::GetMSecs();
+// test.proc(reporter, grContextFactory);
+// return SkTime::GetMSecs() - start;
+// }

Powered by Google App Engine
This is Rietveld 408576698