aboutsummaryrefslogtreecommitdiffhomepage
path: root/tests/RenderTargetContextTest.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tests/RenderTargetContextTest.cpp')
-rw-r--r--tests/RenderTargetContextTest.cpp25
1 files changed, 19 insertions, 6 deletions
diff --git a/tests/RenderTargetContextTest.cpp b/tests/RenderTargetContextTest.cpp
index dbb41851c6..760b258d07 100644
--- a/tests/RenderTargetContextTest.cpp
+++ b/tests/RenderTargetContextTest.cpp
@@ -20,10 +20,17 @@
static const int kSize = 64;
-static sk_sp<GrRenderTargetContext> get_rtc(GrContext* ctx) {
- return ctx->makeDeferredRenderTargetContext(SkBackingFit::kExact,
- kSize, kSize,
- kRGBA_8888_GrPixelConfig, nullptr);
+static sk_sp<GrRenderTargetContext> get_rtc(GrContext* ctx, bool wrapped) {
+
+ if (wrapped) {
+ return ctx->makeRenderTargetContext(SkBackingFit::kExact,
+ kSize, kSize,
+ kRGBA_8888_GrPixelConfig, nullptr);
+ } else {
+ return ctx->makeDeferredRenderTargetContext(SkBackingFit::kExact,
+ kSize, kSize,
+ kRGBA_8888_GrPixelConfig, nullptr);
+ }
}
static void check_is_wrapped_status(skiatest::Reporter* reporter,
@@ -40,10 +47,16 @@ static void check_is_wrapped_status(skiatest::Reporter* reporter,
DEF_GPUTEST_FOR_RENDERING_CONTEXTS(RenderTargetContextTest, reporter, ctxInfo) {
GrContext* ctx = ctxInfo.grContext();
+ // A wrapped rtCtx's textureProxy is also wrapped
+ {
+ sk_sp<GrRenderTargetContext> rtCtx(get_rtc(ctx, true));
+ check_is_wrapped_status(reporter, rtCtx.get(), true);
+ }
+
// Calling instantiate on a GrRenderTargetContext's textureProxy also instantiates the
// GrRenderTargetContext
{
- sk_sp<GrRenderTargetContext> rtCtx(get_rtc(ctx));
+ sk_sp<GrRenderTargetContext> rtCtx(get_rtc(ctx, false));
check_is_wrapped_status(reporter, rtCtx.get(), false);
@@ -58,7 +71,7 @@ DEF_GPUTEST_FOR_RENDERING_CONTEXTS(RenderTargetContextTest, reporter, ctxInfo) {
// readPixels switches a deferred rtCtx to wrapped
{
- sk_sp<GrRenderTargetContext> rtCtx(get_rtc(ctx));
+ sk_sp<GrRenderTargetContext> rtCtx(get_rtc(ctx, false));
check_is_wrapped_status(reporter, rtCtx.get(), false);