| Index: gm/gmmain.cpp
|
| ===================================================================
|
| --- gm/gmmain.cpp (revision 8839)
|
| +++ gm/gmmain.cpp (working copy)
|
| @@ -38,6 +38,11 @@
|
| #include "SkTileGridPicture.h"
|
| #include "SamplePipeControllers.h"
|
|
|
| +#define EPOGER_TEST
|
| +#ifdef EPOGER_TEST
|
| +#include "SkTime.h"
|
| +#endif
|
| +
|
| #ifdef SK_BUILD_FOR_WIN
|
| // json includes xlocale which generates warning 4530 because we're compiling without
|
| // exceptions; see https://code.google.com/p/skia/issues/detail?id=1067
|
| @@ -1447,11 +1452,15 @@
|
| SkBitmap comparisonBitmap;
|
|
|
| const char* writePath;
|
| +#ifdef EPOGER_TEST
|
| + writePath = NULL;
|
| +#else
|
| if (FLAGS_writePath.count() == 1) {
|
| writePath = FLAGS_writePath[0];
|
| } else {
|
| writePath = NULL;
|
| }
|
| +#endif
|
| if (errorsForThisConfig.isEmpty()) {
|
| errorsForThisConfig.add(gmmain.test_drawing(gm,config, writePath, gpuTarget,
|
| &comparisonBitmap));
|
| @@ -1515,6 +1524,8 @@
|
| }
|
| }
|
|
|
| +#ifdef EPOGER_TEST
|
| +#else
|
| if ((1 == FLAGS_writePicturePath.count()) &&
|
| !(gmFlags & GM::kSkipPicture_Flag)) {
|
| const char* pictureSuffix = "skp";
|
| @@ -1523,6 +1534,7 @@
|
| SkFILEWStream stream(path.c_str());
|
| pict->serialize(&stream);
|
| }
|
| +#endif
|
|
|
| if (FLAGS_rtree) {
|
| const char renderModeDescriptor[] = "-rtree";
|
| @@ -1632,6 +1644,10 @@
|
| gPrintInstCount = true;
|
| #endif
|
|
|
| +#ifdef EPOGER_TEST
|
| + SkMSec timeStart = SkTime::GetMSecs();
|
| +#endif
|
| +
|
| SkGraphics::Init();
|
| // we don't need to see this during a run
|
| gSkSuppressFontCachePurgeSpew = true;
|
| @@ -1799,10 +1815,18 @@
|
| }
|
| if (FLAGS_verbose) {
|
| if (FLAGS_writePath.count() == 1) {
|
| +#ifdef EPOGER_TEST
|
| + gm_fprintf(stdout, "EPOGER_TEST: NOT writing to %s\n", FLAGS_writePath[0]);
|
| +#else
|
| gm_fprintf(stdout, "writing to %s\n", FLAGS_writePath[0]);
|
| +#endif
|
| }
|
| if (FLAGS_writePicturePath.count() == 1) {
|
| +#ifdef EPOGER_TEST
|
| + gm_fprintf(stdout, "EPOGER_TEST: NOT writing pictures to %s\n", FLAGS_writePicturePath[0]);
|
| +#else
|
| gm_fprintf(stdout, "writing pictures to %s\n", FLAGS_writePicturePath[0]);
|
| +#endif
|
| }
|
| if (FLAGS_resourcePath.count() == 1) {
|
| gm_fprintf(stdout, "reading resources from %s\n", FLAGS_resourcePath[0]);
|
| @@ -1820,6 +1844,8 @@
|
| int gmIndex = -1;
|
| SkString moduloStr;
|
|
|
| +#ifdef EPOGER_TEST
|
| +#else
|
| // If we will be writing out files, prepare subdirectories.
|
| if (FLAGS_writePath.count() == 1) {
|
| if (!sk_mkdir(FLAGS_writePath[0])) {
|
| @@ -1837,6 +1863,7 @@
|
| }
|
| }
|
| }
|
| +#endif
|
|
|
| if (FLAGS_pdfJpegQuality < -1 || FLAGS_pdfJpegQuality > 100) {
|
| gm_fprintf(stderr, "%s\n", "pdfJpegQuality must be in [-1 .. 100] range.");
|
| @@ -1884,6 +1911,10 @@
|
| }
|
| int expectedNumberOfTests = gmsRun * (configs.count() + modes.count());
|
|
|
| +#ifdef EPOGER_TEST
|
| + SkMSec timeBeforeSummaryOutput = SkTime::GetMSecs();
|
| +#endif
|
| +
|
| // Output summary to stdout.
|
| if (FLAGS_verbose) {
|
| gm_fprintf(stdout, "Ran %d GMs\n", gmsRun);
|
| @@ -1905,6 +1936,23 @@
|
| }
|
| #endif
|
|
|
| +#ifdef EPOGER_TEST
|
| + Json::Value actualResults;
|
| + actualResults[kJsonKey_ActualResults_Failed] =
|
| + gmmain.fJsonActualResults_Failed;
|
| + actualResults[kJsonKey_ActualResults_FailureIgnored] =
|
| + gmmain.fJsonActualResults_FailureIgnored;
|
| + actualResults[kJsonKey_ActualResults_NoComparison] =
|
| + gmmain.fJsonActualResults_NoComparison;
|
| + actualResults[kJsonKey_ActualResults_Succeeded] =
|
| + gmmain.fJsonActualResults_Succeeded;
|
| + Json::Value root;
|
| + root[kJsonKey_ActualResults] = actualResults;
|
| + root[kJsonKey_ExpectedResults] = gmmain.fJsonExpectedResults;
|
| + std::string jsonStdString = root.toStyledString();
|
| + printf("%s\n", jsonStdString.c_str());
|
| +#endif
|
| +
|
| if (FLAGS_writeJsonSummaryPath.count() == 1) {
|
| Json::Value actualResults;
|
| actualResults[kJsonKey_ActualResults_Failed] =
|
| @@ -1942,6 +1990,12 @@
|
| #endif
|
| SkGraphics::Term();
|
|
|
| +#ifdef EPOGER_TEST
|
| + SkMSec timeEnd = SkTime::GetMSecs();
|
| + printf("EPOGER_TEST timings: %d msecs before summary output, %d msecs total\n",
|
| + (timeBeforeSummaryOutput - timeStart), (timeEnd - timeStart));
|
| +#endif
|
| +
|
| return (reportError) ? -1 : 0;
|
| }
|
|
|
|
|