Index: cc/texture_layer_unittest.cc |
diff --git a/cc/texture_layer_unittest.cc b/cc/texture_layer_unittest.cc |
index ff06936539b3ba83ff989577ecdfca9babba1e2b..cada101df200d436995e7125a1c753d38101033d 100644 |
--- a/cc/texture_layer_unittest.cc |
+++ b/cc/texture_layer_unittest.cc |
@@ -196,22 +196,27 @@ public: |
struct CommonMailboxObjects { |
CommonMailboxObjects() |
- : m_mailbox1(64, '1') |
- , m_mailbox2(64, '2') |
+ : m_mailboxName1(64, '1') |
+ , m_mailboxName2(64, '2') |
{ |
m_releaseMailbox1 = base::Bind(&MockMailboxCallback::Release, |
base::Unretained(&m_mockCallback), |
- m_mailbox1); |
+ m_mailboxName1); |
m_releaseMailbox2 = base::Bind(&MockMailboxCallback::Release, |
base::Unretained(&m_mockCallback), |
- m_mailbox2); |
+ m_mailboxName2); |
+ |
+ m_mailbox1 = TextureMailbox(m_mailboxName1, m_releaseMailbox1); |
+ m_mailbox2 = TextureMailbox(m_mailboxName2, m_releaseMailbox2); |
} |
- std::string m_mailbox1; |
- std::string m_mailbox2; |
+ std::string m_mailboxName1; |
+ std::string m_mailboxName2; |
MockMailboxCallback m_mockCallback; |
- TextureLayer::MailboxCallback m_releaseMailbox1; |
- TextureLayer::MailboxCallback m_releaseMailbox2; |
+ TextureMailbox::ReleaseCallback m_releaseMailbox1; |
+ TextureMailbox::ReleaseCallback m_releaseMailbox2; |
+ TextureMailbox m_mailbox1; |
+ TextureMailbox m_mailbox2; |
}; |
class TextureLayerWithMailboxTest : public TextureLayerTest { |
@@ -220,7 +225,7 @@ protected: |
{ |
Mock::VerifyAndClearExpectations(&m_testData.m_mockCallback); |
EXPECT_CALL(m_testData.m_mockCallback, |
- Release(m_testData.m_mailbox1, _)).Times(1); |
+ Release(m_testData.m_mailboxName1, _)).Times(1); |
TextureLayerTest::TearDown(); |
} |
@@ -239,32 +244,28 @@ TEST_F(TextureLayerWithMailboxTest, replaceMailboxOnMainThreadBeforeCommit) |
EXPECT_CALL(*m_layerTreeHost, acquireLayerTextures()).Times(0); |
EXPECT_CALL(*m_layerTreeHost, setNeedsCommit()).Times(AtLeast(1)); |
- testLayer->setTextureMailbox(m_testData.m_mailbox1, |
- m_testData.m_releaseMailbox1); |
+ testLayer->setTextureMailbox(m_testData.m_mailbox1); |
Mock::VerifyAndClearExpectations(m_layerTreeHost.get()); |
EXPECT_CALL(*m_layerTreeHost, acquireLayerTextures()).Times(0); |
EXPECT_CALL(*m_layerTreeHost, setNeedsCommit()).Times(AtLeast(1)); |
EXPECT_CALL(m_testData.m_mockCallback, |
- Release(m_testData.m_mailbox1, _)).Times(1); |
- testLayer->setTextureMailbox(m_testData.m_mailbox2, |
- m_testData.m_releaseMailbox2); |
+ Release(m_testData.m_mailboxName1, _)).Times(1); |
+ testLayer->setTextureMailbox(m_testData.m_mailbox2); |
Mock::VerifyAndClearExpectations(m_layerTreeHost.get()); |
Mock::VerifyAndClearExpectations(&m_testData.m_mockCallback); |
EXPECT_CALL(*m_layerTreeHost, acquireLayerTextures()).Times(0); |
EXPECT_CALL(*m_layerTreeHost, setNeedsCommit()).Times(AtLeast(1)); |
EXPECT_CALL(m_testData.m_mockCallback, |
- Release(m_testData.m_mailbox2, _)).Times(1); |
- testLayer->setTextureMailbox(std::string(), |
- TextureLayer::MailboxCallback()); |
+ Release(m_testData.m_mailboxName2, _)).Times(1); |
+ testLayer->setTextureMailbox(TextureMailbox()); |
Mock::VerifyAndClearExpectations(m_layerTreeHost.get()); |
Mock::VerifyAndClearExpectations(&m_testData.m_mockCallback); |
// Test destructor. |
EXPECT_CALL(*m_layerTreeHost, setNeedsCommit()).Times(AtLeast(1)); |
- testLayer->setTextureMailbox(m_testData.m_mailbox1, |
- m_testData.m_releaseMailbox1); |
+ testLayer->setTextureMailbox(m_testData.m_mailbox1); |
} |
class TextureLayerImplWithMailboxThreadedCallback : public ThreadedTest { |
@@ -285,11 +286,12 @@ public: |
m_layer = TextureLayer::createForMailbox(); |
m_layer->setIsDrawable(true); |
m_layerTreeHost->setRootLayer(m_layer); |
- m_layer->setTextureMailbox( |
+ TextureMailbox mailbox( |
std::string(64, '1'), |
base::Bind( |
&TextureLayerImplWithMailboxThreadedCallback::releaseCallback, |
base::Unretained(this))); |
+ m_layer->setTextureMailbox(mailbox); |
postSetNeedsCommitToMainThread(); |
} |
@@ -298,8 +300,7 @@ public: |
if (m_resetMailbox) |
return; |
- m_layer->setTextureMailbox(std::string(), |
- TextureLayer::MailboxCallback()); |
+ m_layer->setTextureMailbox(TextureMailbox()); |
m_resetMailbox = true; |
} |
@@ -334,31 +335,26 @@ TEST_F(TextureLayerImplWithMailboxTest, testImplLayerCallbacks) |
// Test setting identical mailbox. |
EXPECT_CALL(m_testData.m_mockCallback, Release(_, _)).Times(0); |
- implLayer->setTextureMailbox(m_testData.m_mailbox1, |
- m_testData.m_releaseMailbox1); |
- implLayer->setTextureMailbox(m_testData.m_mailbox1, |
- m_testData.m_releaseMailbox1); |
+ implLayer->setTextureMailbox(m_testData.m_mailbox1); |
+ implLayer->setTextureMailbox(m_testData.m_mailbox1); |
Mock::VerifyAndClearExpectations(&m_testData.m_mockCallback); |
// Test multiple commits without a draw. |
EXPECT_CALL(m_testData.m_mockCallback, |
- Release(m_testData.m_mailbox1, _)).Times(1); |
- implLayer->setTextureMailbox(m_testData.m_mailbox2, |
- m_testData.m_releaseMailbox2); |
+ Release(m_testData.m_mailboxName1, _)).Times(1); |
+ implLayer->setTextureMailbox(m_testData.m_mailbox2); |
Mock::VerifyAndClearExpectations(&m_testData.m_mockCallback); |
// Test resetting the mailbox. |
EXPECT_CALL(m_testData.m_mockCallback, |
- Release(m_testData.m_mailbox2, _)).Times(1); |
- implLayer->setTextureMailbox(std::string(), |
- TextureLayer::MailboxCallback()); |
+ Release(m_testData.m_mailboxName2, _)).Times(1); |
+ implLayer->setTextureMailbox(TextureMailbox()); |
Mock::VerifyAndClearExpectations(&m_testData.m_mockCallback); |
// Test destructor. |
EXPECT_CALL(m_testData.m_mockCallback, |
- Release(m_testData.m_mailbox1, _)).Times(1); |
- implLayer->setTextureMailbox(m_testData.m_mailbox1, |
- m_testData.m_releaseMailbox1); |
+ Release(m_testData.m_mailboxName1, _)).Times(1); |
+ implLayer->setTextureMailbox(m_testData.m_mailbox1); |
} |
TEST_F(TextureLayerImplWithMailboxTest, testDestructorCallbackOnCreatedResource) |
@@ -368,22 +364,18 @@ TEST_F(TextureLayerImplWithMailboxTest, testDestructorCallbackOnCreatedResource) |
ASSERT_TRUE(implLayer); |
EXPECT_CALL(m_testData.m_mockCallback, |
- Release(m_testData.m_mailbox1, _)).Times(1); |
- implLayer->setTextureMailbox(m_testData.m_mailbox1, |
- m_testData.m_releaseMailbox1); |
+ Release(m_testData.m_mailboxName1, _)).Times(1); |
+ implLayer->setTextureMailbox(m_testData.m_mailbox1); |
implLayer->willDraw(m_hostImpl.activeTree()->resource_provider()); |
implLayer->didDraw(m_hostImpl.activeTree()->resource_provider()); |
- implLayer->setTextureMailbox(std::string(), |
- TextureLayer::MailboxCallback()); |
+ implLayer->setTextureMailbox(TextureMailbox()); |
} |
TEST_F(TextureLayerImplWithMailboxTest, testCallbackOnInUseResource) |
{ |
ResourceProvider *provider = m_hostImpl.activeTree()->resource_provider(); |
ResourceProvider::ResourceId id = |
- provider->createResourceFromTextureMailbox( |
- m_testData.m_mailbox1, |
- m_testData.m_releaseMailbox1); |
+ provider->createResourceFromTextureMailbox(m_testData.m_mailbox1); |
provider->allocateForTesting(id); |
// Transfer some resources to the parent. |
@@ -396,7 +388,7 @@ TEST_F(TextureLayerImplWithMailboxTest, testCallbackOnInUseResource) |
provider->deleteResource(id); |
Mock::VerifyAndClearExpectations(&m_testData.m_mockCallback); |
EXPECT_CALL(m_testData.m_mockCallback, |
- Release(m_testData.m_mailbox1, _)).Times(1); |
+ Release(m_testData.m_mailboxName1, _)).Times(1); |
provider->receiveFromParent(list); |
} |