From fda880710c28a1b0ff0c8c88f90a7659a7ce553f Mon Sep 17 00:00:00 2001 From: bsalomon Date: Mon, 11 Apr 2016 14:40:50 -0700 Subject: [PATCH] Convert some unit tests from running on GL contexts to running on all contexts GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1873313002 Review URL: https://codereview.chromium.org/1873313002 --- dm/DM.cpp | 2 +- tests/GpuColorFilterTest.cpp | 2 +- tests/GrDrawTargetTest.cpp | 2 +- tests/TessellatingPathRendererTests.cpp | 2 +- tests/Test.h | 22 ++++++++++++---------- 5 files changed, 16 insertions(+), 14 deletions(-) diff --git a/dm/DM.cpp b/dm/DM.cpp index fd06bc0660..388546d66f 100644 --- a/dm/DM.cpp +++ b/dm/DM.cpp @@ -1442,7 +1442,7 @@ void RunWithGPUTestContexts(GrContextTestFn* test, GrContextTypeFilterFn* contex for (int typeInt = 0; typeInt < GrContextFactory::kContextTypeCnt; ++typeInt) { GrContextFactory::ContextType contextType = (GrContextFactory::ContextType) typeInt; ContextInfo ctxInfo = factory->getContextInfo(contextType); - if (!(*contextTypeFilter)(contextType)) { + if (contextTypeFilter && !(*contextTypeFilter)(contextType)) { continue; } // Use "native" instead of explicitly trying OpenGL and OpenGL ES. Do not use GLES on, diff --git a/tests/GpuColorFilterTest.cpp b/tests/GpuColorFilterTest.cpp index 558cac3633..1788770e5b 100644 --- a/tests/GpuColorFilterTest.cpp +++ b/tests/GpuColorFilterTest.cpp @@ -32,7 +32,7 @@ static GrColor filterColor(const GrColor& color, uint32_t flags) { return color & mask; } -DEF_GPUTEST_FOR_ALL_GL_CONTEXTS(GpuColorFilter, reporter, ctxInfo) { +DEF_GPUTEST_FOR_ALL_CONTEXTS(GpuColorFilter, reporter, ctxInfo) { struct GetConstantComponentTestCase { // "Shape drawn with" uint32_t inputComponents; // "rgb of", "red of", "alpha of", ... diff --git a/tests/GrDrawTargetTest.cpp b/tests/GrDrawTargetTest.cpp index fdcd52408d..4f927091de 100644 --- a/tests/GrDrawTargetTest.cpp +++ b/tests/GrDrawTargetTest.cpp @@ -12,7 +12,7 @@ #include "GrContext.h" #include "GrGpu.h" -DEF_GPUTEST_FOR_ALL_GL_CONTEXTS(GrDrawTargetPrint, reporter, ctxInfo) { +DEF_GPUTEST_FOR_ALL_CONTEXTS(GrDrawTargetPrint, reporter, ctxInfo) { // This used to assert. SkString result = ctxInfo.fGrContext->caps()->dump(); SkASSERT(!result.isEmpty()); diff --git a/tests/TessellatingPathRendererTests.cpp b/tests/TessellatingPathRendererTests.cpp index b53075be8e..32973ee1c8 100644 --- a/tests/TessellatingPathRendererTests.cpp +++ b/tests/TessellatingPathRendererTests.cpp @@ -252,7 +252,7 @@ static void test_path(GrDrawTarget* dt, GrRenderTarget* rt, GrResourceProvider* tess.drawPath(args); } -DEF_GPUTEST_FOR_ALL_GL_CONTEXTS(TessellatingPathRendererTests, reporter, ctxInfo) { +DEF_GPUTEST_FOR_ALL_CONTEXTS(TessellatingPathRendererTests, reporter, ctxInfo) { GrSurfaceDesc desc; desc.fFlags = kRenderTarget_GrSurfaceFlag; desc.fWidth = 800; diff --git a/tests/Test.h b/tests/Test.h index b2cb180353..1363f8c080 100644 --- a/tests/Test.h +++ b/tests/Test.h @@ -156,18 +156,20 @@ private: skiatest::Test(#name, true, test_##name)); \ void test_##name(skiatest::Reporter* reporter, sk_gpu_test::GrContextFactory* factory) -#define DEF_GPUTEST_FOR_CONTEXTS(name, contexts, reporter, context_info) \ - static void test_##name(skiatest::Reporter*, \ - const sk_gpu_test::ContextInfo& context_info); \ - static void test_gpu_contexts_##name(skiatest::Reporter* reporter, \ - sk_gpu_test::GrContextFactory* factory) { \ - skiatest::RunWithGPUTestContexts(test_##name, contexts, reporter, factory); \ - } \ - skiatest::TestRegistry name##TestRegistry( \ - skiatest::Test(#name, true, test_gpu_contexts_##name)); \ - void test_##name(skiatest::Reporter* reporter, \ +#define DEF_GPUTEST_FOR_CONTEXTS(name, context_filter, reporter, context_info) \ + static void test_##name(skiatest::Reporter*, \ + const sk_gpu_test::ContextInfo& context_info); \ + static void test_gpu_contexts_##name(skiatest::Reporter* reporter, \ + sk_gpu_test::GrContextFactory* factory) { \ + skiatest::RunWithGPUTestContexts(test_##name, context_filter, reporter, factory); \ + } \ + skiatest::TestRegistry name##TestRegistry( \ + skiatest::Test(#name, true, test_gpu_contexts_##name)); \ + void test_##name(skiatest::Reporter* reporter, \ const sk_gpu_test::ContextInfo& context_info) +#define DEF_GPUTEST_FOR_ALL_CONTEXTS(name, reporter, context_info) \ + DEF_GPUTEST_FOR_CONTEXTS(name, nullptr, reporter, context_info) #define DEF_GPUTEST_FOR_ALL_GL_CONTEXTS(name, reporter, context_info) \ DEF_GPUTEST_FOR_CONTEXTS(name, &skiatest::IsGLContextType, reporter, context_info) #define DEF_GPUTEST_FOR_GL_RENDERING_CONTEXTS(name, reporter, context_info) \