Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(6475)

Unified Diff: cc/resources/resource_provider_unittest.cc

Issue 23648014: cc: Move TextureMailbox::ReleaseCallback to SingleReleaseCallback. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: releasecallback: missingfiles Created 7 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: cc/resources/resource_provider_unittest.cc
diff --git a/cc/resources/resource_provider_unittest.cc b/cc/resources/resource_provider_unittest.cc
index 3f786ef8277b8208dd818fea418cda8acaef04cb..1f3f9b27b3e5ea30cf803ebf3516e2fe852f0ed8 100644
--- a/cc/resources/resource_provider_unittest.cc
+++ b/cc/resources/resource_provider_unittest.cc
@@ -14,6 +14,7 @@
#include "cc/debug/test_web_graphics_context_3d.h"
#include "cc/output/output_surface.h"
#include "cc/resources/returned_resource.h"
+#include "cc/resources/scoped_release_callback.h"
#include "cc/test/fake_output_surface.h"
#include "cc/test/fake_output_surface_client.h"
#include "gpu/GLES2/gl2extchromium.h"
@@ -831,11 +832,12 @@ TEST_P(ResourceProviderTest, TransferMailboxResources) {
unsigned release_sync_point = 0;
bool lost_resource = false;
- TextureMailbox::ReleaseCallback callback =
+ ReleaseCallback callback =
base::Bind(ReleaseTextureMailbox, &release_sync_point, &lost_resource);
ResourceProvider::ResourceId resource =
resource_provider_->CreateResourceFromTextureMailbox(
- TextureMailbox(mailbox, callback, sync_point));
+ TextureMailbox(mailbox, sync_point),
+ ScopedReleaseCallback(callback));
EXPECT_EQ(1, context()->texture_count());
EXPECT_EQ(0u, release_sync_point);
{
@@ -881,7 +883,8 @@ TEST_P(ResourceProviderTest, TransferMailboxResources) {
EXPECT_LT(0u, sync_point);
release_sync_point = 0;
resource = resource_provider_->CreateResourceFromTextureMailbox(
- TextureMailbox(mailbox, callback, sync_point));
+ TextureMailbox(mailbox, sync_point),
+ ScopedReleaseCallback(callback));
EXPECT_EQ(1, context()->texture_count());
EXPECT_EQ(0u, release_sync_point);
{
@@ -943,10 +946,11 @@ TEST_P(ResourceProviderTest, Shutdown) {
unsigned release_sync_point = 0;
bool lost_resource = false;
- TextureMailbox::ReleaseCallback callback =
- base::Bind(ReleaseTextureMailbox, &release_sync_point, &lost_resource);
+ ScopedReleaseCallback callback(
+ base::Bind(ReleaseTextureMailbox, &release_sync_point, &lost_resource));
resource_provider_->CreateResourceFromTextureMailbox(
- TextureMailbox(mailbox, callback, sync_point));
+ TextureMailbox(mailbox, sync_point),
+ callback.Pass());
EXPECT_EQ(0u, release_sync_point);
EXPECT_FALSE(lost_resource);
@@ -982,10 +986,11 @@ TEST_P(ResourceProviderTest, ShutdownSharedMemory) {
CreateAndFillSharedMemory(size, 0));
bool release_called = false;
- TextureMailbox::ReleaseCallback callback =
- base::Bind(ReleaseSharedMemoryCallback, &release_called);
+ ScopedReleaseCallback callback(
+ base::Bind(ReleaseSharedMemoryCallback, &release_called));
resource_provider_->CreateResourceFromTextureMailbox(
- TextureMailbox(shared_memory.get(), size, callback));
+ TextureMailbox(shared_memory.get(), size),
+ callback.Pass());
resource_provider_.reset();
@@ -1007,11 +1012,12 @@ TEST_P(ResourceProviderTest, ShutdownWithExportedResource) {
unsigned release_sync_point = 0;
bool lost_resource = false;
- TextureMailbox::ReleaseCallback callback =
- base::Bind(ReleaseTextureMailbox, &release_sync_point, &lost_resource);
+ ScopedReleaseCallback callback(
+ base::Bind(ReleaseTextureMailbox, &release_sync_point, &lost_resource));
ResourceProvider::ResourceId resource =
resource_provider_->CreateResourceFromTextureMailbox(
- TextureMailbox(mailbox, callback, sync_point));
+ TextureMailbox(mailbox, sync_point),
+ callback.Pass());
// Transfer the resource, so we can't release it properly on shutdown.
ResourceProvider::ResourceIdArray resource_ids_to_transfer;
@@ -1044,10 +1050,11 @@ TEST_P(ResourceProviderTest, LostContext) {
unsigned release_sync_point = 0;
bool lost_resource = false;
- TextureMailbox::ReleaseCallback callback =
- base::Bind(ReleaseTextureMailbox, &release_sync_point, &lost_resource);
+ ScopedReleaseCallback callback(
+ base::Bind(ReleaseTextureMailbox, &release_sync_point, &lost_resource));
resource_provider_->CreateResourceFromTextureMailbox(
- TextureMailbox(mailbox, callback, sync_point));
+ TextureMailbox(mailbox, sync_point),
+ callback.Pass());
EXPECT_EQ(0u, release_sync_point);
EXPECT_FALSE(lost_resource);
@@ -1267,11 +1274,12 @@ TEST_P(ResourceProviderTest, TextureMailbox_SharedMemory) {
scoped_ptr<ResourceProvider> resource_provider(
ResourceProvider::Create(output_surface.get(), 0));
- TextureMailbox::ReleaseCallback callback = base::Bind(&EmptyReleaseCallback);
- TextureMailbox mailbox(shared_memory.get(), size, callback);
+ ScopedReleaseCallback callback(base::Bind(&EmptyReleaseCallback));
+ TextureMailbox mailbox(shared_memory.get(), size);
ResourceProvider::ResourceId id =
- resource_provider->CreateResourceFromTextureMailbox(mailbox);
+ resource_provider->CreateResourceFromTextureMailbox(
+ mailbox, callback.Pass());
EXPECT_NE(0u, id);
{
@@ -1312,14 +1320,13 @@ TEST_P(ResourceProviderTest, TextureMailbox_GLTexture2D) {
gpu::Mailbox gpu_mailbox;
memcpy(gpu_mailbox.name, "Hello world", strlen("Hello world") + 1);
- TextureMailbox::ReleaseCallback callback = base::Bind(&EmptyReleaseCallback);
+ ScopedReleaseCallback callback(base::Bind(&EmptyReleaseCallback));
- TextureMailbox mailbox(gpu_mailbox,
- callback,
- sync_point);
+ TextureMailbox mailbox(gpu_mailbox, sync_point);
ResourceProvider::ResourceId id =
- resource_provider->CreateResourceFromTextureMailbox(mailbox);
+ resource_provider->CreateResourceFromTextureMailbox(
+ mailbox, callback.Pass());
EXPECT_NE(0u, id);
Mock::VerifyAndClearExpectations(context);
@@ -1376,15 +1383,13 @@ TEST_P(ResourceProviderTest, TextureMailbox_GLTextureExternalOES) {
gpu::Mailbox gpu_mailbox;
memcpy(gpu_mailbox.name, "Hello world", strlen("Hello world") + 1);
- TextureMailbox::ReleaseCallback callback = base::Bind(&EmptyReleaseCallback);
+ ScopedReleaseCallback callback(base::Bind(&EmptyReleaseCallback));
- TextureMailbox mailbox(gpu_mailbox,
- callback,
- target,
- sync_point);
+ TextureMailbox mailbox(gpu_mailbox, target, sync_point);
ResourceProvider::ResourceId id =
- resource_provider->CreateResourceFromTextureMailbox(mailbox);
+ resource_provider->CreateResourceFromTextureMailbox(
+ mailbox, callback.Pass());
EXPECT_NE(0u, id);
Mock::VerifyAndClearExpectations(context);

Powered by Google App Engine
This is Rietveld 408576698