working on initial winding for cubics
Path ops works well for all tests except for cubics.
Isolate failures caused by cubics, and do a better job of computing
the initial winding for cubics.
TBR=reed@google.com
BUG=skia:3588
Review URL: https://codereview.chromium.org/1096923003
diff --git a/tests/PathOpsExtendedTest.cpp b/tests/PathOpsExtendedTest.cpp
index f303ad1..c316242 100644
--- a/tests/PathOpsExtendedTest.cpp
+++ b/tests/PathOpsExtendedTest.cpp
@@ -289,7 +289,7 @@
return errors2x2 > MAX_ERRORS ? errors2x2 : 0;
}
-const int gTestFirst = 4;
+const int gTestFirst = 6;
static int gTestNo = gTestFirst;
static SkTDArray<SkPathOp> gTestOp;
@@ -654,13 +654,34 @@
#endif
(*tests[index].fun)(reporter, tests[index].str);
}
- if (tests[index].fun == stopTest) {
- SkDebugf("lastTest\n");
- break;
- }
- if (index == last) {
+ if (tests[index].fun == stopTest || index == last) {
break;
}
index += reverse ? -1 : 1;
} while (true);
+#if DEBUG_SHOW_TEST_NAME
+ SkDebugf(
+ "\n"
+ "</div>\n"
+ "\n"
+ "<script type=\"text/javascript\">\n"
+ "\n"
+ "var testDivs = [\n"
+ );
+ index = reverse ? count - 1 : 0;
+ last = reverse ? 0 : count - 1;
+ foundSkip = !skipTest;
+ do {
+ if (tests[index].fun == skipTest) {
+ foundSkip = true;
+ }
+ if (foundSkip && tests[index].fun != firstTest) {
+ SkDebugf(" %s,\n", tests[index].str);
+ }
+ if (tests[index].fun == stopTest || index == last) {
+ break;
+ }
+ index += reverse ? -1 : 1;
+ } while (true);
+#endif
}