OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 // This file defines tests that implementations of GLImage should pass in order | 5 // This file defines tests that implementations of GLImage should pass in order |
6 // to be conformant. | 6 // to be conformant. |
7 | 7 |
8 #ifndef UI_GL_TEST_GL_IMAGE_TEST_TEMPLATE_H_ | 8 #ifndef UI_GL_TEST_GL_IMAGE_TEST_TEMPLATE_H_ |
9 #define UI_GL_TEST_GL_IMAGE_TEST_TEMPLATE_H_ | 9 #define UI_GL_TEST_GL_IMAGE_TEST_TEMPLATE_H_ |
10 | 10 |
11 #include <stdint.h> | 11 #include <stdint.h> |
12 | 12 |
13 #include "base/memory/scoped_ptr.h" | 13 #include <memory> |
| 14 |
14 #include "base/strings/stringize_macros.h" | 15 #include "base/strings/stringize_macros.h" |
15 #include "base/strings/stringprintf.h" | 16 #include "base/strings/stringprintf.h" |
16 #include "build/build_config.h" | 17 #include "build/build_config.h" |
17 #include "testing/gtest/include/gtest/gtest.h" | 18 #include "testing/gtest/include/gtest/gtest.h" |
18 #include "ui/gfx/buffer_format_util.h" | 19 #include "ui/gfx/buffer_format_util.h" |
19 #include "ui/gfx/buffer_types.h" | 20 #include "ui/gfx/buffer_types.h" |
20 #include "ui/gl/gl_bindings.h" | 21 #include "ui/gl/gl_bindings.h" |
21 #include "ui/gl/gl_context.h" | 22 #include "ui/gl/gl_context.h" |
22 #include "ui/gl/gl_helper.h" | 23 #include "ui/gl/gl_helper.h" |
23 #include "ui/gl/gl_image.h" | 24 #include "ui/gl/gl_image.h" |
(...skipping 226 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
250 | 251 |
251 // Create a solid color green image of preferred format. This must succeed | 252 // Create a solid color green image of preferred format. This must succeed |
252 // in order for a GLImage to be conformant. | 253 // in order for a GLImage to be conformant. |
253 scoped_refptr<gl::GLImage> image = | 254 scoped_refptr<gl::GLImage> image = |
254 this->delegate_.CreateSolidColorImage(image_size, image_color); | 255 this->delegate_.CreateSolidColorImage(image_size, image_color); |
255 ASSERT_TRUE(image); | 256 ASSERT_TRUE(image); |
256 | 257 |
257 // Create a solid color blue texture of the same size as |image|. | 258 // Create a solid color blue texture of the same size as |image|. |
258 unsigned target = this->delegate_.GetTextureTarget(); | 259 unsigned target = this->delegate_.GetTextureTarget(); |
259 GLuint texture = GLTestHelper::CreateTexture(target); | 260 GLuint texture = GLTestHelper::CreateTexture(target); |
260 scoped_ptr<uint8_t[]> pixels(new uint8_t[BufferSizeForBufferFormat( | 261 std::unique_ptr<uint8_t[]> pixels(new uint8_t[BufferSizeForBufferFormat( |
261 image_size, gfx::BufferFormat::RGBA_8888)]); | 262 image_size, gfx::BufferFormat::RGBA_8888)]); |
262 GLImageTestSupport::SetBufferDataToColor( | 263 GLImageTestSupport::SetBufferDataToColor( |
263 image_size.width(), image_size.height(), | 264 image_size.width(), image_size.height(), |
264 static_cast<int>(RowSizeForBufferFormat(image_size.width(), | 265 static_cast<int>(RowSizeForBufferFormat(image_size.width(), |
265 gfx::BufferFormat::RGBA_8888, 0)), | 266 gfx::BufferFormat::RGBA_8888, 0)), |
266 0, gfx::BufferFormat::RGBA_8888, texture_color, pixels.get()); | 267 0, gfx::BufferFormat::RGBA_8888, texture_color, pixels.get()); |
267 glBindTexture(target, texture); | 268 glBindTexture(target, texture); |
268 glTexImage2D(target, 0, GL_RGBA, image_size.width(), image_size.height(), 0, | 269 glTexImage2D(target, 0, GL_RGBA, image_size.width(), image_size.height(), 0, |
269 GL_RGBA, GL_UNSIGNED_BYTE, pixels.get()); | 270 GL_RGBA, GL_UNSIGNED_BYTE, pixels.get()); |
270 | 271 |
(...skipping 14 matching lines...) Expand all Loading... |
285 image->Destroy(true /* have_context */); | 286 image->Destroy(true /* have_context */); |
286 } | 287 } |
287 | 288 |
288 // The GLImageCopyTest test case verifies that the GLImage implementation | 289 // The GLImageCopyTest test case verifies that the GLImage implementation |
289 // handles CopyTexImage correctly. | 290 // handles CopyTexImage correctly. |
290 REGISTER_TYPED_TEST_CASE_P(GLImageCopyTest, CopyTexImage); | 291 REGISTER_TYPED_TEST_CASE_P(GLImageCopyTest, CopyTexImage); |
291 | 292 |
292 } // namespace gl | 293 } // namespace gl |
293 | 294 |
294 #endif // UI_GL_TEST_GL_IMAGE_TEST_TEMPLATE_H_ | 295 #endif // UI_GL_TEST_GL_IMAGE_TEST_TEMPLATE_H_ |
OLD | NEW |