| Index: tests/Test.cpp
|
| diff --git a/tests/Test.cpp b/tests/Test.cpp
|
| index 07db96953e7bc01a2603c5adf65c7d44e386a5d1..5558a0be5ecc7f415a4eaa370ed321d47893ec1d 100644
|
| --- a/tests/Test.cpp
|
| +++ b/tests/Test.cpp
|
| @@ -60,7 +60,7 @@ const char* Test::getName() {
|
| namespace {
|
| class LocalReporter : public Reporter {
|
| public:
|
| - explicit LocalReporter(const Reporter& reporterToMimic) : fReporter(reporterToMimic) {}
|
| + explicit LocalReporter(Reporter* reporterToMimic) : fReporter(reporterToMimic) {}
|
|
|
| int failure_size() const { return fFailures.count(); }
|
| const char* failure(int i) const { return fFailures[i].c_str(); }
|
| @@ -72,16 +72,21 @@ namespace {
|
| }
|
| }
|
|
|
| + // Proxy down to fReporter. We assume these calls are threadsafe.
|
| virtual bool allowExtendedTest() const SK_OVERRIDE {
|
| - return fReporter.allowExtendedTest();
|
| + return fReporter->allowExtendedTest();
|
| }
|
|
|
| virtual bool allowThreaded() const SK_OVERRIDE {
|
| - return fReporter.allowThreaded();
|
| + return fReporter->allowThreaded();
|
| + }
|
| +
|
| + virtual void bumpTestCount() SK_OVERRIDE {
|
| + fReporter->bumpTestCount();
|
| }
|
|
|
| private:
|
| - const Reporter& fReporter;
|
| + Reporter* fReporter; // Unowned.
|
| SkTArray<SkString> fFailures;
|
| };
|
| } // namespace
|
| @@ -93,7 +98,7 @@ void Test::run() {
|
| 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);
|
| + LocalReporter local(fReporter);
|
| this->onRun(&local);
|
| fPassed = local.failure_size() == 0;
|
| fElapsed = SkTime::GetMSecs() - start;
|
|
|