diff options
author | Brian Salomon <bsalomon@google.com> | 2018-02-02 13:51:50 -0500 |
---|---|---|
committer | Skia Commit-Bot <skia-commit-bot@chromium.org> | 2018-02-02 23:37:59 +0000 |
commit | 5bb82cbecd740d21b92e8d2944280ab6eb6af7a6 (patch) | |
tree | 8171a4ea5d7f72dbba276b58a89a7e115066f24c /tests/ImageTest.cpp | |
parent | 1e5ef4f81ca18cd9448426891cda5120cea51de8 (diff) |
Revert "Revert "Revert "Revert "Redefine the meaning of sample counts in GPU backend.""""
This reverts commit 18c52a7b52211de5d0dcd86dc048adef758c6c75.
Also relands "More sample count cleanup:" and "Add new GrContext queries for imagability, surfacability, and max sample count of color types"
Bug: skia:
Change-Id: I4028105a3a1f16ce3944e134619eb6245af6b947
Reviewed-on: https://skia-review.googlesource.com/102940
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
Diffstat (limited to 'tests/ImageTest.cpp')
-rw-r--r-- | tests/ImageTest.cpp | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/tests/ImageTest.cpp b/tests/ImageTest.cpp index a1472d42dd..9a89000748 100644 --- a/tests/ImageTest.cpp +++ b/tests/ImageTest.cpp @@ -38,6 +38,7 @@ #include "GrResourceCache.h" #include "GrTest.h" #include "GrTexture.h" +#include "SkGr.h" #endif using namespace sk_gpu_test; @@ -486,6 +487,29 @@ DEF_GPUTEST_FOR_GL_RENDERING_CONTEXTS(SkImage_drawAbandonedGpuImage, reporter, c surface->getCanvas()->drawImage(image, 0, 0); } +DEF_GPUTEST_FOR_RENDERING_CONTEXTS(GrContext_colorTypeSupportedAsImage, reporter, ctxInfo) { + for (int ct = 0; ct < kLastEnum_SkColorType; ++ct) { + static constexpr int kSize = 10; + SkColorType colorType = static_cast<SkColorType>(ct); + bool can = ctxInfo.grContext()->colorTypeSupportedAsImage(colorType); + auto* gpu = ctxInfo.grContext()->contextPriv().getGpu(); + GrBackendTexture backendTex = gpu->createTestingOnlyBackendTexture( + nullptr, kSize, kSize, colorType, false, GrMipMapped::kNo); + auto img = + SkImage::MakeFromTexture(ctxInfo.grContext(), backendTex, kTopLeft_GrSurfaceOrigin, + colorType, kOpaque_SkAlphaType, nullptr); + REPORTER_ASSERT(reporter, can == SkToBool(img), + "%d, colorTypeSupportedAsImage:%d, actual:%d, ct:%d", can, SkToBool(img), + colorType); + + img.reset(); + ctxInfo.grContext()->flush(); + if (backendTex.isValid()) { + gpu->deleteTestingOnlyBackendTexture(&backendTex); + } + } +} + #endif class EmptyGenerator : public SkImageGenerator { |