Commit d7dc8866 authored by Mohsen Izadi's avatar Mohsen Izadi Committed by Commit Bot

Initialize GL in GpuMemoryBuffer tests for ozone

This will allow GpuMemoryBufferFactoryTest and GpuMemoryBufferImplTest
to run on ozone platforms (e.g. Chromebooks).

BUG=958387

Change-Id: Iff5704b5ac3bdd04ebdd1151be844ddc8888613c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1806423Reviewed-by: default avatarDaniele Castagna <dcastagna@chromium.org>
Reviewed-by: default avatarJonathan Backer <backer@chromium.org>
Reviewed-by: default avatarRobert Kroeger <rjkroege@chromium.org>
Commit-Queue: Mohsen Izadi <mohsen@chromium.org>
Cr-Commit-Position: refs/heads/master@{#704342}
parent 833e1c77
...@@ -14,7 +14,7 @@ ...@@ -14,7 +14,7 @@
#include <memory> #include <memory>
#include "base/bind.h" #include "base/bind.h"
#include "base/task/single_thread_task_executor.h" #include "base/test/task_environment.h"
#include "build/build_config.h" #include "build/build_config.h"
#include "gpu/ipc/common/gpu_memory_buffer_support.h" #include "gpu/ipc/common/gpu_memory_buffer_support.h"
#include "mojo/public/cpp/base/shared_memory_mojom_traits.h" #include "mojo/public/cpp/base/shared_memory_mojom_traits.h"
...@@ -23,7 +23,7 @@ ...@@ -23,7 +23,7 @@
#include "ui/gfx/buffer_format_util.h" #include "ui/gfx/buffer_format_util.h"
#include "ui/gfx/mojom/buffer_types_mojom_traits.h" #include "ui/gfx/mojom/buffer_types_mojom_traits.h"
#if defined(OS_WIN) #if defined(OS_WIN) || defined(USE_OZONE)
#include "ui/gl/init/gl_factory.h" #include "ui/gl/init/gl_factory.h"
#include "ui/gl/test/gl_surface_test_support.h" #include "ui/gl/test/gl_surface_test_support.h"
#endif #endif
...@@ -50,12 +50,16 @@ class GpuMemoryBufferImplTest : public testing::Test { ...@@ -50,12 +50,16 @@ class GpuMemoryBufferImplTest : public testing::Test {
return &gpu_memory_buffer_support_; return &gpu_memory_buffer_support_;
} }
#if defined(OS_WIN) #if defined(OS_WIN) || defined(USE_OZONE)
// Overridden from testing::Test: // Overridden from testing::Test:
void SetUp() override { gl::GLSurfaceTestSupport::InitializeOneOff(); } void SetUp() override { gl::GLSurfaceTestSupport::InitializeOneOff(); }
void TearDown() override { gl::init::ShutdownGL(false); } void TearDown() override { gl::init::ShutdownGL(false); }
#endif #endif
protected:
base::test::TaskEnvironment task_environment_{
base::test::TaskEnvironment::MainThreadType::UI};
private: private:
GpuMemoryBufferSupport gpu_memory_buffer_support_; GpuMemoryBufferSupport gpu_memory_buffer_support_;
...@@ -297,7 +301,6 @@ TYPED_TEST_P(GpuMemoryBufferImplTest, PersistentMap) { ...@@ -297,7 +301,6 @@ TYPED_TEST_P(GpuMemoryBufferImplTest, PersistentMap) {
} }
TYPED_TEST_P(GpuMemoryBufferImplTest, SerializeAndDeserialize) { TYPED_TEST_P(GpuMemoryBufferImplTest, SerializeAndDeserialize) {
base::SingleThreadTaskExecutor main_task_executor;
const gfx::Size kBufferSize(8, 8); const gfx::Size kBufferSize(8, 8);
const gfx::GpuMemoryBufferType kBufferType = TypeParam::kBufferType; const gfx::GpuMemoryBufferType kBufferType = TypeParam::kBufferType;
......
...@@ -150,6 +150,7 @@ source_set("test_support") { ...@@ -150,6 +150,7 @@ source_set("test_support") {
"//testing/gtest:gtest", "//testing/gtest:gtest",
] ]
deps = [ deps = [
"//base/test:test_support",
"//gpu/ipc/common", "//gpu/ipc/common",
"//ui/gl:test_support", "//ui/gl:test_support",
] ]
......
...@@ -8,14 +8,15 @@ ...@@ -8,14 +8,15 @@
#ifndef GPU_IPC_SERVICE_GPU_MEMORY_BUFFER_FACTORY_TEST_TEMPLATE_H_ #ifndef GPU_IPC_SERVICE_GPU_MEMORY_BUFFER_FACTORY_TEST_TEMPLATE_H_
#define GPU_IPC_SERVICE_GPU_MEMORY_BUFFER_FACTORY_TEST_TEMPLATE_H_ #define GPU_IPC_SERVICE_GPU_MEMORY_BUFFER_FACTORY_TEST_TEMPLATE_H_
#include "base/test/task_environment.h"
#include "build/build_config.h"
#include "gpu/ipc/common/gpu_memory_buffer_support.h" #include "gpu/ipc/common/gpu_memory_buffer_support.h"
#include "gpu/ipc/service/gpu_memory_buffer_factory.h" #include "gpu/ipc/service/gpu_memory_buffer_factory.h"
#include "testing/gtest/include/gtest/gtest.h" #include "testing/gtest/include/gtest/gtest.h"
#include "ui/gfx/buffer_format_util.h" #include "ui/gfx/buffer_format_util.h"
#if defined(OS_WIN) #if defined(OS_WIN) || defined(USE_OZONE)
#include "base/command_line.h" #include "base/command_line.h"
#include "build/build_config.h"
#include "ui/gl/gl_switches.h" #include "ui/gl/gl_switches.h"
#include "ui/gl/init/gl_factory.h" #include "ui/gl/init/gl_factory.h"
#include "ui/gl/test/gl_surface_test_support.h" #include "ui/gl/test/gl_surface_test_support.h"
...@@ -26,18 +27,23 @@ namespace gpu { ...@@ -26,18 +27,23 @@ namespace gpu {
template <typename GpuMemoryBufferFactoryType> template <typename GpuMemoryBufferFactoryType>
class GpuMemoryBufferFactoryTest : public testing::Test { class GpuMemoryBufferFactoryTest : public testing::Test {
public: public:
#if defined(OS_WIN) #if defined(OS_WIN) || defined(USE_OZONE)
// Overridden from testing::Test: // Overridden from testing::Test:
void SetUp() override { void SetUp() override {
#if defined(OS_WIN)
// This test only works with hardware rendering. // This test only works with hardware rendering.
DCHECK(base::CommandLine::ForCurrentProcess()->HasSwitch( DCHECK(base::CommandLine::ForCurrentProcess()->HasSwitch(
switches::kUseGpuInTests)); switches::kUseGpuInTests));
#endif
gl::GLSurfaceTestSupport::InitializeOneOff(); gl::GLSurfaceTestSupport::InitializeOneOff();
} }
void TearDown() override { gl::init::ShutdownGL(false); } void TearDown() override { gl::init::ShutdownGL(false); }
#endif #endif // defined(OS_WIN) || defined(USE_OZONE)
protected: protected:
base::test::TaskEnvironment task_environment_{
base::test::TaskEnvironment::MainThreadType::UI};
GpuMemoryBufferFactoryType factory_; GpuMemoryBufferFactoryType factory_;
}; };
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment