| Index: cc/resources/resource_provider_unittest.cc
|
| diff --git a/cc/resources/resource_provider_unittest.cc b/cc/resources/resource_provider_unittest.cc
|
| index 6dac574002e1fd762ca60b1f616bab3cb0ee1b14..8579a419dc4b499711a0f98ba45f78ebd315396d 100644
|
| --- a/cc/resources/resource_provider_unittest.cc
|
| +++ b/cc/resources/resource_provider_unittest.cc
|
| @@ -19,6 +19,7 @@
|
| #include "cc/resources/single_release_callback.h"
|
| #include "cc/test/fake_output_surface.h"
|
| #include "cc/test/fake_output_surface_client.h"
|
| +#include "cc/test/test_gpu_memory_buffer_manager.h"
|
| #include "cc/test/test_shared_bitmap_manager.h"
|
| #include "cc/test/test_texture.h"
|
| #include "cc/test/test_web_graphics_context_3d.h"
|
| @@ -28,6 +29,7 @@
|
| #include "testing/gtest/include/gtest/gtest.h"
|
| #include "third_party/khronos/GLES2/gl2.h"
|
| #include "third_party/khronos/GLES2/gl2ext.h"
|
| +#include "ui/gfx/gpu_memory_buffer.h"
|
| #include "ui/gfx/rect.h"
|
|
|
| using testing::Mock;
|
| @@ -413,11 +415,13 @@ class ResourceProviderTest
|
| CHECK(output_surface_->BindToClient(&output_surface_client_));
|
| CHECK(child_output_surface_->BindToClient(&child_output_surface_client_));
|
|
|
| - shared_bitmap_manager_.reset(new TestSharedBitmapManager());
|
| + shared_bitmap_manager_.reset(new TestSharedBitmapManager);
|
| + gpu_memory_buffer_manager_.reset(new TestGpuMemoryBufferManager);
|
|
|
| resource_provider_ =
|
| ResourceProvider::Create(output_surface_.get(),
|
| shared_bitmap_manager_.get(),
|
| + gpu_memory_buffer_manager_.get(),
|
| main_thread_task_runner_.get(),
|
| 0,
|
| false,
|
| @@ -426,6 +430,7 @@ class ResourceProviderTest
|
| child_resource_provider_ =
|
| ResourceProvider::Create(child_output_surface_.get(),
|
| shared_bitmap_manager_.get(),
|
| + gpu_memory_buffer_manager_.get(),
|
| main_thread_task_runner_.get(),
|
| 0,
|
| false,
|
| @@ -506,6 +511,7 @@ class ResourceProviderTest
|
| scoped_ptr<ResourceProvider> resource_provider_;
|
| scoped_ptr<ResourceProvider> child_resource_provider_;
|
| scoped_ptr<TestSharedBitmapManager> shared_bitmap_manager_;
|
| + scoped_ptr<TestGpuMemoryBufferManager> gpu_memory_buffer_manager_;
|
| };
|
|
|
| void CheckCreateResource(ResourceProvider::ResourceType expected_default_type,
|
| @@ -1160,6 +1166,7 @@ TEST_P(ResourceProviderTest, TransferGLToSoftware) {
|
| scoped_ptr<ResourceProvider> child_resource_provider(
|
| ResourceProvider::Create(child_output_surface.get(),
|
| shared_bitmap_manager_.get(),
|
| + gpu_memory_buffer_manager_.get(),
|
| NULL,
|
| 0,
|
| false,
|
| @@ -1643,6 +1650,7 @@ class ResourceProviderTestTextureFilters : public ResourceProviderTest {
|
| ResourceProvider::Create(child_output_surface.get(),
|
| shared_bitmap_manager.get(),
|
| NULL,
|
| + NULL,
|
| 0,
|
| false,
|
| 1,
|
| @@ -1661,6 +1669,7 @@ class ResourceProviderTestTextureFilters : public ResourceProviderTest {
|
| ResourceProvider::Create(parent_output_surface.get(),
|
| shared_bitmap_manager.get(),
|
| NULL,
|
| + NULL,
|
| 0,
|
| false,
|
| 1,
|
| @@ -2292,6 +2301,7 @@ TEST_P(ResourceProviderTest, ScopedSampler) {
|
| scoped_ptr<ResourceProvider> resource_provider(
|
| ResourceProvider::Create(output_surface.get(),
|
| shared_bitmap_manager_.get(),
|
| + gpu_memory_buffer_manager_.get(),
|
| NULL,
|
| 0,
|
| false,
|
| @@ -2379,6 +2389,7 @@ TEST_P(ResourceProviderTest, ManagedResource) {
|
| scoped_ptr<ResourceProvider> resource_provider(
|
| ResourceProvider::Create(output_surface.get(),
|
| shared_bitmap_manager_.get(),
|
| + gpu_memory_buffer_manager_.get(),
|
| NULL,
|
| 0,
|
| false,
|
| @@ -2434,6 +2445,7 @@ TEST_P(ResourceProviderTest, TextureWrapMode) {
|
| scoped_ptr<ResourceProvider> resource_provider(
|
| ResourceProvider::Create(output_surface.get(),
|
| shared_bitmap_manager_.get(),
|
| + gpu_memory_buffer_manager_.get(),
|
| NULL,
|
| 0,
|
| false,
|
| @@ -2493,6 +2505,7 @@ TEST_P(ResourceProviderTest, TextureHint) {
|
| scoped_ptr<ResourceProvider> resource_provider(
|
| ResourceProvider::Create(output_surface.get(),
|
| shared_bitmap_manager_.get(),
|
| + gpu_memory_buffer_manager_.get(),
|
| NULL,
|
| 0,
|
| false,
|
| @@ -2566,6 +2579,7 @@ TEST_P(ResourceProviderTest, TextureMailbox_SharedMemory) {
|
| scoped_ptr<ResourceProvider> resource_provider(
|
| ResourceProvider::Create(output_surface.get(),
|
| shared_bitmap_manager_.get(),
|
| + gpu_memory_buffer_manager_.get(),
|
| main_thread_task_runner_.get(),
|
| 0,
|
| false,
|
| @@ -2618,6 +2632,7 @@ TEST_P(ResourceProviderTest, TextureMailbox_GLTexture2D) {
|
| scoped_ptr<ResourceProvider> resource_provider(
|
| ResourceProvider::Create(output_surface.get(),
|
| shared_bitmap_manager_.get(),
|
| + gpu_memory_buffer_manager_.get(),
|
| main_thread_task_runner_.get(),
|
| 0,
|
| false,
|
| @@ -2703,6 +2718,7 @@ TEST_P(ResourceProviderTest, TextureMailbox_GLTextureExternalOES) {
|
| scoped_ptr<ResourceProvider> resource_provider(
|
| ResourceProvider::Create(output_surface.get(),
|
| shared_bitmap_manager_.get(),
|
| + gpu_memory_buffer_manager_.get(),
|
| NULL,
|
| 0,
|
| false,
|
| @@ -2778,6 +2794,7 @@ TEST_P(ResourceProviderTest,
|
| scoped_ptr<ResourceProvider> resource_provider(
|
| ResourceProvider::Create(output_surface.get(),
|
| shared_bitmap_manager_.get(),
|
| + gpu_memory_buffer_manager_.get(),
|
| NULL,
|
| 0,
|
| false,
|
| @@ -2837,6 +2854,7 @@ TEST_P(ResourceProviderTest, TextureMailbox_WaitSyncPointIfNeeded_NoSyncPoint) {
|
| scoped_ptr<ResourceProvider> resource_provider(
|
| ResourceProvider::Create(output_surface.get(),
|
| shared_bitmap_manager_.get(),
|
| + gpu_memory_buffer_manager_.get(),
|
| NULL,
|
| 0,
|
| false,
|
| @@ -2935,7 +2953,7 @@ class AllocationTrackingContext3D : public TestWebGraphicsContext3D {
|
| GLsizei image_size,
|
| const void* data));
|
| MOCK_METHOD1(waitAsyncTexImage2DCHROMIUM, void(GLenum));
|
| - MOCK_METHOD4(createImageCHROMIUM, GLuint(GLsizei, GLsizei, GLenum, GLenum));
|
| + MOCK_METHOD3(createImageCHROMIUM, GLuint(GLsizei, GLsizei, GLenum));
|
| MOCK_METHOD1(destroyImageCHROMIUM, void(GLuint));
|
| MOCK_METHOD1(mapImageCHROMIUM, void*(GLuint));
|
| MOCK_METHOD3(getImageParameterivCHROMIUM, void(GLuint, GLenum, GLint*));
|
| @@ -2965,6 +2983,7 @@ TEST_P(ResourceProviderTest, TextureAllocation) {
|
| scoped_ptr<ResourceProvider> resource_provider(
|
| ResourceProvider::Create(output_surface.get(),
|
| shared_bitmap_manager_.get(),
|
| + gpu_memory_buffer_manager_.get(),
|
| NULL,
|
| 0,
|
| false,
|
| @@ -3045,6 +3064,7 @@ TEST_P(ResourceProviderTest, TextureAllocationHint) {
|
| scoped_ptr<ResourceProvider> resource_provider(
|
| ResourceProvider::Create(output_surface.get(),
|
| shared_bitmap_manager_.get(),
|
| + gpu_memory_buffer_manager_.get(),
|
| NULL,
|
| 0,
|
| false,
|
| @@ -3105,6 +3125,7 @@ TEST_P(ResourceProviderTest, TextureAllocationHint_BGRA) {
|
| scoped_ptr<ResourceProvider> resource_provider(
|
| ResourceProvider::Create(output_surface.get(),
|
| shared_bitmap_manager_.get(),
|
| + gpu_memory_buffer_manager_.get(),
|
| NULL,
|
| 0,
|
| false,
|
| @@ -3164,6 +3185,7 @@ TEST_P(ResourceProviderTest, PixelBuffer_GLTexture) {
|
| scoped_ptr<ResourceProvider> resource_provider(
|
| ResourceProvider::Create(output_surface.get(),
|
| shared_bitmap_manager_.get(),
|
| + gpu_memory_buffer_manager_.get(),
|
| NULL,
|
| 0,
|
| false,
|
| @@ -3211,6 +3233,7 @@ TEST_P(ResourceProviderTest, ForcingAsyncUploadToComplete) {
|
| scoped_ptr<ResourceProvider> resource_provider(
|
| ResourceProvider::Create(output_surface.get(),
|
| shared_bitmap_manager_.get(),
|
| + gpu_memory_buffer_manager_.get(),
|
| NULL,
|
| 0,
|
| false,
|
| @@ -3258,6 +3281,7 @@ TEST_P(ResourceProviderTest, PixelBufferLostContext) {
|
| scoped_ptr<ResourceProvider> resource_provider(
|
| ResourceProvider::Create(output_surface.get(),
|
| shared_bitmap_manager_.get(),
|
| + gpu_memory_buffer_manager_.get(),
|
| NULL,
|
| 0,
|
| false,
|
| @@ -3303,6 +3327,7 @@ TEST_P(ResourceProviderTest, Image_GLTexture) {
|
| scoped_ptr<ResourceProvider> resource_provider(
|
| ResourceProvider::Create(output_surface.get(),
|
| shared_bitmap_manager_.get(),
|
| + gpu_memory_buffer_manager_.get(),
|
| NULL,
|
| 0,
|
| false,
|
| @@ -3312,24 +3337,9 @@ TEST_P(ResourceProviderTest, Image_GLTexture) {
|
| id = resource_provider->CreateResource(
|
| size, GL_CLAMP_TO_EDGE, ResourceProvider::TextureHintImmutable, format);
|
|
|
| - const int kStride = 8;
|
| - uint8 buffer_data[kStride * kHeight];
|
| - EXPECT_CALL(
|
| - *context,
|
| - createImageCHROMIUM(kWidth, kHeight, GL_RGBA8_OES, GL_IMAGE_MAP_CHROMIUM))
|
| + EXPECT_CALL(*context, createImageCHROMIUM(kWidth, kHeight, GL_RGBA))
|
| .WillOnce(Return(kImageId))
|
| .RetiresOnSaturation();
|
| - EXPECT_CALL(*context, mapImageCHROMIUM(kImageId))
|
| - .WillOnce(Return(buffer_data))
|
| - .RetiresOnSaturation();
|
| - EXPECT_CALL(*context, getImageParameterivCHROMIUM(kImageId,
|
| - GL_IMAGE_ROWBYTES_CHROMIUM,
|
| - _))
|
| - .WillOnce(SetArgPointee<2>(kStride))
|
| - .RetiresOnSaturation();
|
| - EXPECT_CALL(*context, unmapImageCHROMIUM(kImageId))
|
| - .Times(1)
|
| - .RetiresOnSaturation();
|
| {
|
| ResourceProvider::ScopedWriteLockGpuMemoryBuffer lock(
|
| resource_provider.get(), id);
|
| @@ -3351,17 +3361,6 @@ TEST_P(ResourceProviderTest, Image_GLTexture) {
|
| EXPECT_EQ(kTextureId, lock_gl.texture_id());
|
| }
|
|
|
| - EXPECT_CALL(*context, mapImageCHROMIUM(kImageId))
|
| - .WillOnce(Return(buffer_data))
|
| - .RetiresOnSaturation();
|
| - EXPECT_CALL(
|
| - *context,
|
| - getImageParameterivCHROMIUM(kImageId, GL_IMAGE_ROWBYTES_CHROMIUM, _))
|
| - .WillOnce(SetArgPointee<2>(kStride))
|
| - .RetiresOnSaturation();
|
| - EXPECT_CALL(*context, unmapImageCHROMIUM(kImageId))
|
| - .Times(1)
|
| - .RetiresOnSaturation();
|
| {
|
| ResourceProvider::ScopedWriteLockGpuMemoryBuffer lock(
|
| resource_provider.get(), id);
|
| @@ -3416,6 +3415,7 @@ TEST_P(ResourceProviderTest, CopyResource_GLTexture) {
|
| scoped_ptr<ResourceProvider> resource_provider(
|
| ResourceProvider::Create(output_surface.get(),
|
| shared_bitmap_manager_.get(),
|
| + gpu_memory_buffer_manager_.get(),
|
| NULL,
|
| 0,
|
| false,
|
| @@ -3425,24 +3425,9 @@ TEST_P(ResourceProviderTest, CopyResource_GLTexture) {
|
| source_id = resource_provider->CreateResource(
|
| size, GL_CLAMP_TO_EDGE, ResourceProvider::TextureHintImmutable, format);
|
|
|
| - const int kStride = 8;
|
| - uint8 buffer_data[kStride * kHeight];
|
| - EXPECT_CALL(
|
| - *context,
|
| - createImageCHROMIUM(kWidth, kHeight, GL_RGBA8_OES, GL_IMAGE_MAP_CHROMIUM))
|
| + EXPECT_CALL(*context, createImageCHROMIUM(kWidth, kHeight, GL_RGBA))
|
| .WillOnce(Return(kImageId))
|
| .RetiresOnSaturation();
|
| - EXPECT_CALL(*context, mapImageCHROMIUM(kImageId))
|
| - .WillOnce(Return(buffer_data))
|
| - .RetiresOnSaturation();
|
| - EXPECT_CALL(
|
| - *context,
|
| - getImageParameterivCHROMIUM(kImageId, GL_IMAGE_ROWBYTES_CHROMIUM, _))
|
| - .WillOnce(SetArgPointee<2>(kStride))
|
| - .RetiresOnSaturation();
|
| - EXPECT_CALL(*context, unmapImageCHROMIUM(kImageId))
|
| - .Times(1)
|
| - .RetiresOnSaturation();
|
| {
|
| ResourceProvider::ScopedWriteLockGpuMemoryBuffer lock(
|
| resource_provider.get(), source_id);
|
| @@ -3514,6 +3499,7 @@ TEST(ResourceProviderTest, BasicInitializeGLSoftware) {
|
| ResourceProvider::Create(output_surface.get(),
|
| shared_bitmap_manager.get(),
|
| NULL,
|
| + NULL,
|
| 0,
|
| false,
|
| 1,
|
| @@ -3552,6 +3538,7 @@ TEST_P(ResourceProviderTest, CompressedTextureETC1Allocate) {
|
| scoped_ptr<ResourceProvider> resource_provider(
|
| ResourceProvider::Create(output_surface.get(),
|
| shared_bitmap_manager_.get(),
|
| + gpu_memory_buffer_manager_.get(),
|
| NULL,
|
| 0,
|
| false,
|
| @@ -3588,6 +3575,7 @@ TEST_P(ResourceProviderTest, CompressedTextureETC1SetPixels) {
|
| scoped_ptr<ResourceProvider> resource_provider(
|
| ResourceProvider::Create(output_surface.get(),
|
| shared_bitmap_manager_.get(),
|
| + gpu_memory_buffer_manager_.get(),
|
| NULL,
|
| 0,
|
| false,
|
| @@ -3650,6 +3638,7 @@ TEST(ResourceProviderTest, TextureAllocationChunkSize) {
|
| ResourceProvider::Create(output_surface.get(),
|
| shared_bitmap_manager.get(),
|
| NULL,
|
| + NULL,
|
| 0,
|
| false,
|
| kTextureAllocationChunkSize,
|
| @@ -3670,6 +3659,7 @@ TEST(ResourceProviderTest, TextureAllocationChunkSize) {
|
| ResourceProvider::Create(output_surface.get(),
|
| shared_bitmap_manager.get(),
|
| NULL,
|
| + NULL,
|
| 0,
|
| false,
|
| kTextureAllocationChunkSize,
|
|
|