| Index: tests/TileGridTest.cpp
|
| ===================================================================
|
| --- tests/TileGridTest.cpp (revision 8533)
|
| +++ tests/TileGridTest.cpp (working copy)
|
| @@ -113,6 +113,39 @@
|
| REPORTER_ASSERT(reporter, 1 == mockCanvas.fRects.count());
|
| REPORTER_ASSERT(reporter, rect2 == mockCanvas.fRects[0]);
|
| }
|
| + // Out of bounds queries, snap to border tiles
|
| + {
|
| + SkDevice device(store);
|
| + MockCanvas mockCanvas(&device);
|
| + mockCanvas.translate(SkFloatToScalar(2.0f), SkFloatToScalar(0.0f));
|
| + picture.draw(&mockCanvas);
|
| + REPORTER_ASSERT(reporter, 1 == mockCanvas.fRects.count());
|
| + REPORTER_ASSERT(reporter, rect1 == mockCanvas.fRects[0]);
|
| + }
|
| + {
|
| + SkDevice device(store);
|
| + MockCanvas mockCanvas(&device);
|
| + mockCanvas.translate(SkFloatToScalar(0.0f), SkFloatToScalar(2.0f));
|
| + picture.draw(&mockCanvas);
|
| + REPORTER_ASSERT(reporter, 1 == mockCanvas.fRects.count());
|
| + REPORTER_ASSERT(reporter, rect1 == mockCanvas.fRects[0]);
|
| + }
|
| + {
|
| + SkDevice device(store);
|
| + MockCanvas mockCanvas(&device);
|
| + mockCanvas.translate(SkFloatToScalar(-22.0f), SkFloatToScalar(-16.0f));
|
| + picture.draw(&mockCanvas);
|
| + REPORTER_ASSERT(reporter, 1 == mockCanvas.fRects.count());
|
| + REPORTER_ASSERT(reporter, rect2 == mockCanvas.fRects[0]);
|
| + }
|
| + {
|
| + SkDevice device(store);
|
| + MockCanvas mockCanvas(&device);
|
| + mockCanvas.translate(SkFloatToScalar(-16.0f), SkFloatToScalar(-22.0f));
|
| + picture.draw(&mockCanvas);
|
| + REPORTER_ASSERT(reporter, 1 == mockCanvas.fRects.count());
|
| + REPORTER_ASSERT(reporter, rect2 == mockCanvas.fRects[0]);
|
| + }
|
| }
|
|
|
| static void TestOverlapOffsetQueryAlignment(skiatest::Reporter* reporter) {
|
| @@ -215,7 +248,6 @@
|
| verifyTileHits(reporter, SkIRect::MakeXYWH(9, 9, 1, 1), kAll_Tile, 1);
|
| verifyTileHits(reporter, SkIRect::MakeXYWH(10, 10, 1, 1), kBottomRight_Tile, 1);
|
| verifyTileHits(reporter, SkIRect::MakeXYWH(17, 17, 1, 1), kBottomRight_Tile, 1);
|
| - verifyTileHits(reporter, SkIRect::MakeXYWH(18, 18, 1, 1), 0, 1);
|
|
|
| // BBoxes that overlap tiles
|
| verifyTileHits(reporter, SkIRect::MakeXYWH(5, 5, 10, 1), kTopLeft_Tile | kTopRight_Tile);
|
|
|