diff options
author | bsalomon <bsalomon@google.com> | 2016-04-06 14:02:39 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2016-04-06 14:02:39 -0700 |
commit | 758586c7f11a6b3529bd4a1c9b4e982a0d0b0582 (patch) | |
tree | 6a325080ce7cd2b6b1396eade7eaa3ff804b44e6 /tests/Test.h | |
parent | 9e65f9399ea9d50dca723ca23c10ec4145b54abe (diff) |
Make existing unit tests only run on GL contexts
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1869503002
Review URL: https://codereview.chromium.org/1869503002
Diffstat (limited to 'tests/Test.h')
-rw-r--r-- | tests/Test.h | 39 |
1 files changed, 19 insertions, 20 deletions
diff --git a/tests/Test.h b/tests/Test.h index de99fa53e0..ac68cccf95 100644 --- a/tests/Test.h +++ b/tests/Test.h @@ -77,22 +77,22 @@ typedef SkTRegistry<Test> TestRegistry; ... } */ -enum GPUTestContexts { - kNone_GPUTestContexts = 0, - kNull_GPUTestContexts = 1, - kDebug_GPUTestContexts = 1 << 1, - kNative_GPUTestContexts = 1 << 2, - kOther_GPUTestContexts = 1 << 3, // Other than native, used only for below. - kAllRendering_GPUTestContexts = kNative_GPUTestContexts | kOther_GPUTestContexts, - kAll_GPUTestContexts = kAllRendering_GPUTestContexts - | kNull_GPUTestContexts - | kDebug_GPUTestContexts -}; + +#if SK_SUPPORT_GPU +using GrContextFactoryContextType = sk_gpu_test::GrContextFactory::ContextType; +#else +using GrContextFactoryContextType = int; +#endif typedef void GrContextTestFn(Reporter*, const sk_gpu_test::ContextInfo&); +typedef bool GrContextTypeFilterFn(GrContextFactoryContextType); + +extern bool IsGLContextType(GrContextFactoryContextType); +extern bool IsRenderingGLContextType(GrContextFactoryContextType); +extern bool IsNullGLContextType(GrContextFactoryContextType); -void RunWithGPUTestContexts(GrContextTestFn* testFunction, GPUTestContexts contexts, - Reporter* reporter, sk_gpu_test::GrContextFactory* factory); +void RunWithGPUTestContexts(GrContextTestFn*, GrContextTypeFilterFn*, + Reporter*, sk_gpu_test::GrContextFactory*); /** Timer provides wall-clock duration since its creation. */ class Timer { @@ -167,13 +167,12 @@ private: 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, skiatest::kAll_GPUTestContexts, reporter, context_info) -#define DEF_GPUTEST_FOR_RENDERING_CONTEXTS(name, reporter, context_info) \ - DEF_GPUTEST_FOR_CONTEXTS(name, skiatest::kAllRendering_GPUTestContexts, reporter, \ - context_info) -#define DEF_GPUTEST_FOR_NULL_CONTEXT(name, reporter, context_info) \ - DEF_GPUTEST_FOR_CONTEXTS(name, skiatest::kNull_GPUTestContexts, 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) \ + DEF_GPUTEST_FOR_CONTEXTS(name, &skiatest::IsRenderingGLContextType, reporter, context_info) +#define DEF_GPUTEST_FOR_NULLGL_CONTEXT(name, reporter, context_info) \ + DEF_GPUTEST_FOR_CONTEXTS(name, &skiatest::IsNullGLContextType, reporter, context_info) #define REQUIRE_PDF_DOCUMENT(TEST_NAME, REPORTER) \ do { \ |