diff options
Diffstat (limited to 'tests/PathOpsOpTest.cpp')
-rw-r--r-- | tests/PathOpsOpTest.cpp | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/tests/PathOpsOpTest.cpp b/tests/PathOpsOpTest.cpp index 8ff0079dd4..9bb3a0fbb6 100644 --- a/tests/PathOpsOpTest.cpp +++ b/tests/PathOpsOpTest.cpp @@ -5375,6 +5375,26 @@ static void cubicOp158(skiatest::Reporter* reporter, const char* filename) { testPathOp(reporter, path, pathB, kDifference_SkPathOp, filename); } +static void loop17(skiatest::Reporter* reporter, const char* filename) { + SkPath path, pathB; + path.moveTo(1, 2); + path.cubicTo(0, 3, -0.333333343f, 3.33333325f, 0.833333373f, 3.5f); + path.close(); + pathB.moveTo(0, 3); + pathB.cubicTo(-0.333333343f, 3.33333325f, 0.833333373f, 3.5f, 1, 2); + pathB.close(); + testPathOp(reporter, path, pathB, kIntersect_SkPathOp, filename); +} + +static void circlesOp4(skiatest::Reporter* reporter, const char* filename) { + SkPath path, pathB; + path.setFillType(SkPath::kWinding_FillType); + path.addCircle(0, 1, 5, SkPath::kCW_Direction); + pathB.setFillType(SkPath::kWinding_FillType); + pathB.addCircle(0, 1, 0, SkPath::kCW_Direction); + testPathOp(reporter, path, pathB, kDifference_SkPathOp, filename); +} + static void (*skipTest)(skiatest::Reporter* , const char* filename) = 0; static void (*firstTest)(skiatest::Reporter* , const char* filename) = 0; static void (*stopTest)(skiatest::Reporter* , const char* filename) = 0; @@ -5382,6 +5402,8 @@ static void (*stopTest)(skiatest::Reporter* , const char* filename) = 0; #define TEST(name) { name, #name } static struct TestDesc tests[] = { + TEST(circlesOp4), + TEST(loop17), TEST(cubicOp158), TEST(loops_i1), TEST(loops_i2), |