1cb93a386Sopenharmony_ci 2cb93a386Sopenharmony_ci/* 3cb93a386Sopenharmony_ci * Copyright 2017 Google Inc. 4cb93a386Sopenharmony_ci * 5cb93a386Sopenharmony_ci * Use of this source code is governed by a BSD-style license that can be 6cb93a386Sopenharmony_ci * found in the LICENSE file. 7cb93a386Sopenharmony_ci */ 8cb93a386Sopenharmony_ci#ifndef GLTestContext_DEFINED 9cb93a386Sopenharmony_ci#define GLTestContext_DEFINED 10cb93a386Sopenharmony_ci 11cb93a386Sopenharmony_ci#include "tools/gpu/mock/MockTestContext.h" 12cb93a386Sopenharmony_ci 13cb93a386Sopenharmony_ci#include "include/gpu/GrDirectContext.h" 14cb93a386Sopenharmony_ci 15cb93a386Sopenharmony_cinamespace { 16cb93a386Sopenharmony_ci 17cb93a386Sopenharmony_ciclass MockTestContext : public sk_gpu_test::TestContext { 18cb93a386Sopenharmony_cipublic: 19cb93a386Sopenharmony_ci MockTestContext() {} 20cb93a386Sopenharmony_ci ~MockTestContext() override {} 21cb93a386Sopenharmony_ci 22cb93a386Sopenharmony_ci GrBackendApi backend() override { return GrBackendApi::kMock; } 23cb93a386Sopenharmony_ci 24cb93a386Sopenharmony_ci void testAbandon() override {} 25cb93a386Sopenharmony_ci void finish() override {} 26cb93a386Sopenharmony_ci 27cb93a386Sopenharmony_ci sk_sp<GrDirectContext> makeContext(const GrContextOptions& options) override { 28cb93a386Sopenharmony_ci return GrDirectContext::MakeMock(nullptr, options); 29cb93a386Sopenharmony_ci } 30cb93a386Sopenharmony_ci 31cb93a386Sopenharmony_ciprotected: 32cb93a386Sopenharmony_ci void teardown() override {} 33cb93a386Sopenharmony_ci void onPlatformMakeNotCurrent() const override {} 34cb93a386Sopenharmony_ci void onPlatformMakeCurrent() const override {} 35cb93a386Sopenharmony_ci std::function<void()> onPlatformGetAutoContextRestore() const override { return nullptr; } 36cb93a386Sopenharmony_ci 37cb93a386Sopenharmony_ciprivate: 38cb93a386Sopenharmony_ci using INHERITED = sk_gpu_test::TestContext; 39cb93a386Sopenharmony_ci}; 40cb93a386Sopenharmony_ci 41cb93a386Sopenharmony_ci} // anonymous namespace 42cb93a386Sopenharmony_ci 43cb93a386Sopenharmony_cinamespace sk_gpu_test { 44cb93a386Sopenharmony_ci 45cb93a386Sopenharmony_ciTestContext* CreateMockTestContext(TestContext*) { return new MockTestContext(); } 46cb93a386Sopenharmony_ci 47cb93a386Sopenharmony_ci} // namespace sk_gpu_test 48cb93a386Sopenharmony_ci#endif 49