diff options
Diffstat (limited to 'tests/ImageFilterCacheTest.cpp')
-rw-r--r-- | tests/ImageFilterCacheTest.cpp | 28 |
1 files changed, 11 insertions, 17 deletions
diff --git a/tests/ImageFilterCacheTest.cpp b/tests/ImageFilterCacheTest.cpp index fe67925fda..95ade044bd 100644 --- a/tests/ImageFilterCacheTest.cpp +++ b/tests/ImageFilterCacheTest.cpp @@ -181,18 +181,6 @@ DEF_TEST(ImageFilterCache_ImageBackedRaster, reporter) { #include "GrContext.h" #include "GrResourceProvider.h" -static GrTexture* create_texture(GrContext* context) { - SkBitmap srcBM = create_bm(); - - GrSurfaceDesc desc; - desc.fConfig = kRGBA_8888_GrPixelConfig; - desc.fFlags = kNone_GrSurfaceFlags; - desc.fWidth = kFullSize; - desc.fHeight = kFullSize; - - return context->resourceProvider()->createTexture(desc, SkBudgeted::kNo, srcBM.getPixels(), 0); -} - static sk_sp<GrTextureProxy> create_proxy(GrResourceProvider* resourceProvider) { SkBitmap srcBM = create_bm(); @@ -208,10 +196,16 @@ static sk_sp<GrTextureProxy> create_proxy(GrResourceProvider* resourceProvider) srcBM.rowBytes()); } - DEF_GPUTEST_FOR_RENDERING_CONTEXTS(ImageFilterCache_ImageBackedGPU, reporter, ctxInfo) { - sk_sp<GrTexture> srcTexture(create_texture(ctxInfo.grContext())); - if (!srcTexture) { + GrContext* context = ctxInfo.grContext(); + + sk_sp<GrTextureProxy> srcProxy(create_proxy(context->resourceProvider())); + if (!srcProxy) { + return; + } + + GrTexture* tex = srcProxy->instantiate(context->resourceProvider()); + if (!tex) { return; } @@ -222,8 +216,8 @@ DEF_GPUTEST_FOR_RENDERING_CONTEXTS(ImageFilterCache_ImageBackedGPU, reporter, ct backendDesc.fWidth = kFullSize; backendDesc.fHeight = kFullSize; backendDesc.fSampleCnt = 0; - backendDesc.fTextureHandle = srcTexture->getTextureHandle(); - sk_sp<SkImage> srcImage(SkImage::MakeFromTexture(ctxInfo.grContext(), + backendDesc.fTextureHandle = tex->getTextureHandle(); + sk_sp<SkImage> srcImage(SkImage::MakeFromTexture(context, backendDesc, kPremul_SkAlphaType)); if (!srcImage) { |