Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(107)

Unified Diff: tests/PathOpsBuilderTest.cpp

Issue 2100963002: Add a failing test for issue 623072. (Closed) Base URL: https://chromium.googlesource.com/skia.git@master
Patch Set: Created 4 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: tests/PathOpsBuilderTest.cpp
diff --git a/tests/PathOpsBuilderTest.cpp b/tests/PathOpsBuilderTest.cpp
index 8547d850484262175c4424f795d67417349089f3..e658cf49e748fd75333ae7f8e18dc86936b2775f 100644
--- a/tests/PathOpsBuilderTest.cpp
+++ b/tests/PathOpsBuilderTest.cpp
@@ -344,3 +344,63 @@ DEF_TEST(SkOpBuilder618991, reporter) {
builder.add(path1, SkPathOp::kUnion_SkPathOp);
builder.resolve(&path0);
}
+
+DEF_TEST(SkOpBuilder623072, reporter) {
+ SkOpBuilder builder;
+ SkPath path;
+
+ builder.add(path, SkPathOp::kDifference_SkPathOp);
+
+ builder.add(path, SkPathOp::kIntersect_SkPathOp);
+
+ path.moveTo(0, 0);
+ path.lineTo(1.50606e+13f, 1.43144e-13f);
+ path.conicTo(-2.04889f, 3.04132e+35f, 9.69467e-12f, 1.5954e+13f, 4.87407e+16f);
+ path.lineTo(1.43144e-13f, 4.7323e-37f);
+ path.conicTo(3.04132e+35f, 5.77848e-19f, 4.61198e-19f, 1.64987e+07f, 121589);
+ path.lineTo(0, 0);
+ path.close();
+ path.moveTo(0, 0);
+ path.quadTo(-1.2117e+19f, 0.00105459f, -8.10388e-33f, 0.00148185f);
+ path.lineTo(0, 0);
+ path.close();
+ builder.add(path, SkPathOp::kIntersect_SkPathOp);
+ path.reset();
+
+ path.moveTo(0, 0);
+ path.lineTo(300.343f, 2.36623e-15f);
+ builder.add(path, SkPathOp::kUnion_SkPathOp);
+ path.reset();
+
+ path.moveTo(5.78315e-19f, 4.7323e-37f);
+ path.lineTo(1.51217e-18f, -3.85756e-23f);
+ path.quadTo(9.2831e-15f, -1.85547e+23f, 1.79534e-28f, 2.36623e-15f);
+ builder.add(path, SkPathOp::kDifference_SkPathOp);
+ path.reset();
+
+ builder.add(path, SkPathOp::kDifference_SkPathOp);
+
+ builder.add(path, SkPathOp::kDifference_SkPathOp);
+
+ builder.add(path, SkPathOp::kDifference_SkPathOp);
+
+ path.moveTo(0, 0);
+ path.conicTo(2.49282e-13f, 4.78968e-34f, 1.99397e+36f, -4.84373e+27f, 3.41283e-20f);
+ path.lineTo(1.99397e+36f, -4.84373e+27f);
+ path.lineTo(9.4495e-15f, 0.000617492f);
+ path.lineTo(0, 0);
+ path.close();
+ path.moveTo(0, 0);
+ path.quadTo(-8.10388e-33f, 0.00148185f, 2.25206e-21f, 5.54035e+21f);
+ path.moveTo(3.71183e-14f, 3.13044e-13f);
+ path.quadTo(2.22225e-15f, 0.000615227f, -1.2117e+19f, -8.43217e-33f);
+ path.quadTo(1.11596e-05f, 1.35329e-19f, 2.98959e-15f, 2.8457e+15f);
+ path.quadTo(2.22225e-15f, 0.000615227f, -1.2117e+19f, 0.00105459f);
+ path.cubicTo(1.11598e-05f, 1.35327e-19f, 2.00186e+11f, 2.9896e-15f, 2.8457e+15f, 5.64327e+10f);
+ path.quadTo(-2.56957e+15f, 1.15242e-14f, -6.4318e-08f, 0.000712428f);
+ path.lineTo(-140445, 7.82294e-14f);
+ builder.add(path, SkPathOp::kIntersect_SkPathOp);
+
+ SkPath result;
+ builder.resolve(&result);
+}
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698