Chromium Code Reviews| Index: tests/CanvasTest.cpp |
| diff --git a/tests/CanvasTest.cpp b/tests/CanvasTest.cpp |
| index 70c2c04ffabf511239239fe8fe3cf91ab78582af..d52741c94788d3586926a5494bc703c1b6d5f0ba 100644 |
| --- a/tests/CanvasTest.cpp |
| +++ b/tests/CanvasTest.cpp |
| @@ -779,6 +779,45 @@ DEF_TEST(Canvas_ClipEmptyPath, reporter) { |
| canvas.restore(); |
| } |
|
robertphillips
2016/07/11 19:24:52
My suggestion here is to ditch the SkCanvasDrawDep
vjiaoblack
2016/07/11 19:48:13
Done.
|
| +class SkCanvasDrawDepthTester { |
| +public: |
|
robertphillips
2016/07/11 19:24:53
kCanvasWidth & kCanvasHeight
Also, these don't ap
vjiaoblack
2016/07/11 19:48:13
Done.
|
| + const static int canvasWidth = 100; |
| + const static int canvasHeight = 100; |
| + |
| + SkCanvasDrawDepthTester(skiatest::Reporter* reporter) { |
|
robertphillips
2016/07/11 19:24:53
Don't need "this->" here
vjiaoblack
2016/07/11 19:48:13
Done.
|
| + this->fReporter = reporter; |
| + } |
| + |
| + void runTests() { |
|
robertphillips
2016/07/11 19:24:53
testUpdateDepth. The '_' form is for static local
vjiaoblack
2016/07/11 19:48:13
Done.
|
| + this->test_updatedepth(this->fReporter); |
| + } |
| + |
| +private: |
| + skiatest::Reporter* fReporter; |
| + |
| + void test_updatedepth(skiatest::Reporter* reporter) { |
|
robertphillips
2016/07/11 19:24:52
I don't know what recording into a picture is givi
vjiaoblack
2016/07/11 19:48:13
Done.
|
| + // set some depths (with picture enabled), then check them as they get set |
| + SkPictureRecorder recorder; |
| + SkCanvas* canvas; |
| + sk_sp<SkPicture> picture; |
| + |
|
robertphillips
2016/07/11 19:24:52
You could use kCanvasWidth & kCanvasHeight here in
vjiaoblack
2016/07/11 19:48:13
Done.
|
| + canvas = recorder.beginRecording(SkRect::MakeIWH(100, 100)); |
| + |
| + canvas->setZ(-10); |
|
robertphillips
2016/07/11 19:24:53
REPORTER_ASSERT(reporter, canvas->getZ() == -10);
vjiaoblack
2016/07/11 19:48:13
Done.
|
| + canvas->save(); |
| + canvas->setZ(10); |
| + REPORTER_ASSERT(reporter, canvas->getZ() == 10); |
| + |
| + canvas->restore(); |
| + REPORTER_ASSERT(reporter, canvas->getZ() == -10); |
| + |
| + canvas->setZ(3.14); |
| + REPORTER_ASSERT(reporter, canvas->getZ() == 3.14); |
| + |
| + picture = recorder.finishRecordingAsPicture(); |
| + } |
| +}; |
| + |
| namespace { |
| class MockFilterCanvas : public SkPaintFilterCanvas { |
| @@ -812,4 +851,7 @@ DEF_TEST(PaintFilterCanvas_ConsistentState, reporter) { |
| REPORTER_ASSERT(reporter, canvas.getTotalMatrix() == filterCanvas.getTotalMatrix()); |
| REPORTER_ASSERT(reporter, canvas.getClipBounds(&clip1) == filterCanvas.getClipBounds(&clip2)); |
| REPORTER_ASSERT(reporter, clip1 == clip2); |
| + |
| + SkCanvasDrawDepthTester depthTester(reporter); |
| + depthTester.runTests(); |
| } |