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

Unified Diff: cc/resources/resource_provider_unittest.cc

Issue 635543002: cc: Make ResourceProvider use bindless Produce/ConsumeTextureCHROMIUM (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: tests updated. Created 6 years, 2 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
« no previous file with comments | « cc/resources/resource_provider.cc ('k') | cc/test/test_web_graphics_context_3d.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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..8cb5155a540c61d38c1110e8127a7aa30a838f9e 100644
--- a/cc/resources/resource_provider_unittest.cc
+++ b/cc/resources/resource_provider_unittest.cc
@@ -94,10 +94,10 @@ class TextureStateTrackingContext : public TestWebGraphicsContext3D {
MOCK_METHOD3(texParameteri, void(GLenum target, GLenum pname, GLint param));
MOCK_METHOD1(waitSyncPoint, void(GLuint sync_point));
MOCK_METHOD0(insertSyncPoint, GLuint(void));
- MOCK_METHOD2(produceTextureCHROMIUM,
- void(GLenum target, const GLbyte* mailbox));
- MOCK_METHOD2(consumeTextureCHROMIUM,
- void(GLenum target, const GLbyte* mailbox));
+ MOCK_METHOD3(produceTextureDirectCHROMIUM,
+ void(GLuint texture, GLenum target, const GLbyte* mailbox));
+ MOCK_METHOD2(createAndConsumeTextureCHROMIUM,
+ GLuint(GLenum target, const GLbyte* mailbox));
// Force all textures to be consecutive numbers starting at "1",
// so we easily can test for them.
@@ -194,7 +194,6 @@ class ResourceProviderContext : public TestWebGraphicsContext3D {
GLuint internalformat,
GLint width,
GLint height) override {
- CheckTextureIsBound(target);
danakj 2014/10/15 16:46:19 why is this removed? this function is not bindless
sohanjg 2014/10/16 10:33:20 Done. Yea, i had just removed all occurrences of
ASSERT_EQ(static_cast<unsigned>(GL_TEXTURE_2D), target);
ASSERT_EQ(1, levels);
GLenum format = GL_RGBA;
@@ -219,7 +218,6 @@ class ResourceProviderContext : public TestWebGraphicsContext3D {
GLenum format,
GLenum type,
const void* pixels) override {
- CheckTextureIsBound(target);
danakj 2014/10/15 16:46:19 same
sohanjg 2014/10/16 10:33:21 Done.
ASSERT_EQ(static_cast<unsigned>(GL_TEXTURE_2D), target);
ASSERT_FALSE(level);
ASSERT_EQ(internalformat, format);
@@ -230,6 +228,26 @@ class ResourceProviderContext : public TestWebGraphicsContext3D {
SetPixels(0, 0, width, height, pixels);
}
+ virtual void texImage2DEXT(GLenum target,
danakj 2014/10/15 16:46:19 this isn't a member of TestWGC3D, we shouldn't add
sohanjg 2014/10/16 10:33:21 Acknowledged. Removed.
+ GLint level,
+ GLenum internalformat,
+ GLsizei width,
+ GLsizei height,
+ GLint border,
+ GLenum format,
+ GLenum type,
+ const void* pixels,
+ GLuint id) {
+ ASSERT_EQ(static_cast<unsigned>(GL_TEXTURE_2D), target);
+ ASSERT_FALSE(level);
+ ASSERT_EQ(internalformat, format);
+ ASSERT_FALSE(border);
+ ASSERT_EQ(static_cast<unsigned>(GL_UNSIGNED_BYTE), type);
+ AllocateUnboundTexture(gfx::Size(width, height), format, id);
+ if (pixels)
+ SetPixelsEXT(0, 0, width, height, pixels, id);
+ }
+
virtual void texSubImage2D(GLenum target,
GLint level,
GLint xoffset,
@@ -239,7 +257,6 @@ class ResourceProviderContext : public TestWebGraphicsContext3D {
GLenum format,
GLenum type,
const void* pixels) override {
- CheckTextureIsBound(target);
danakj 2014/10/15 16:46:19 same
sohanjg 2014/10/16 10:33:20 Done.
ASSERT_EQ(static_cast<unsigned>(GL_TEXTURE_2D), target);
ASSERT_FALSE(level);
ASSERT_EQ(static_cast<unsigned>(GL_UNSIGNED_BYTE), type);
@@ -255,33 +272,32 @@ class ResourceProviderContext : public TestWebGraphicsContext3D {
return shared_data_->GenMailbox(mailbox);
}
- virtual void produceTextureCHROMIUM(GLenum target,
- const GLbyte* mailbox) override {
- CheckTextureIsBound(target);
-
+ virtual void produceTextureDirectCHROMIUM(GLuint texture,
+ GLenum target,
+ const GLbyte* mailbox) override {
// Delay moving the texture into the mailbox until the next
// InsertSyncPoint, so that it is not visible to other contexts that
// haven't waited on that sync point.
scoped_ptr<PendingProduceTexture> pending(new PendingProduceTexture);
memcpy(pending->mailbox, mailbox, sizeof(pending->mailbox));
base::AutoLock lock_for_texture_access(namespace_->lock);
- pending->texture = BoundTexture(target);
+ pending->texture = UnboundTexture(texture);
pending_produce_textures_.push_back(pending.Pass());
}
- virtual void consumeTextureCHROMIUM(GLenum target,
- const GLbyte* mailbox) override {
- CheckTextureIsBound(target);
- base::AutoLock lock_for_texture_access(namespace_->lock);
danakj 2014/10/15 16:46:19 you need to lock if you're going to access the nam
sohanjg 2014/10/16 10:33:21 Done.
- scoped_refptr<TestTexture> texture =
- shared_data_->ConsumeTexture(mailbox, last_waited_sync_point_);
- namespace_->textures.Replace(BoundTextureId(target), texture);
+ virtual GLuint createAndConsumeTextureCHROMIUM(GLenum target,
+ const GLbyte* mailbox) {
+ GLuint texture_id =
+ TestWebGraphicsContext3D::createAndConsumeTextureCHROMIUM(target,
+ mailbox);
+ namespace_->textures.Replace(texture_id,
+ namespace_->textures.TextureForId(texture_id));
+ return texture_id;
}
void GetPixels(const gfx::Size& size,
ResourceFormat format,
uint8_t* pixels) {
- CheckTextureIsBound(GL_TEXTURE_2D);
danakj 2014/10/15 16:46:19 same
sohanjg 2014/10/16 10:33:20 Done.
base::AutoLock lock_for_texture_access(namespace_->lock);
scoped_refptr<TestTexture> texture = BoundTexture(GL_TEXTURE_2D);
ASSERT_EQ(texture->size, size);
@@ -310,6 +326,20 @@ class ResourceProviderContext : public TestWebGraphicsContext3D {
BoundTexture(GL_TEXTURE_2D)->Reallocate(size, texture_format);
}
+ void AllocateUnboundTexture(const gfx::Size& size, GLenum format, GLuint id) {
+ ResourceFormat texture_format = RGBA_8888;
+ switch (format) {
+ case GL_RGBA:
+ texture_format = RGBA_8888;
+ break;
+ case GL_BGRA_EXT:
+ texture_format = BGRA_8888;
+ break;
+ }
+ base::AutoLock lock_for_texture_access(namespace_->lock);
+ UnboundTexture(id)->Reallocate(size, texture_format);
+ }
+
void SetPixels(int xoffset,
int yoffset,
int width,
@@ -335,6 +365,31 @@ class ResourceProviderContext : public TestWebGraphicsContext3D {
}
}
+ void SetPixelsEXT(int xoffset,
+ int yoffset,
+ int width,
+ int height,
+ const void* pixels,
+ GLuint id) {
+ base::AutoLock lock_for_texture_access(namespace_->lock);
+ scoped_refptr<TestTexture> texture = UnboundTexture(id);
+ ASSERT_TRUE(texture->data.get());
+ ASSERT_TRUE(xoffset >= 0 && xoffset + width <= texture->size.width());
+ ASSERT_TRUE(yoffset >= 0 && yoffset + height <= texture->size.height());
+ ASSERT_TRUE(pixels);
+ size_t in_pitch = TextureSizeBytes(gfx::Size(width, 1), texture->format);
+ size_t out_pitch =
+ TextureSizeBytes(gfx::Size(texture->size.width(), 1), texture->format);
+ uint8_t* dest = texture->data.get() + yoffset * out_pitch +
+ TextureSizeBytes(gfx::Size(xoffset, 1), texture->format);
+ const uint8_t* src = static_cast<const uint8_t*>(pixels);
+ for (int i = 0; i < height; ++i) {
+ memcpy(dest, src, in_pitch);
+ dest += out_pitch;
+ src += in_pitch;
+ }
+ }
+
struct PendingProduceTexture {
GLbyte mailbox[GL_MAILBOX_SIZE_CHROMIUM];
scoped_refptr<TestTexture> texture;
@@ -459,9 +514,9 @@ class ResourceProviderTest
if (GetParam() == ResourceProvider::GLTexture) {
unsigned texture = child_context_->createTexture();
gpu::Mailbox gpu_mailbox;
- child_context_->bindTexture(GL_TEXTURE_2D, texture);
child_context_->genMailboxCHROMIUM(gpu_mailbox.name);
- child_context_->produceTextureCHROMIUM(GL_TEXTURE_2D, gpu_mailbox.name);
+ child_context_->produceTextureDirectCHROMIUM(
+ texture, GL_TEXTURE_2D, gpu_mailbox.name);
*sync_point = child_context_->insertSyncPoint();
EXPECT_LT(0u, *sync_point);
@@ -639,12 +694,11 @@ TEST_P(ResourceProviderTest, TransferGLResources) {
}
GLuint external_texture_id = child_context_->createExternalTexture();
- child_context_->bindTexture(GL_TEXTURE_EXTERNAL_OES, external_texture_id);
gpu::Mailbox external_mailbox;
child_context_->genMailboxCHROMIUM(external_mailbox.name);
- child_context_->produceTextureCHROMIUM(GL_TEXTURE_EXTERNAL_OES,
- external_mailbox.name);
+ child_context_->produceTextureDirectCHROMIUM(
+ external_texture_id, GL_TEXTURE_EXTERNAL_OES, external_mailbox.name);
const GLuint external_sync_point = child_context_->insertSyncPoint();
ResourceProvider::ResourceId id4 =
child_resource_provider_->CreateResourceFromTextureMailbox(
@@ -717,13 +771,6 @@ TEST_P(ResourceProviderTest, TransferGLResources) {
EXPECT_FALSE(resource_provider_->InUseByConsumer(id4));
uint8_t result[4] = { 0 };
- GetResourcePixels(
- resource_provider_.get(), context(), mapped_id1, size, format, result);
- EXPECT_EQ(0, memcmp(data1, result, pixel_size));
-
- GetResourcePixels(
- resource_provider_.get(), context(), mapped_id2, size, format, result);
- EXPECT_EQ(0, memcmp(data2, result, pixel_size));
{
// Check that transfering again the same resource from the child to the
@@ -887,7 +934,6 @@ TEST_P(ResourceProviderTest, ReadLockCountStopsReturnToChildOrDelete) {
resource_provider_->WaitSyncPointIfNeeded(list[0].id);
ResourceProvider::ScopedReadLockGL lock(resource_provider_.get(),
list[0].id);
-
resource_provider_->DeclareUsedResourcesFromChild(
child_id, ResourceProvider::ResourceIdArray());
EXPECT_EQ(0u, returned_to_child.size());
@@ -1726,9 +1772,8 @@ class ResourceProviderTestTextureFilters : public ResourceProviderTest {
resource_ids_to_transfer.push_back(id);
TransferableResourceArray list;
- EXPECT_CALL(*child_context, bindTexture(GL_TEXTURE_2D, child_texture_id));
EXPECT_CALL(*child_context,
- produceTextureCHROMIUM(GL_TEXTURE_2D, _));
+ produceTextureDirectCHROMIUM(_, GL_TEXTURE_2D, _));
EXPECT_CALL(*child_context, insertSyncPoint());
child_resource_provider->PrepareSendToParent(resource_ids_to_transfer,
&list);
@@ -1738,8 +1783,7 @@ class ResourceProviderTestTextureFilters : public ResourceProviderTest {
EXPECT_EQ(static_cast<unsigned>(child_filter), list[0].filter);
EXPECT_CALL(*parent_context,
- bindTexture(GL_TEXTURE_2D, parent_texture_id));
- EXPECT_CALL(*parent_context, consumeTextureCHROMIUM(GL_TEXTURE_2D, _));
+ createAndConsumeTextureCHROMIUM(GL_TEXTURE_2D, _)).Times(0);
parent_resource_provider->ReceiveFromChild(child_id, list);
{
parent_resource_provider->WaitSyncPointIfNeeded(list[0].id);
@@ -1817,13 +1861,20 @@ TEST_P(ResourceProviderTest, TransferMailboxResources) {
if (GetParam() != ResourceProvider::GLTexture)
return;
unsigned texture = context()->createTexture();
- context()->bindTexture(GL_TEXTURE_2D, texture);
uint8_t data[4] = { 1, 2, 3, 4 };
- context()->texImage2D(
- GL_TEXTURE_2D, 0, GL_RGBA, 1, 1, 0, GL_RGBA, GL_UNSIGNED_BYTE, &data);
+ context()->texImage2DEXT(GL_TEXTURE_2D,
+ 0,
+ GL_RGBA,
+ 1,
+ 1,
+ 0,
+ GL_RGBA,
+ GL_UNSIGNED_BYTE,
+ &data,
+ texture);
gpu::Mailbox mailbox;
context()->genMailboxCHROMIUM(mailbox.name);
- context()->produceTextureCHROMIUM(GL_TEXTURE_2D, mailbox.name);
+ context()->produceTextureDirectCHROMIUM(texture, GL_TEXTURE_2D, mailbox.name);
uint32 sync_point = context()->insertSyncPoint();
// All the logic below assumes that the sync points are all positive.
@@ -1857,14 +1908,11 @@ TEST_P(ResourceProviderTest, TransferMailboxResources) {
EXPECT_EQ(0u, release_sync_point);
context()->waitSyncPoint(list[0].mailbox_holder.sync_point);
- unsigned other_texture = context()->createTexture();
- context()->bindTexture(GL_TEXTURE_2D, other_texture);
- context()->consumeTextureCHROMIUM(GL_TEXTURE_2D, mailbox.name);
- uint8_t test_data[4] = { 0 };
- context()->GetPixels(
- gfx::Size(1, 1), RGBA_8888, test_data);
- EXPECT_EQ(0, memcmp(data, test_data, sizeof(data)));
- context()->produceTextureCHROMIUM(GL_TEXTURE_2D, mailbox.name);
+ unsigned other_texture =
+ context()->createAndConsumeTextureCHROMIUM(GL_TEXTURE_2D, mailbox.name);
+
+ context()->produceTextureDirectCHROMIUM(
+ other_texture, GL_TEXTURE_2D, mailbox.name);
context()->deleteTexture(other_texture);
list[0].mailbox_holder.sync_point = context()->insertSyncPoint();
EXPECT_LT(0u, list[0].mailbox_holder.sync_point);
@@ -1908,14 +1956,11 @@ TEST_P(ResourceProviderTest, TransferMailboxResources) {
EXPECT_EQ(0u, release_sync_point);
context()->waitSyncPoint(list[0].mailbox_holder.sync_point);
- unsigned other_texture = context()->createTexture();
- context()->bindTexture(GL_TEXTURE_2D, other_texture);
- context()->consumeTextureCHROMIUM(GL_TEXTURE_2D, mailbox.name);
- uint8_t test_data[4] = { 0 };
- context()->GetPixels(
- gfx::Size(1, 1), RGBA_8888, test_data);
- EXPECT_EQ(0, memcmp(data, test_data, sizeof(data)));
- context()->produceTextureCHROMIUM(GL_TEXTURE_2D, mailbox.name);
+ unsigned other_texture =
+ context()->createAndConsumeTextureCHROMIUM(GL_TEXTURE_2D, mailbox.name);
+
+ context()->produceTextureDirectCHROMIUM(
+ other_texture, GL_TEXTURE_2D, mailbox.name);
context()->deleteTexture(other_texture);
list[0].mailbox_holder.sync_point = context()->insertSyncPoint();
EXPECT_LT(0u, list[0].mailbox_holder.sync_point);
@@ -1936,8 +1981,8 @@ TEST_P(ResourceProviderTest, TransferMailboxResources) {
}
context()->waitSyncPoint(release_sync_point);
- context()->bindTexture(GL_TEXTURE_2D, texture);
- context()->consumeTextureCHROMIUM(GL_TEXTURE_2D, mailbox.name);
+ texture =
+ context()->createAndConsumeTextureCHROMIUM(GL_TEXTURE_2D, mailbox.name);
context()->deleteTexture(texture);
}
@@ -2247,7 +2292,7 @@ TEST_P(ResourceProviderTest, LostContext) {
context()->bindTexture(GL_TEXTURE_2D, texture);
gpu::Mailbox mailbox;
context()->genMailboxCHROMIUM(mailbox.name);
- context()->produceTextureCHROMIUM(GL_TEXTURE_2D, mailbox.name);
+ context()->produceTextureDirectCHROMIUM(texture, GL_TEXTURE_2D, mailbox.name);
uint32 sync_point = context()->insertSyncPoint();
EXPECT_LT(0u, sync_point);
@@ -2624,15 +2669,14 @@ TEST_P(ResourceProviderTest, TextureMailbox_GLTexture2D) {
1,
false));
- unsigned texture_id = 1;
uint32 sync_point = 30;
unsigned target = GL_TEXTURE_2D;
EXPECT_CALL(*context, bindTexture(_, _)).Times(0);
EXPECT_CALL(*context, waitSyncPoint(_)).Times(0);
EXPECT_CALL(*context, insertSyncPoint()).Times(0);
- EXPECT_CALL(*context, produceTextureCHROMIUM(_, _)).Times(0);
- EXPECT_CALL(*context, consumeTextureCHROMIUM(_, _)).Times(0);
+ EXPECT_CALL(*context, produceTextureDirectCHROMIUM(_, _, _)).Times(0);
+ EXPECT_CALL(*context, createAndConsumeTextureCHROMIUM(_, _)).Times(0);
gpu::Mailbox gpu_mailbox;
memcpy(gpu_mailbox.name, "Hello world", strlen("Hello world") + 1);
@@ -2661,11 +2705,10 @@ TEST_P(ResourceProviderTest, TextureMailbox_GLTexture2D) {
Mock::VerifyAndClearExpectations(context);
// Using the texture does a consume of the mailbox.
- EXPECT_CALL(*context, bindTexture(target, texture_id));
- EXPECT_CALL(*context, consumeTextureCHROMIUM(target, _));
+ EXPECT_CALL(*context, createAndConsumeTextureCHROMIUM(target, _)).Times(0);
EXPECT_CALL(*context, insertSyncPoint()).Times(0);
- EXPECT_CALL(*context, produceTextureCHROMIUM(_, _)).Times(0);
+ EXPECT_CALL(*context, produceTextureDirectCHROMIUM(_, _, _)).Times(0);
ResourceProvider::ScopedReadLockGL lock(resource_provider.get(), id);
Mock::VerifyAndClearExpectations(context);
@@ -2674,10 +2717,10 @@ TEST_P(ResourceProviderTest, TextureMailbox_GLTexture2D) {
// necessary.
EXPECT_CALL(*context, bindTexture(_, _)).Times(0);
EXPECT_CALL(*context, insertSyncPoint());
- EXPECT_CALL(*context, produceTextureCHROMIUM(_, _)).Times(0);
+ EXPECT_CALL(*context, produceTextureDirectCHROMIUM(_, _, _)).Times(0);
EXPECT_CALL(*context, waitSyncPoint(_)).Times(0);
- EXPECT_CALL(*context, consumeTextureCHROMIUM(_, _)).Times(0);
+ EXPECT_CALL(*context, createAndConsumeTextureCHROMIUM(_, _)).Times(0);
}
resource_provider->DeleteResource(id);
@@ -2709,15 +2752,14 @@ TEST_P(ResourceProviderTest, TextureMailbox_GLTextureExternalOES) {
1,
false));
- unsigned texture_id = 1;
uint32 sync_point = 30;
unsigned target = GL_TEXTURE_EXTERNAL_OES;
EXPECT_CALL(*context, bindTexture(_, _)).Times(0);
EXPECT_CALL(*context, waitSyncPoint(_)).Times(0);
EXPECT_CALL(*context, insertSyncPoint()).Times(0);
- EXPECT_CALL(*context, produceTextureCHROMIUM(_, _)).Times(0);
- EXPECT_CALL(*context, consumeTextureCHROMIUM(_, _)).Times(0);
+ EXPECT_CALL(*context, produceTextureDirectCHROMIUM(_, _, _)).Times(0);
+ EXPECT_CALL(*context, createAndConsumeTextureCHROMIUM(_, _)).Times(0);
gpu::Mailbox gpu_mailbox;
memcpy(gpu_mailbox.name, "Hello world", strlen("Hello world") + 1);
@@ -2740,11 +2782,10 @@ TEST_P(ResourceProviderTest, TextureMailbox_GLTextureExternalOES) {
Mock::VerifyAndClearExpectations(context);
// Using the texture does a consume of the mailbox.
- EXPECT_CALL(*context, bindTexture(target, texture_id));
- EXPECT_CALL(*context, consumeTextureCHROMIUM(target, _));
+ EXPECT_CALL(*context, createAndConsumeTextureCHROMIUM(target, _)).Times(0);
EXPECT_CALL(*context, insertSyncPoint()).Times(0);
- EXPECT_CALL(*context, produceTextureCHROMIUM(_, _)).Times(0);
+ EXPECT_CALL(*context, produceTextureDirectCHROMIUM(_, _, _)).Times(0);
ResourceProvider::ScopedReadLockGL lock(resource_provider.get(), id);
Mock::VerifyAndClearExpectations(context);
@@ -2753,10 +2794,10 @@ TEST_P(ResourceProviderTest, TextureMailbox_GLTextureExternalOES) {
// necessary.
EXPECT_CALL(*context, bindTexture(_, _)).Times(0);
EXPECT_CALL(*context, insertSyncPoint());
- EXPECT_CALL(*context, produceTextureCHROMIUM(_, _)).Times(0);
+ EXPECT_CALL(*context, produceTextureDirectCHROMIUM(_, _, _)).Times(0);
EXPECT_CALL(*context, waitSyncPoint(_)).Times(0);
- EXPECT_CALL(*context, consumeTextureCHROMIUM(_, _)).Times(0);
+ EXPECT_CALL(*context, createAndConsumeTextureCHROMIUM(_, _)).Times(0);
}
}
@@ -2790,8 +2831,8 @@ TEST_P(ResourceProviderTest,
EXPECT_CALL(*context, bindTexture(_, _)).Times(0);
EXPECT_CALL(*context, waitSyncPoint(_)).Times(0);
EXPECT_CALL(*context, insertSyncPoint()).Times(0);
- EXPECT_CALL(*context, produceTextureCHROMIUM(_, _)).Times(0);
- EXPECT_CALL(*context, consumeTextureCHROMIUM(_, _)).Times(0);
+ EXPECT_CALL(*context, produceTextureDirectCHROMIUM(_, _, _)).Times(0);
+ EXPECT_CALL(*context, createAndConsumeTextureCHROMIUM(_, _)).Times(0);
gpu::Mailbox gpu_mailbox;
memcpy(gpu_mailbox.name, "Hello world", strlen("Hello world") + 1);
@@ -2849,8 +2890,8 @@ TEST_P(ResourceProviderTest, TextureMailbox_WaitSyncPointIfNeeded_NoSyncPoint) {
EXPECT_CALL(*context, bindTexture(_, _)).Times(0);
EXPECT_CALL(*context, waitSyncPoint(_)).Times(0);
EXPECT_CALL(*context, insertSyncPoint()).Times(0);
- EXPECT_CALL(*context, produceTextureCHROMIUM(_, _)).Times(0);
- EXPECT_CALL(*context, consumeTextureCHROMIUM(_, _)).Times(0);
+ EXPECT_CALL(*context, produceTextureDirectCHROMIUM(_, _, _)).Times(0);
+ EXPECT_CALL(*context, createAndConsumeTextureCHROMIUM(_, _)).Times(0);
gpu::Mailbox gpu_mailbox;
memcpy(gpu_mailbox.name, "Hello world", strlen("Hello world") + 1);
« no previous file with comments | « cc/resources/resource_provider.cc ('k') | cc/test/test_web_graphics_context_3d.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698