diff options
Diffstat (limited to 'tests')
-rw-r--r-- | tests/PathOpsInverseTest.cpp | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/tests/PathOpsInverseTest.cpp b/tests/PathOpsInverseTest.cpp new file mode 100644 index 0000000000..6d6e0e3ef8 --- /dev/null +++ b/tests/PathOpsInverseTest.cpp @@ -0,0 +1,34 @@ +/* + * Copyright 2013 Google Inc. + * + * Use of this source code is governed by a BSD-style license that can be + * found in the LICENSE file. + */ +#include "PathOpsExtendedTest.h" + +static void PathOpsInverseTest(skiatest::Reporter* reporter) { + SkPath one, two; + for (int op = kDifference_PathOp; op <= kReverseDifference_PathOp; ++op) { + for (int oneFill = SkPath::kWinding_FillType; oneFill <= SkPath::kInverseEvenOdd_FillType; + ++oneFill) { + for (int oneDir = SkPath::kCW_Direction; oneDir != SkPath::kCCW_Direction; ++oneDir) { + one.reset(); + one.setFillType((SkPath::FillType) oneFill); + one.addRect(0, 0, 6, 6, (SkPath::Direction) oneDir); + for (int twoFill = SkPath::kWinding_FillType; + twoFill <= SkPath::kInverseEvenOdd_FillType; ++twoFill) { + for (int twoDir = SkPath::kCW_Direction; twoDir != SkPath::kCCW_Direction; + ++twoDir) { + two.reset(); + two.setFillType((SkPath::FillType) twoFill); + two.addRect(3, 3, 9, 9, (SkPath::Direction) twoDir); + testPathOp(reporter, one, two, (SkPathOp) op); + } + } + } + } + } +} + +#include "TestClassDef.h" +DEFINE_TESTCLASS_SHORT(PathOpsInverseTest) |