| Index: cc/resources/resource_provider_unittest.cc
|
| diff --git a/cc/resources/resource_provider_unittest.cc b/cc/resources/resource_provider_unittest.cc
|
| index 136855847db72d82a8ea2ccd33be7fb3b16a3daa..4a02e828dcb79b611be09838cc0ed47389ef1ed8 100644
|
| --- a/cc/resources/resource_provider_unittest.cc
|
| +++ b/cc/resources/resource_provider_unittest.cc
|
| @@ -7,6 +7,7 @@
|
| #include <algorithm>
|
| #include <map>
|
| #include <set>
|
| +#include <vector>
|
|
|
| #include "base/bind.h"
|
| #include "base/containers/hash_tables.h"
|
| @@ -421,11 +422,11 @@ class ResourceProviderTest
|
| resource_provider_ = ResourceProvider::Create(
|
| output_surface_.get(), shared_bitmap_manager_.get(),
|
| gpu_memory_buffer_manager_.get(), main_thread_task_runner_.get(), 0,
|
| - false, 1, false);
|
| + false, 1, false, use_image_texture_targets_);
|
| 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, 1, false);
|
| + false, 1, false, use_image_texture_targets_);
|
| }
|
|
|
| ResourceProviderTest() : ResourceProviderTest(true) {}
|
| @@ -485,7 +486,13 @@ class ResourceProviderTest
|
| }
|
| }
|
|
|
| + public:
|
| + static std::vector<unsigned> use_image_texture_targets() {
|
| + return use_image_texture_targets_;
|
| + }
|
| +
|
| protected:
|
| + static std::vector<unsigned> use_image_texture_targets_;
|
| scoped_ptr<ContextSharedData> shared_data_;
|
| ResourceProviderContext* context3d_;
|
| ResourceProviderContext* child_context_;
|
| @@ -500,6 +507,10 @@ class ResourceProviderTest
|
| scoped_ptr<TestGpuMemoryBufferManager> gpu_memory_buffer_manager_;
|
| };
|
|
|
| +std::vector<unsigned> ResourceProviderTest::use_image_texture_targets_ =
|
| + std::vector<unsigned>(static_cast<size_t>(gfx::BufferFormat::LAST) + 1,
|
| + GL_TEXTURE_2D);
|
| +
|
| void CheckCreateResource(ResourceProvider::ResourceType expected_default_type,
|
| ResourceProvider* resource_provider,
|
| ResourceProviderContext* context) {
|
| @@ -1367,7 +1378,8 @@ 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, 1, false));
|
| + gpu_memory_buffer_manager_.get(), NULL, 0, false, 1, false,
|
| + use_image_texture_targets_));
|
|
|
| gfx::Size size(1, 1);
|
| ResourceFormat format = RGBA_8888;
|
| @@ -1851,7 +1863,7 @@ class ResourceProviderTestTextureFilters : public ResourceProviderTest {
|
| scoped_ptr<ResourceProvider> child_resource_provider(
|
| ResourceProvider::Create(child_output_surface.get(),
|
| shared_bitmap_manager.get(), NULL, NULL, 0,
|
| - false, 1, false));
|
| + false, 1, false, use_image_texture_targets_));
|
|
|
| scoped_ptr<TextureStateTrackingContext> parent_context_owned(
|
| new TextureStateTrackingContext);
|
| @@ -1865,7 +1877,7 @@ class ResourceProviderTestTextureFilters : public ResourceProviderTest {
|
| scoped_ptr<ResourceProvider> parent_resource_provider(
|
| ResourceProvider::Create(parent_output_surface.get(),
|
| shared_bitmap_manager.get(), NULL, NULL, 0,
|
| - false, 1, false));
|
| + false, 1, false, use_image_texture_targets_));
|
|
|
| gfx::Size size(1, 1);
|
| ResourceFormat format = RGBA_8888;
|
| @@ -2497,7 +2509,8 @@ 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, 1, false));
|
| + gpu_memory_buffer_manager_.get(), NULL, 0, false, 1, false,
|
| + use_image_texture_targets_));
|
|
|
| gfx::Size size(1, 1);
|
| ResourceFormat format = RGBA_8888;
|
| @@ -2579,7 +2592,8 @@ 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, 1, false));
|
| + gpu_memory_buffer_manager_.get(), NULL, 0, false, 1, false,
|
| + use_image_texture_targets_));
|
|
|
| gfx::Size size(1, 1);
|
| ResourceFormat format = RGBA_8888;
|
| @@ -2626,7 +2640,8 @@ 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, 1, false));
|
| + gpu_memory_buffer_manager_.get(), NULL, 0, false, 1, false,
|
| + use_image_texture_targets_));
|
|
|
| gfx::Size size(1, 1);
|
| ResourceFormat format = RGBA_8888;
|
| @@ -2676,7 +2691,8 @@ 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, 1, false));
|
| + gpu_memory_buffer_manager_.get(), NULL, 0, false, 1, false,
|
| + use_image_texture_targets_));
|
|
|
| gfx::Size size(1, 1);
|
| ResourceFormat format = RGBA_8888;
|
| @@ -2741,7 +2757,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, 1, false));
|
| + false, 1, false, use_image_texture_targets_));
|
|
|
| uint32 release_sync_point = 0;
|
| bool lost_resource = false;
|
| @@ -2790,7 +2806,8 @@ class ResourceProviderTestTextureMailboxGLFilters
|
|
|
| scoped_ptr<ResourceProvider> resource_provider(ResourceProvider::Create(
|
| output_surface.get(), shared_bitmap_manager, gpu_memory_buffer_manager,
|
| - main_thread_task_runner, 0, false, 1, false));
|
| + main_thread_task_runner, 0, false, 1, false,
|
| + use_image_texture_targets_));
|
|
|
| unsigned texture_id = 1;
|
| uint32 sync_point = 30;
|
| @@ -2933,7 +2950,8 @@ 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, 1, false));
|
| + gpu_memory_buffer_manager_.get(), NULL, 0, false, 1, false,
|
| + use_image_texture_targets_));
|
|
|
| uint32 sync_point = 30;
|
| unsigned target = GL_TEXTURE_EXTERNAL_OES;
|
| @@ -3002,7 +3020,8 @@ 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, 1, false));
|
| + gpu_memory_buffer_manager_.get(), NULL, 0, false, 1, false,
|
| + use_image_texture_targets_));
|
|
|
| uint32 sync_point = 30;
|
| unsigned target = GL_TEXTURE_2D;
|
| @@ -3055,7 +3074,8 @@ 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, 1, false));
|
| + gpu_memory_buffer_manager_.get(), NULL, 0, false, 1, false,
|
| + use_image_texture_targets_));
|
|
|
| uint32 sync_point = 0;
|
| unsigned target = GL_TEXTURE_2D;
|
| @@ -3175,7 +3195,8 @@ 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, 1, false));
|
| + gpu_memory_buffer_manager_.get(), NULL, 0, false, 1, false,
|
| + use_image_texture_targets_));
|
|
|
| gfx::Size size(2, 2);
|
| gfx::Vector2d offset(0, 0);
|
| @@ -3249,7 +3270,8 @@ 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, 1, false));
|
| + gpu_memory_buffer_manager_.get(), NULL, 0, false, 1, false,
|
| + use_image_texture_targets_));
|
|
|
| gfx::Size size(2, 2);
|
|
|
| @@ -3304,7 +3326,8 @@ 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, 1, false));
|
| + gpu_memory_buffer_manager_.get(), NULL, 0, false, 1, false,
|
| + use_image_texture_targets_));
|
|
|
| gfx::Size size(2, 2);
|
| const ResourceFormat formats[2] = {RGBA_8888, BGRA_8888};
|
| @@ -3358,7 +3381,8 @@ 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, 1, false));
|
| + gpu_memory_buffer_manager_.get(), NULL, 0, false, 1, false,
|
| + use_image_texture_targets_));
|
|
|
| id = resource_provider->CreateResource(
|
| size, GL_CLAMP_TO_EDGE, ResourceProvider::TEXTURE_HINT_IMMUTABLE, format);
|
| @@ -3400,7 +3424,8 @@ 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, 1, false));
|
| + gpu_memory_buffer_manager_.get(), NULL, 0, false, 1, false,
|
| + use_image_texture_targets_));
|
|
|
| id = resource_provider->CreateResource(
|
| size, GL_CLAMP_TO_EDGE, ResourceProvider::TEXTURE_HINT_IMMUTABLE, format);
|
| @@ -3442,7 +3467,8 @@ 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, 1, false));
|
| + gpu_memory_buffer_manager_.get(), NULL, 0, false, 1, false,
|
| + use_image_texture_targets_));
|
|
|
| EXPECT_CALL(*context, NextTextureId()).WillRepeatedly(Return(texture_id));
|
|
|
| @@ -3482,7 +3508,8 @@ 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, 1, false));
|
| + gpu_memory_buffer_manager_.get(), NULL, 0, false, 1, false,
|
| + use_image_texture_targets_));
|
|
|
| id = resource_provider->CreateResource(
|
| size, GL_CLAMP_TO_EDGE, ResourceProvider::TEXTURE_HINT_IMMUTABLE, format);
|
| @@ -3567,7 +3594,9 @@ 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, 1, false));
|
| + gpu_memory_buffer_manager_.get(), NULL, 0, false, 1, false,
|
| + std::vector<unsigned>(static_cast<size_t>(gfx::BufferFormat::LAST) + 1,
|
| + GL_TEXTURE_2D)));
|
|
|
| source_id = resource_provider->CreateResource(
|
| size, GL_CLAMP_TO_EDGE, ResourceProvider::TEXTURE_HINT_IMMUTABLE, format);
|
| @@ -3640,7 +3669,8 @@ TEST_P(ResourceProviderTest, CompressedTextureETC1Allocate) {
|
| gfx::Size size(4, 4);
|
| scoped_ptr<ResourceProvider> resource_provider(ResourceProvider::Create(
|
| output_surface.get(), shared_bitmap_manager_.get(),
|
| - gpu_memory_buffer_manager_.get(), NULL, 0, false, 1, false));
|
| + gpu_memory_buffer_manager_.get(), NULL, 0, false, 1, false,
|
| + use_image_texture_targets_));
|
| int texture_id = 123;
|
|
|
| ResourceId id = resource_provider->CreateResource(
|
| @@ -3671,7 +3701,8 @@ TEST_P(ResourceProviderTest, CompressedTextureETC1Upload) {
|
| gfx::Size size(4, 4);
|
| scoped_ptr<ResourceProvider> resource_provider(ResourceProvider::Create(
|
| output_surface.get(), shared_bitmap_manager_.get(),
|
| - gpu_memory_buffer_manager_.get(), NULL, 0, false, 1, false));
|
| + gpu_memory_buffer_manager_.get(), NULL, 0, false, 1, false,
|
| + use_image_texture_targets_));
|
| int texture_id = 123;
|
| uint8_t pixels[8];
|
|
|
| @@ -3727,7 +3758,8 @@ TEST(ResourceProviderTest, TextureAllocationChunkSize) {
|
| size_t kTextureAllocationChunkSize = 1;
|
| scoped_ptr<ResourceProvider> resource_provider(ResourceProvider::Create(
|
| output_surface.get(), shared_bitmap_manager.get(), NULL, NULL, 0, false,
|
| - kTextureAllocationChunkSize, false));
|
| + kTextureAllocationChunkSize, false,
|
| + ResourceProviderTest::use_image_texture_targets()));
|
|
|
| ResourceId id = resource_provider->CreateResource(
|
| size, GL_CLAMP_TO_EDGE, ResourceProvider::TEXTURE_HINT_IMMUTABLE,
|
| @@ -3743,7 +3775,8 @@ TEST(ResourceProviderTest, TextureAllocationChunkSize) {
|
| size_t kTextureAllocationChunkSize = 8;
|
| scoped_ptr<ResourceProvider> resource_provider(ResourceProvider::Create(
|
| output_surface.get(), shared_bitmap_manager.get(), NULL, NULL, 0, false,
|
| - kTextureAllocationChunkSize, false));
|
| + kTextureAllocationChunkSize, false,
|
| + ResourceProviderTest::use_image_texture_targets()));
|
|
|
| ResourceId id = resource_provider->CreateResource(
|
| size, GL_CLAMP_TO_EDGE, ResourceProvider::TEXTURE_HINT_IMMUTABLE,
|
|
|