Update createWrappedRenderTargetProxy with BackendTex to use lazy proxies

Bug: skia:
Change-Id: I5a5519aebe544cb5ef62e9847c3fa4e218f24aea
Reviewed-on: https://skia-review.googlesource.com/108561
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
diff --git a/tests/ProxyTest.cpp b/tests/ProxyTest.cpp
index 3a46438..20d721b 100644
--- a/tests/ProxyTest.cpp
+++ b/tests/ProxyTest.cpp
@@ -206,6 +206,7 @@
                 }
 
                 // External on-screen render target.
+                // Tests createWrappedRenderTargetProxy with a GrBackendRenderTarget
                 {
                     GrGLFramebufferInfo fboInfo;
                     fboInfo.fFBOID = 0;
@@ -222,16 +223,17 @@
                                        supportedNumSamples, SkBackingFit::kExact, 0);
                 }
 
+                // Tests createWrappedRenderTargetProxy with a GrBackendTexture
                 {
                     GrBackendTexture backendTex =
                             gpu->createTestingOnlyBackendTexture(nullptr, kWidthHeight,
                                                                  kWidthHeight, colorType, true,
                                                                  GrMipMapped::kNo);
-
                     sk_sp<GrSurfaceProxy> sProxy =
-                            proxyProvider->createWrappedTextureProxy(backendTex, origin,
-                                                                     supportedNumSamples);
+                            proxyProvider->createWrappedRenderTargetProxy(backendTex, origin,
+                                                                          supportedNumSamples);
                     if (!sProxy) {
+                        gpu->deleteTestingOnlyBackendTexture(&backendTex);
                         continue;  // This can fail on Mesa
                     }
 
@@ -246,6 +248,33 @@
                     gpu->deleteTestingOnlyBackendTexture(&backendTex);
                 }
 
+                // Tests createWrappedTextureProxy that is only renderable
+                {
+                    GrBackendTexture backendTex =
+                            gpu->createTestingOnlyBackendTexture(nullptr, kWidthHeight,
+                                                                 kWidthHeight, colorType, true,
+                                                                 GrMipMapped::kNo);
+
+                    sk_sp<GrSurfaceProxy> sProxy =
+                            proxyProvider->createWrappedTextureProxy(backendTex, origin,
+                                                                     supportedNumSamples);
+                    if (!sProxy) {
+                        gpu->deleteTestingOnlyBackendTexture(&backendTex);
+                        continue;  // This can fail on Mesa
+                    }
+
+                    check_surface(reporter, sProxy.get(), origin,
+                                  kWidthHeight, kWidthHeight,
+                                  backendTex.testingOnly_getPixelConfig(), SkBudgeted::kNo);
+                    check_rendertarget(reporter, caps, resourceProvider,
+                                       sProxy->asRenderTargetProxy(),
+                                       supportedNumSamples, SkBackingFit::kExact,
+                                       caps.maxWindowRectangles());
+
+                    gpu->deleteTestingOnlyBackendTexture(&backendTex);
+                }
+
+                // Tests createWrappedTextureProxy that is only textureable
                 {
                     // Internal offscreen texture
                     GrBackendTexture backendTex =
@@ -258,6 +287,7 @@
                                                                      kBorrow_GrWrapOwnership,
                                                                      nullptr, nullptr);
                     if (!sProxy) {
+                        gpu->deleteTestingOnlyBackendTexture(&backendTex);
                         continue;
                     }