Index: tests/PathOpsQuadIntersectionTest.cpp |
diff --git a/tests/PathOpsQuadIntersectionTest.cpp b/tests/PathOpsQuadIntersectionTest.cpp |
index be3d5a86d16d0fdee6a4752abc97b30bdea1b098..cb359449184b9150511f4f8a84458e92122f0384 100644 |
--- a/tests/PathOpsQuadIntersectionTest.cpp |
+++ b/tests/PathOpsQuadIntersectionTest.cpp |
@@ -14,9 +14,13 @@ |
static void standardTestCases(skiatest::Reporter* reporter) { |
bool showSkipped = false; |
for (size_t index = 0; index < quadraticTests_count; ++index) { |
- const SkDQuad& quad1 = quadraticTests[index][0]; |
+ const QuadPts& q1 = quadraticTests[index][0]; |
+ SkDQuad quad1; |
+ quad1.debugSet(q1.fPts); |
SkASSERT(ValidQuad(quad1)); |
- const SkDQuad& quad2 = quadraticTests[index][1]; |
+ const QuadPts& q2 = quadraticTests[index][1]; |
+ SkDQuad quad2; |
+ quad2.debugSet(q2.fPts); |
SkASSERT(ValidQuad(quad2)); |
SkReduceOrder reduce1, reduce2; |
int order1 = reduce1.reduce(quad1); |
@@ -52,7 +56,7 @@ static void standardTestCases(skiatest::Reporter* reporter) { |
} |
} |
-static const SkDQuad testSet[] = { |
+static const QuadPts testSet[] = { |
{{{-0.001019871095195412636, -0.008523519150912761688}, {-0.005396408028900623322, -0.005396373569965362549}, {-0.02855382487177848816, -0.02855364233255386353}}}, |
{{{-0.004567248281091451645, -0.01482933573424816132}, {-0.01142475008964538574, -0.01140109263360500336}, {-0.02852955088019371033, -0.02847047336399555206}}}, |
@@ -326,9 +330,13 @@ static const SkDQuad testSet[] = { |
const size_t testSetCount = SK_ARRAY_COUNT(testSet); |
static void oneOffTest1(skiatest::Reporter* reporter, size_t outer, size_t inner) { |
- const SkDQuad& quad1 = testSet[outer]; |
+ const QuadPts& q1 = testSet[outer]; |
+ SkDQuad quad1; |
+ quad1.debugSet(q1.fPts); |
SkASSERT(ValidQuad(quad1)); |
- const SkDQuad& quad2 = testSet[inner]; |
+ const QuadPts& q2 = testSet[inner]; |
+ SkDQuad quad2; |
+ quad2.debugSet(q2.fPts); |
SkASSERT(ValidQuad(quad2)); |
SkIntersections intersections; |
intersections.intersect(quad1, quad2); |
@@ -358,7 +366,7 @@ static void oneOffTests(skiatest::Reporter* reporter) { |
} |
} |
-static const SkDQuad coincidentTestSet[] = { |
+static const QuadPts coincidentTestSet[] = { |
{{{4914.9990234375, 1523}, {4942.75146484375, 1523}, {4962.375, 1542.6239013671875}}}, |
{{{4962.3759765625, 1542.6239013671875}, {4942.75244140625, 1523}, {4915, 1523}}}, |
#if 0 |
@@ -374,9 +382,13 @@ static const SkDQuad coincidentTestSet[] = { |
static const int coincidentTestSetCount = (int) SK_ARRAY_COUNT(coincidentTestSet); |
static void coincidentTestOne(skiatest::Reporter* reporter, int test1, int test2) { |
- const SkDQuad& quad1 = coincidentTestSet[test1]; |
+ const QuadPts& q1 = coincidentTestSet[test1]; |
+ SkDQuad quad1; |
+ quad1.debugSet(q1.fPts); |
SkASSERT(ValidQuad(quad1)); |
- const SkDQuad& quad2 = coincidentTestSet[test2]; |
+ const QuadPts& q2 = coincidentTestSet[test2]; |
+ SkDQuad quad2; |
+ quad2.debugSet(q2.fPts); |
SkASSERT(ValidQuad(quad2)); |
SkIntersections intersections2; |
intersections2.intersect(quad1, quad2); |
@@ -398,9 +410,11 @@ static void coincidentTest(skiatest::Reporter* reporter) { |
} |
static void intersectionFinder(int test1, int test2) { |
- const SkDQuad& quad1 = testSet[test1]; |
- const SkDQuad& quad2 = testSet[test2]; |
- |
+ const QuadPts& q1 = testSet[test1]; |
+ const QuadPts& q2 = testSet[test2]; |
+ SkDQuad quad1, quad2; |
+ quad1.debugSet(q1.fPts); |
+ quad2.debugSet(q2.fPts); |
double t1Seed = 0.5; |
double t2Seed = 0.8; |
double t1Step = 0.1; |
@@ -521,8 +535,12 @@ DEF_TEST(PathOpsQuadBinaryProfile, reporter) { |
int outer = 0; |
int inner = outer + 1; |
do { |
- const SkDQuad& quad1 = testSet[outer]; |
- const SkDQuad& quad2 = testSet[inner]; |
+ const QuadPts& q1 = testSet[outer]; |
+ SkDQuad quad1; |
+ quad1.debugSet(q1.fPts); |
+ const QuadPts& q2 = testSet[inner]; |
+ SkDQuad quad2; |
+ quad2.debugSet(q2.fPts); |
(void) intersections.intersect(quad1, quad2); |
REPORTER_ASSERT(reporter, intersections.used() >= 0); // make sure code isn't tossed |
inner += 2; |
@@ -531,8 +549,11 @@ DEF_TEST(PathOpsQuadBinaryProfile, reporter) { |
} |
for (int x = 0; x < 100; ++x) { |
for (size_t test = 0; test < quadraticTests_count; ++test) { |
- const SkDQuad& quad1 = quadraticTests[test][0]; |
- const SkDQuad& quad2 = quadraticTests[test][1]; |
+ const QuadPts& q1 = quadraticTests[test][0]; |
+ const QuadPts& q2 = quadraticTests[test][1]; |
+ SkDQuad quad1, quad2; |
+ quad1.debugSet(q1.fPts); |
+ quad2.debugSet(q2.fPts); |
(void) intersections.intersect(quad1, quad2); |
REPORTER_ASSERT(reporter, intersections.used() >= 0); // make sure code isn't tossed |
} |