1 // Copyright 2018 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 #include "chrome/browser/vr/test/vr_gl_test_suite.h"
6 
7 #include "ui/gl/gl_implementation.h"
8 #include "ui/gl/test/gl_image_test_support.h"
9 
10 #if defined(VR_USE_COMMAND_BUFFER)
11 #include "gpu/command_buffer/client/gles2_lib.h"  // nogncheck
12 #include "gpu/ipc/test_gpu_thread_holder.h"       // nogncheck
13 #endif  // defined(VR_USE_COMMAND_BUFFER)
14 
15 namespace vr {
16 
VrGlTestSuite(int argc,char ** argv)17 VrGlTestSuite::VrGlTestSuite(int argc, char** argv) : VrTestSuite(argc, argv) {}
18 
Initialize()19 void VrGlTestSuite::Initialize() {
20   VrTestSuite::Initialize();
21 
22   gl::GLImageTestSupport::InitializeGL(base::nullopt);
23 
24 #if defined(VR_USE_COMMAND_BUFFER)
25   // Always enable gpu and oop raster, regardless of platform and denylist.
26   auto* gpu_feature_info = gpu::GetTestGpuThreadHolder()->GetGpuFeatureInfo();
27   gpu_feature_info->status_values[gpu::GPU_FEATURE_TYPE_GPU_RASTERIZATION] =
28       gpu::kGpuFeatureStatusEnabled;
29   gpu_feature_info->status_values[gpu::GPU_FEATURE_TYPE_OOP_RASTERIZATION] =
30       gpu::kGpuFeatureStatusEnabled;
31   gles2::Initialize();
32 #endif  // defined(VR_USE_COMMAND_BUFFER)
33 }
34 
Shutdown()35 void VrGlTestSuite::Shutdown() {
36   gl::GLImageTestSupport::CleanupGL();
37   vr::VrTestSuite::Shutdown();
38 }
39 
40 }  // namespace vr
41