diff options
Diffstat (limited to 'tests/GpuSampleLocationsTest.cpp')
-rw-r--r-- | tests/GpuSampleLocationsTest.cpp | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/tests/GpuSampleLocationsTest.cpp b/tests/GpuSampleLocationsTest.cpp index 26d7e70148..75fa6fcf65 100644 --- a/tests/GpuSampleLocationsTest.cpp +++ b/tests/GpuSampleLocationsTest.cpp @@ -91,8 +91,17 @@ public: virtual ~TestSampleLocationsInterface() {} }; -static sk_sp<GrPipeline> construct_dummy_pipeline(GrRenderTargetContext* dc) { - return sk_sp<GrPipeline>(new GrPipeline(dc->accessRenderTarget(), SkBlendMode::kSrcOver)); +static void construct_dummy_pipeline(GrRenderTargetContext* dc, GrPipeline* pipeline) { + GrPipelineBuilder dummyBuilder(GrPaint(), GrAAType::kNone); + GrScissorState dummyScissor; + GrWindowRectsState dummyWindows; + + GrPipeline::InitArgs args; + dummyBuilder.getPipelineInitArgs(&args); + args.fRenderTarget = dc->accessRenderTarget(); + args.fCaps = dc->caps(); + args.fDstTexture = GrXferProcessor::DstTexture(); + pipeline->init(args); } void assert_equal(skiatest::Reporter* reporter, const SamplePattern& pattern, @@ -137,10 +146,11 @@ void test_sampleLocations(skiatest::Reporter* reporter, TestSampleLocationsInter for (int i = 0; i < numTestPatterns; ++i) { testInterface->overrideSamplePattern(kTestPatterns[i]); for (GrRenderTargetContext* dc : {bottomUps[i].get(), topDowns[i].get()}) { - sk_sp<GrPipeline> dummyPipeline = construct_dummy_pipeline(dc); + GrPipeline dummyPipeline; + construct_dummy_pipeline(dc, &dummyPipeline); GrRenderTarget* rt = dc->accessRenderTarget(); assert_equal(reporter, kTestPatterns[i], - rt->renderTargetPriv().getMultisampleSpecs(*dummyPipeline), + rt->renderTargetPriv().getMultisampleSpecs(dummyPipeline), kBottomLeft_GrSurfaceOrigin == rt->origin()); } } |