| Index: tests/PathTest.cpp
|
| diff --git a/tests/PathTest.cpp b/tests/PathTest.cpp
|
| index 964b7e130c3f22d0495e4632fc1cdb129e13cbf0..b78b343ccc6b3fe32393a6d73045340bcd066c3c 100644
|
| --- a/tests/PathTest.cpp
|
| +++ b/tests/PathTest.cpp
|
| @@ -1857,7 +1857,7 @@ static void test_isRect(skiatest::Reporter* reporter) {
|
| REPORTER_ASSERT(reporter, !path1.isRect(NULL));
|
| }
|
|
|
| -static void test_isNestedRects(skiatest::Reporter* reporter) {
|
| +static void test_isNestedFillRects(skiatest::Reporter* reporter) {
|
| // passing tests (all moveTo / lineTo...
|
| SkPoint r1[] = {{0, 0}, {1, 0}, {1, 1}, {0, 1}}; // CW
|
| SkPoint r2[] = {{1, 0}, {1, 1}, {0, 1}, {0, 0}};
|
| @@ -1884,7 +1884,7 @@ static void test_isNestedRects(skiatest::Reporter* reporter) {
|
| SkPoint f7[] = {{0, 0}, {1, 0}, {1, 1}, {0, 2}}; // end overshoots
|
| SkPoint f8[] = {{0, 0}, {1, 0}, {1, 1}, {1, 0}}; // 'L'
|
|
|
| - // failing, no close
|
| + // success, no close is OK
|
| SkPoint c1[] = {{0, 0}, {1, 0}, {1, 1}, {0, 1}}; // close doesn't match
|
| SkPoint c2[] = {{0, 0}, {1, 0}, {1, 2}, {0, 2}, {0, 1}}; // ditto
|
|
|
| @@ -1919,8 +1919,8 @@ static void test_isNestedRects(skiatest::Reporter* reporter) {
|
| { f7, SK_ARRAY_COUNT(f7), SkPath::kUnknown_Direction, true, false },
|
| { f8, SK_ARRAY_COUNT(f8), SkPath::kUnknown_Direction, true, false },
|
|
|
| - { c1, SK_ARRAY_COUNT(c1), SkPath::kUnknown_Direction, false, false },
|
| - { c2, SK_ARRAY_COUNT(c2), SkPath::kUnknown_Direction, false, false },
|
| + { c1, SK_ARRAY_COUNT(c1), SkPath::kCW_Direction, false, true },
|
| + { c2, SK_ARRAY_COUNT(c2), SkPath::kCW_Direction, false, true },
|
| };
|
|
|
| const size_t testCount = SK_ARRAY_COUNT(tests);
|
| @@ -1941,7 +1941,8 @@ static void test_isNestedRects(skiatest::Reporter* reporter) {
|
| if (!rectFirst) {
|
| path.addRect(-1, -1, 2, 2, SkPath::kCCW_Direction);
|
| }
|
| - REPORTER_ASSERT(reporter, tests[testIndex].fIsNestedRect == path.isNestedRects(NULL));
|
| + REPORTER_ASSERT(reporter,
|
| + tests[testIndex].fIsNestedRect == path.isNestedFillRects(NULL));
|
| if (tests[testIndex].fIsNestedRect) {
|
| SkRect expected[2], computed[2];
|
| SkPath::Direction expectedDirs[2], computedDirs[2];
|
| @@ -1955,7 +1956,7 @@ static void test_isNestedRects(skiatest::Reporter* reporter) {
|
| expectedDirs[0] = SkPath::kCCW_Direction;
|
| }
|
| expectedDirs[1] = tests[testIndex].fDirection;
|
| - REPORTER_ASSERT(reporter, path.isNestedRects(computed, computedDirs));
|
| + REPORTER_ASSERT(reporter, path.isNestedFillRects(computed, computedDirs));
|
| REPORTER_ASSERT(reporter, expected[0] == computed[0]);
|
| REPORTER_ASSERT(reporter, expected[1] == computed[1]);
|
| REPORTER_ASSERT(reporter, expectedDirs[0] == computedDirs[0]);
|
| @@ -1977,7 +1978,7 @@ static void test_isNestedRects(skiatest::Reporter* reporter) {
|
| if (!rectFirst) {
|
| path1.addRect(-1, -1, 2, 2, SkPath::kCCW_Direction);
|
| }
|
| - REPORTER_ASSERT(reporter, !path1.isNestedRects(NULL));
|
| + REPORTER_ASSERT(reporter, !path1.isNestedFillRects(NULL));
|
|
|
| // fail, move in the middle
|
| path1.reset();
|
| @@ -1995,7 +1996,7 @@ static void test_isNestedRects(skiatest::Reporter* reporter) {
|
| if (!rectFirst) {
|
| path1.addRect(-1, -1, 2, 2, SkPath::kCCW_Direction);
|
| }
|
| - REPORTER_ASSERT(reporter, !path1.isNestedRects(NULL));
|
| + REPORTER_ASSERT(reporter, !path1.isNestedFillRects(NULL));
|
|
|
| // fail, move on the edge
|
| path1.reset();
|
| @@ -2010,7 +2011,7 @@ static void test_isNestedRects(skiatest::Reporter* reporter) {
|
| if (!rectFirst) {
|
| path1.addRect(-1, -1, 2, 2, SkPath::kCCW_Direction);
|
| }
|
| - REPORTER_ASSERT(reporter, !path1.isNestedRects(NULL));
|
| + REPORTER_ASSERT(reporter, !path1.isNestedFillRects(NULL));
|
|
|
| // fail, quad
|
| path1.reset();
|
| @@ -2028,7 +2029,7 @@ static void test_isNestedRects(skiatest::Reporter* reporter) {
|
| if (!rectFirst) {
|
| path1.addRect(-1, -1, 2, 2, SkPath::kCCW_Direction);
|
| }
|
| - REPORTER_ASSERT(reporter, !path1.isNestedRects(NULL));
|
| + REPORTER_ASSERT(reporter, !path1.isNestedFillRects(NULL));
|
|
|
| // fail, cubic
|
| path1.reset();
|
| @@ -2046,15 +2047,29 @@ static void test_isNestedRects(skiatest::Reporter* reporter) {
|
| if (!rectFirst) {
|
| path1.addRect(-1, -1, 2, 2, SkPath::kCCW_Direction);
|
| }
|
| - REPORTER_ASSERT(reporter, !path1.isNestedRects(NULL));
|
| + REPORTER_ASSERT(reporter, !path1.isNestedFillRects(NULL));
|
|
|
| // fail, not nested
|
| path1.reset();
|
| path1.addRect(1, 1, 3, 3, SkPath::kCW_Direction);
|
| path1.addRect(2, 2, 4, 4, SkPath::kCW_Direction);
|
| - REPORTER_ASSERT(reporter, !path1.isNestedRects(NULL));
|
| + REPORTER_ASSERT(reporter, !path1.isNestedFillRects(NULL));
|
| }
|
|
|
| + // pass, constructed explicitly from manually closed rects specified as moves/lines.
|
| + SkPath path;
|
| + path.moveTo(0, 0);
|
| + path.lineTo(10, 0);
|
| + path.lineTo(10, 10);
|
| + path.lineTo(0, 10);
|
| + path.lineTo(0, 0);
|
| + path.moveTo(1, 1);
|
| + path.lineTo(9, 1);
|
| + path.lineTo(9, 9);
|
| + path.lineTo(1, 9);
|
| + path.lineTo(1, 1);
|
| + REPORTER_ASSERT(reporter, path.isNestedFillRects(NULL));
|
| +
|
| // pass, stroke rect
|
| SkPath src, dst;
|
| src.addRect(1, 1, 7, 7, SkPath::kCW_Direction);
|
| @@ -2062,7 +2077,7 @@ static void test_isNestedRects(skiatest::Reporter* reporter) {
|
| strokePaint.setStyle(SkPaint::kStroke_Style);
|
| strokePaint.setStrokeWidth(2);
|
| strokePaint.getFillPath(src, &dst);
|
| - REPORTER_ASSERT(reporter, dst.isNestedRects(NULL));
|
| + REPORTER_ASSERT(reporter, dst.isNestedFillRects(NULL));
|
| }
|
|
|
| static void write_and_read_back(skiatest::Reporter* reporter,
|
| @@ -3719,7 +3734,7 @@ DEF_TEST(Paths, reporter) {
|
| test_operatorEqual(reporter);
|
| test_isLine(reporter);
|
| test_isRect(reporter);
|
| - test_isNestedRects(reporter);
|
| + test_isNestedFillRects(reporter);
|
| test_zero_length_paths(reporter);
|
| test_direction(reporter);
|
| test_convexity(reporter);
|
|
|