Index: gpu/command_buffer/client/gles2_implementation_unittest.cc |
diff --git a/gpu/command_buffer/client/gles2_implementation_unittest.cc b/gpu/command_buffer/client/gles2_implementation_unittest.cc |
index 5ce2a8b52a9603273cc1bd7bc1bf9fa57b50cea2..4c6013d6fe66c5f9ded9c92a3817444877c4468e 100644 |
--- a/gpu/command_buffer/client/gles2_implementation_unittest.cc |
+++ b/gpu/command_buffer/client/gles2_implementation_unittest.cc |
@@ -15,34 +15,30 @@ |
#define GLES2_SUPPORT_CLIENT_SIDE_ARRAYS |
#endif |
+using testing::_; |
+using testing::DoAll; |
+using testing::InSequence; |
+using testing::Invoke; |
+using testing::Mock; |
+using testing::Sequence; |
+using testing::Truly; |
+using testing::Return; |
+ |
namespace gpu { |
class GLES2MockCommandBufferHelper : public CommandBuffer { |
public: |
- static const int32 kTransferBufferId = 0x123; |
+ static const int32 kTransferBufferBaseId = 0x123; |
+ static const int32 kMaxTransferBuffers = 6; |
GLES2MockCommandBufferHelper() { } |
virtual ~GLES2MockCommandBufferHelper() { } |
// CommandBuffer implementation: |
- virtual bool Initialize(int32 size) { |
- ring_buffer_.reset(new CommandBufferEntry[size]); |
- ring_buffer_buffer_.ptr = ring_buffer_.get(); |
- ring_buffer_buffer_.size = size; |
- state_.num_entries = size / sizeof(ring_buffer_[0]); |
- state_.token = 10000; // All token checks in the tests should pass. |
+ virtual bool Initialize() { |
return true; |
} |
- virtual bool Initialize(base::SharedMemory* buffer, int32 size) { |
- GPU_NOTREACHED(); |
- return false; |
- } |
- |
- virtual Buffer GetRingBuffer() { |
- return ring_buffer_buffer_; |
- } |
- |
virtual State GetState() { |
return state_; |
} |
@@ -58,28 +54,57 @@ class GLES2MockCommandBufferHelper : public CommandBuffer { |
virtual State FlushSync(int32 put_offset, int32 last_known_get) { |
state_.put_offset = put_offset; |
state_.get_offset = put_offset; |
- OnFlush(transfer_buffer_buffer_.ptr); |
+ // Warning: This is a hack. We just happen to know that the default |
+ // transfer buffer will be the first transfer buffer. |
+ OnFlush(transfer_buffer_buffers_[0].ptr); |
return state_; |
} |
+ virtual void SetGetBuffer(int transfer_buffer_id) { |
+ ring_buffer_buffer_ = GetTransferBuffer(transfer_buffer_id); |
+ ring_buffer_ = static_cast<CommandBufferEntry*>(ring_buffer_buffer_.ptr); |
+ state_.num_entries = ring_buffer_buffer_.size / sizeof(ring_buffer_[0]); |
+ state_.token = 10000; // All token checks in the tests should pass. |
+ } |
+ |
virtual void SetGetOffset(int32 get_offset) { |
state_.get_offset = get_offset; |
} |
+ // Get's the Id of the next transfer buffer that will be returned |
+ // by CreateTransferBuffer. This is useful for testing expected ids. |
+ int32 GetNextFreeTransferBufferId() { |
+ for (size_t ii = 0; ii < arraysize(transfer_buffers_); ++ii) { |
+ if (!transfer_buffers_[ii].get()) { |
+ return kTransferBufferBaseId + ii; |
+ } |
+ } |
+ return -1; |
+ } |
+ |
virtual int32 CreateTransferBuffer(size_t size, int32 id_request) { |
- transfer_buffer_.reset(new int8[size]); |
- transfer_buffer_buffer_.ptr = transfer_buffer_.get(); |
- transfer_buffer_buffer_.size = size; |
- return kTransferBufferId; |
+ int32 id = GetNextFreeTransferBufferId(); |
+ if (id >= 0) { |
+ int32 ndx = id - kTransferBufferBaseId; |
+ transfer_buffers_[ndx].reset(new int8[size]); |
+ transfer_buffer_buffers_[ndx].ptr = transfer_buffers_[ndx].get(); |
+ transfer_buffer_buffers_[ndx].size = size; |
+ } |
+ return id; |
} |
- virtual void DestroyTransferBuffer(int32 /* id */) { |
- GPU_NOTREACHED(); |
+ void DestroyTransferBufferHelper(int32 id) { |
+ GPU_DCHECK_GE(id, kTransferBufferBaseId); |
+ GPU_DCHECK_LT(id, kTransferBufferBaseId + kMaxTransferBuffers); |
+ id -= kTransferBufferBaseId; |
+ transfer_buffers_[id].reset(); |
+ transfer_buffer_buffers_[id] = Buffer(); |
} |
virtual Buffer GetTransferBuffer(int32 id) { |
- GPU_DCHECK_EQ(id, kTransferBufferId); |
- return transfer_buffer_buffer_; |
+ GPU_DCHECK_GE(id, kTransferBufferBaseId); |
+ GPU_DCHECK_LT(id, kTransferBufferBaseId + kMaxTransferBuffers); |
+ return transfer_buffer_buffers_[id - kTransferBufferBaseId]; |
} |
virtual int32 RegisterTransferBuffer(base::SharedMemory* shared_memory, |
@@ -107,39 +132,41 @@ class GLES2MockCommandBufferHelper : public CommandBuffer { |
virtual void OnFlush(void* transfer_buffer) = 0; |
private: |
- scoped_array<int8> transfer_buffer_; |
- Buffer transfer_buffer_buffer_; |
- scoped_array<CommandBufferEntry> ring_buffer_; |
+ scoped_array<int8> transfer_buffers_[kMaxTransferBuffers]; |
+ Buffer transfer_buffer_buffers_[kMaxTransferBuffers]; |
+ CommandBufferEntry* ring_buffer_; |
Buffer ring_buffer_buffer_; |
State state_; |
}; |
class MockGLES2CommandBuffer : public GLES2MockCommandBufferHelper { |
public: |
+ MockGLES2CommandBuffer() { |
+ DelegateToFake(); |
+ } |
+ |
virtual ~MockGLES2CommandBuffer() { |
} |
// This is so we can use all the gmock functions when Flush is called. |
MOCK_METHOD1(OnFlush, void(void* result)); |
MOCK_METHOD1(DestroyTransferBuffer, void(int32 id)); |
+ |
+ void DelegateToFake() { |
+ ON_CALL(*this, DestroyTransferBuffer(_)) |
+ .WillByDefault(Invoke( |
+ this, &GLES2MockCommandBufferHelper::DestroyTransferBufferHelper)); |
+ } |
}; |
// GCC requires these declarations, but MSVC requires they not be present |
#ifndef _MSC_VER |
-const int32 GLES2MockCommandBufferHelper::kTransferBufferId; |
+const int32 GLES2MockCommandBufferHelper::kTransferBufferBaseId; |
+const int32 GLES2MockCommandBufferHelper::kMaxTransferBuffers; |
#endif |
namespace gles2 { |
-using testing::_; |
-using testing::DoAll; |
-using testing::InSequence; |
-using testing::Invoke; |
-using testing::Mock; |
-using testing::Sequence; |
-using testing::Truly; |
-using testing::Return; |
- |
ACTION_P(SetMemory, obj) { |
memcpy(arg0, &obj, sizeof(obj)); |
} |
@@ -194,8 +221,6 @@ class GLES2CommandBufferTestBase : public testing::Test { |
static const int32 kCommandBufferSizeBytes = |
kNumCommandEntries * sizeof(CommandBufferEntry); |
static const size_t kTransferBufferSize = 256; |
- static const int32 kTransferBufferId = |
- GLES2MockCommandBufferHelper::kTransferBufferId; |
static const uint8 kInitialValue = 0xBD; |
GLES2CommandBufferTestBase() |
@@ -203,7 +228,8 @@ class GLES2CommandBufferTestBase : public testing::Test { |
token_(0), |
offset_(0), |
initial_offset_(0), |
- alignment_(0) { |
+ alignment_(0), |
+ transfer_buffer_id_(-1) { |
} |
void SetupCommandBuffer(unsigned int offset, unsigned alignment) { |
@@ -212,11 +238,11 @@ class GLES2CommandBufferTestBase : public testing::Test { |
alignment_ = alignment; |
command_buffer_.reset(new MockGLES2CommandBuffer()); |
- command_buffer_->Initialize(kCommandBufferSizeBytes); |
+ command_buffer_->Initialize(); |
- EXPECT_EQ(kTransferBufferId, |
- command_buffer_->CreateTransferBuffer(kTransferBufferSize, -1)); |
- transfer_buffer_ = command_buffer_->GetTransferBuffer(kTransferBufferId); |
+ transfer_buffer_id_ = |
+ command_buffer_->CreateTransferBuffer(kTransferBufferSize, -1); |
+ transfer_buffer_ = command_buffer_->GetTransferBuffer(transfer_buffer_id_); |
ClearTransferBuffer(); |
helper_.reset(new GLES2CmdHelper(command_buffer_.get())); |
@@ -232,7 +258,7 @@ class GLES2CommandBufferTestBase : public testing::Test { |
} |
void ClearCommands() { |
- Buffer ring_buffer = command_buffer_->GetRingBuffer(); |
+ Buffer ring_buffer = helper_->get_ring_buffer(); |
memset(ring_buffer.ptr, kInitialValue, ring_buffer.size); |
} |
@@ -253,6 +279,10 @@ class GLES2CommandBufferTestBase : public testing::Test { |
return ++token_; |
} |
+ int32 GetNextFreeTransferBufferId() { |
+ return command_buffer_->GetNextFreeTransferBufferId(); |
+ } |
+ |
uint32 AllocateTransferBuffer(size_t size) { |
if (offset_ + size > kTransferBufferSize) { |
offset_ = initial_offset_; |
@@ -280,6 +310,7 @@ class GLES2CommandBufferTestBase : public testing::Test { |
uint32 offset_; |
uint32 initial_offset_; |
uint32 alignment_; |
+ int32 transfer_buffer_id_; |
}; |
// GCC requires these declarations, but MSVC requires they not be present |
@@ -287,7 +318,6 @@ class GLES2CommandBufferTestBase : public testing::Test { |
const int32 GLES2CommandBufferTestBase::kNumCommandEntries; |
const int32 GLES2CommandBufferTestBase::kCommandBufferSizeBytes; |
const size_t GLES2CommandBufferTestBase::kTransferBufferSize; |
-const int32 GLES2CommandBufferTestBase::kTransferBufferId; |
const uint8 GLES2CommandBufferTestBase::kInitialValue; |
#endif |
@@ -303,9 +333,12 @@ class TransferBufferTest : public GLES2CommandBufferTestBase { |
GLES2Implementation::kStartingOffset, |
GLES2Implementation::kAlignment); |
+ transfer_buffer_id_ = |
+ command_buffer_->CreateTransferBuffer(kTransferBufferSize, -1); |
+ |
transfer_buffer_.reset(new TransferBuffer( |
helper_.get(), |
- kTransferBufferId, |
+ transfer_buffer_id_, |
GetTransferAddressFromOffset(0, 0), |
kTransferBufferSize, |
kStartingOffset, |
@@ -327,7 +360,7 @@ const unsigned int TransferBufferTest::kAlignment; |
TEST_F(TransferBufferTest, Basic) { |
EXPECT_TRUE(transfer_buffer_->HaveBuffer()); |
- EXPECT_EQ(kTransferBufferId, transfer_buffer_->GetShmId()); |
+ EXPECT_EQ(transfer_buffer_id_, transfer_buffer_->GetShmId()); |
} |
TEST_F(TransferBufferTest, Free) { |
@@ -341,7 +374,7 @@ TEST_F(TransferBufferTest, Free) { |
// See it's freed. |
EXPECT_FALSE(transfer_buffer_->HaveBuffer()); |
// See that it gets reallocated. |
- EXPECT_EQ(kTransferBufferId, transfer_buffer_->GetShmId()); |
+ EXPECT_EQ(transfer_buffer_id_, transfer_buffer_->GetShmId()); |
EXPECT_TRUE(transfer_buffer_->HaveBuffer()); |
// Free buffer. |
@@ -473,7 +506,7 @@ class GLES2ImplementationTest : public GLES2CommandBufferTestBase { |
helper_.get(), |
kTransferBufferSize, |
transfer_buffer_.ptr, |
- kTransferBufferId, |
+ transfer_buffer_id_, |
shared_resources, |
bind_generates_resource)); |
} |
@@ -482,7 +515,7 @@ class GLES2ImplementationTest : public GLES2CommandBufferTestBase { |
.Times(1) |
.RetiresOnSaturation(); |
helper_->CommandBufferHelper::Finish(); |
- Buffer ring_buffer = command_buffer_->GetRingBuffer(); |
+ Buffer ring_buffer = helper_->get_ring_buffer(); |
commands_ = static_cast<CommandBufferEntry*>(ring_buffer.ptr) + |
command_buffer_->GetState().put_offset; |
ClearCommands(); |
@@ -525,16 +558,16 @@ TEST_F(GLES2ImplementationTest, ShaderSource) { |
Cmds expected; |
expected.set_bucket_size.Init(kBucketId, kSourceSize); |
expected.set_bucket_data1.Init( |
- kBucketId, 0, kString1Size, kTransferBufferId, |
+ kBucketId, 0, kString1Size, transfer_buffer_id_, |
AllocateTransferBuffer(kPaddedString1Size)); |
expected.set_token1.Init(GetNextToken()); |
expected.set_bucket_data2.Init( |
- kBucketId, kString1Size, kString2Size, kTransferBufferId, |
+ kBucketId, kString1Size, kString2Size, transfer_buffer_id_, |
AllocateTransferBuffer(kPaddedString2Size)); |
expected.set_token2.Init(GetNextToken()); |
expected.set_bucket_data3.Init( |
kBucketId, kString1Size + kString2Size, |
- kString3Size, kTransferBufferId, |
+ kString3Size, transfer_buffer_id_, |
AllocateTransferBuffer(kPaddedString3Size)); |
expected.set_token3.Init(GetNextToken()); |
expected.shader_source_bucket.Init(kShaderId, kBucketId); |
@@ -564,9 +597,9 @@ TEST_F(GLES2ImplementationTest, GetShaderSource) { |
Cmds expected; |
expected.set_bucket_size1.Init(kBucketId, 0); |
expected.get_shader_source.Init(kShaderId, kBucketId); |
- expected.get_bucket_size.Init(kBucketId, kTransferBufferId, 0); |
+ expected.get_bucket_size.Init(kBucketId, transfer_buffer_id_, 0); |
expected.get_bucket_data.Init( |
- kBucketId, 0, sizeof(kString), kTransferBufferId, offset); |
+ kBucketId, 0, sizeof(kString), transfer_buffer_id_, offset); |
expected.set_token1.Init(GetNextToken()); |
expected.set_bucket_size2.Init(kBucketId, 0); |
char buf[sizeof(kString) + 1]; |
@@ -628,13 +661,13 @@ TEST_F(GLES2ImplementationTest, DrawArraysClientSideBuffers) { |
expected.bind_to_emu.Init(GL_ARRAY_BUFFER, kEmuBufferId); |
expected.set_size.Init(GL_ARRAY_BUFFER, kTotalSize, 0, 0, GL_DYNAMIC_DRAW); |
expected.copy_data1.Init( |
- GL_ARRAY_BUFFER, kEmuOffset1, kSize1, kTransferBufferId, |
+ GL_ARRAY_BUFFER, kEmuOffset1, kSize1, transfer_buffer_id_, |
AllocateTransferBuffer(kSize1)); |
expected.set_token1.Init(GetNextToken()); |
expected.set_pointer1.Init(kAttribIndex1, kNumComponents1, |
GL_FLOAT, GL_FALSE, 0, kEmuOffset1); |
expected.copy_data2.Init( |
- GL_ARRAY_BUFFER, kEmuOffset2, kSize2, kTransferBufferId, |
+ GL_ARRAY_BUFFER, kEmuOffset2, kSize2, transfer_buffer_id_, |
AllocateTransferBuffer(kSize2)); |
expected.set_token2.Init(GetNextToken()); |
expected.set_pointer2.Init(kAttribIndex2, kNumComponents2, |
@@ -704,19 +737,19 @@ TEST_F(GLES2ImplementationTest, DrawElementsClientSideBuffers) { |
expected.set_index_size.Init( |
GL_ELEMENT_ARRAY_BUFFER, kIndexSize, 0, 0, GL_DYNAMIC_DRAW); |
expected.copy_data0.Init( |
- GL_ELEMENT_ARRAY_BUFFER, 0, kIndexSize, kTransferBufferId, |
+ GL_ELEMENT_ARRAY_BUFFER, 0, kIndexSize, transfer_buffer_id_, |
AllocateTransferBuffer(kIndexSize)); |
expected.set_token0.Init(GetNextToken()); |
expected.bind_to_emu.Init(GL_ARRAY_BUFFER, kEmuBufferId); |
expected.set_size.Init(GL_ARRAY_BUFFER, kTotalSize, 0, 0, GL_DYNAMIC_DRAW); |
expected.copy_data1.Init( |
- GL_ARRAY_BUFFER, kEmuOffset1, kSize1, kTransferBufferId, |
+ GL_ARRAY_BUFFER, kEmuOffset1, kSize1, transfer_buffer_id_, |
AllocateTransferBuffer(kSize1)); |
expected.set_token1.Init(GetNextToken()); |
expected.set_pointer1.Init(kAttribIndex1, kNumComponents1, |
GL_FLOAT, GL_FALSE, 0, kEmuOffset1); |
expected.copy_data2.Init( |
- GL_ARRAY_BUFFER, kEmuOffset2, kSize2, kTransferBufferId, |
+ GL_ARRAY_BUFFER, kEmuOffset2, kSize2, transfer_buffer_id_, |
AllocateTransferBuffer(kSize2)); |
expected.set_token2.Init(GetNextToken()); |
expected.set_pointer2.Init(kAttribIndex2, kNumComponents2, |
@@ -780,17 +813,17 @@ TEST_F(GLES2ImplementationTest, |
expected.enable2.Init(kAttribIndex2); |
expected.bind_to_index.Init(GL_ELEMENT_ARRAY_BUFFER, kClientIndexBufferId); |
expected.get_max.Init(kClientIndexBufferId, kCount, GL_UNSIGNED_SHORT, |
- kIndexOffset, kTransferBufferId, 0); |
+ kIndexOffset, transfer_buffer_id_, 0); |
expected.bind_to_emu.Init(GL_ARRAY_BUFFER, kEmuBufferId); |
expected.set_size.Init(GL_ARRAY_BUFFER, kTotalSize, 0, 0, GL_DYNAMIC_DRAW); |
expected.copy_data1.Init( |
- GL_ARRAY_BUFFER, kEmuOffset1, kSize1, kTransferBufferId, |
+ GL_ARRAY_BUFFER, kEmuOffset1, kSize1, transfer_buffer_id_, |
AllocateTransferBuffer(kSize1)); |
expected.set_token1.Init(GetNextToken()); |
expected.set_pointer1.Init(kAttribIndex1, kNumComponents1, |
GL_FLOAT, GL_FALSE, 0, kEmuOffset1); |
expected.copy_data2.Init( |
- GL_ARRAY_BUFFER, kEmuOffset2, kSize2, kTransferBufferId, |
+ GL_ARRAY_BUFFER, kEmuOffset2, kSize2, transfer_buffer_id_, |
AllocateTransferBuffer(kSize2)); |
expected.set_token2.Init(GetNextToken()); |
expected.set_pointer2.Init(kAttribIndex2, kNumComponents2, |
@@ -837,7 +870,7 @@ TEST_F(GLES2ImplementationTest, GetVertexBufferPointerv) { |
expected.set_pointer.Init(kAttribIndex2, kNumComponents2, GL_FLOAT, GL_FALSE, |
kStride2, kOffset2); |
expected.get_pointer.Init(kAttribIndex2, GL_VERTEX_ATTRIB_ARRAY_POINTER, |
- kTransferBufferId, 0); |
+ transfer_buffer_id_, 0); |
// One call to flush to way for GetVertexAttribPointerv |
EXPECT_CALL(*command_buffer_, OnFlush(_)) |
@@ -894,10 +927,10 @@ TEST_F(GLES2ImplementationTest, GetVertexAttrib) { |
kStride2, kOffset2); |
expected.get1.Init(kAttribIndex2, |
GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING, |
- kTransferBufferId, 0); |
+ transfer_buffer_id_, 0); |
expected.get2.Init(kAttribIndex1, |
GL_CURRENT_VERTEX_ATTRIB, |
- kTransferBufferId, 0); |
+ transfer_buffer_id_, 0); |
FourFloats current_attrib(1.2f, 3.4f, 5.6f, 7.8f); |
@@ -960,7 +993,7 @@ TEST_F(GLES2ImplementationTest, ReservedIds) { |
GetError get; |
}; |
Cmds expected; |
- expected.get.Init(kTransferBufferId, 0); |
+ expected.get.Init(transfer_buffer_id_, 0); |
// One call to flush to wait for GetError |
EXPECT_CALL(*command_buffer_, OnFlush(_)) |
@@ -998,15 +1031,15 @@ TEST_F(GLES2ImplementationTest, ReadPixels2Reads) { |
Cmds expected; |
expected.read1.Init( |
0, 0, kWidth, kHeight / 2, kFormat, kType, |
- kTransferBufferId, |
+ transfer_buffer_id_, |
AllocateTransferBuffer(kWidth * kHeight / 2 * kBytesPerPixel), |
- kTransferBufferId, 0); |
+ transfer_buffer_id_, 0); |
expected.set_token1.Init(GetNextToken()); |
expected.read2.Init( |
0, kHeight / 2, kWidth, kHeight / 2, kFormat, kType, |
- kTransferBufferId, |
+ transfer_buffer_id_, |
AllocateTransferBuffer(kWidth * kHeight / 2 * kBytesPerPixel), |
- kTransferBufferId, 0); |
+ transfer_buffer_id_, 0); |
expected.set_token2.Init(GetNextToken()); |
scoped_array<int8> buffer(new int8[kWidth * kHeight * kBytesPerPixel]); |
@@ -1033,9 +1066,9 @@ TEST_F(GLES2ImplementationTest, ReadPixelsBadFormatType) { |
Cmds expected; |
expected.read.Init( |
0, 0, kWidth, kHeight / 2, kFormat, kType, |
- kTransferBufferId, |
+ transfer_buffer_id_, |
AllocateTransferBuffer(kWidth * kHeight * kBytesPerPixel), |
- kTransferBufferId, 0); |
+ transfer_buffer_id_, 0); |
expected.set_token.Init(GetNextToken()); |
scoped_array<int8> buffer(new int8[kWidth * kHeight * kBytesPerPixel]); |
@@ -1058,7 +1091,7 @@ TEST_F(GLES2ImplementationTest, FreeUnusedSharedMemory) { |
uint32 offset = 0; |
Cmds expected; |
expected.buf.Init( |
- kTarget, kOffset, kSize, kTransferBufferId, offset); |
+ kTarget, kOffset, kSize, transfer_buffer_id_, offset); |
expected.set_token.Init(GetNextToken()); |
void* mem = gl_->MapBufferSubDataCHROMIUM( |
@@ -1083,7 +1116,7 @@ TEST_F(GLES2ImplementationTest, MapUnmapBufferSubDataCHROMIUM) { |
uint32 offset = 0; |
Cmds expected; |
expected.buf.Init( |
- kTarget, kOffset, kSize, kTransferBufferId, offset); |
+ kTarget, kOffset, kSize, GetNextFreeTransferBufferId(), offset); |
expected.set_token.Init(GetNextToken()); |
void* mem = gl_->MapBufferSubDataCHROMIUM( |
@@ -1138,7 +1171,7 @@ TEST_F(GLES2ImplementationTest, MapUnmapTexSubImage2DCHROMIUM) { |
Cmds expected; |
expected.tex.Init( |
GL_TEXTURE_2D, kLevel, kXOffset, kYOffset, kWidth, kHeight, kFormat, |
- kType, kTransferBufferId, offset, GL_FALSE); |
+ kType, GetNextFreeTransferBufferId(), offset, GL_FALSE); |
expected.set_token.Init(GetNextToken()); |
void* mem = gl_->MapTexSubImage2DCHROMIUM( |
@@ -1273,8 +1306,8 @@ TEST_F(GLES2ImplementationTest, GetMultipleIntegervCHROMIUMValidArgs) { |
const uint32 kResultsOffset = AllocateTransferBuffer(kResultsSize); |
Cmds expected; |
expected.get_multiple.Init( |
- kTransferBufferId, kPnamesOffset, kNumPnames, |
- kTransferBufferId, kResultsOffset, kResultsSize); |
+ transfer_buffer_id_, kPnamesOffset, kNumPnames, |
+ transfer_buffer_id_, kResultsOffset, kResultsSize); |
expected.set_token.Init(GetNextToken()); |
const GLint kSentinel = 0x12345678; |
@@ -1383,9 +1416,9 @@ TEST_F(GLES2ImplementationTest, GetProgramInfoCHROMIUMGoodArgs) { |
Cmds expected; |
expected.set_bucket_size1.Init(kBucketId, 0); |
expected.get_program_info.Init(kProgramId, kBucketId); |
- expected.get_bucket_size.Init(kBucketId, kTransferBufferId, 0); |
+ expected.get_bucket_size.Init(kBucketId, transfer_buffer_id_, 0); |
expected.get_bucket_data.Init( |
- kBucketId, 0, sizeof(kString), kTransferBufferId, offset); |
+ kBucketId, 0, sizeof(kString), transfer_buffer_id_, offset); |
expected.set_token1.Init(GetNextToken()); |
expected.set_bucket_size2.Init(kBucketId, 0); |
gl_->GetProgramInfoCHROMIUM(kProgramId, sizeof(buf), &size, &buf); |
@@ -1424,9 +1457,9 @@ TEST_F(GLES2ImplementationTest, GetProgramInfoCHROMIUMBadArgs) { |
Cmds expected; |
expected.set_bucket_size1.Init(kBucketId, 0); |
expected.get_program_info.Init(kProgramId, kBucketId); |
- expected.get_bucket_size.Init(kBucketId, kTransferBufferId, 0); |
+ expected.get_bucket_size.Init(kBucketId, transfer_buffer_id_, 0); |
expected.get_bucket_data.Init( |
- kBucketId, 0, sizeof(kString), kTransferBufferId, offset); |
+ kBucketId, 0, sizeof(kString), transfer_buffer_id_, offset); |
expected.set_token1.Init(GetNextToken()); |
expected.set_bucket_size2.Init(kBucketId, 0); |
gl_->GetProgramInfoCHROMIUM(kProgramId, 6, &size, &buf); |
@@ -1602,7 +1635,7 @@ TEST_F(GLES2ImplementationTest, TexImage2D) { |
Cmds expected; |
expected.tex_image_2d.Init( |
kTarget, kLevel, kFormat, kWidth, kHeight, kBorder, kFormat, kType, |
- kTransferBufferId, offset); |
+ transfer_buffer_id_, offset); |
expected.set_token.Init(GetNextToken()); |
gl_->TexImage2D( |
kTarget, kLevel, kFormat, kWidth, kHeight, kBorder, kFormat, kType, |
@@ -1617,7 +1650,7 @@ TEST_F(GLES2ImplementationTest, TexImage2D) { |
Cmds2 expected2; |
expected2.tex_image_2d.Init( |
kTarget, kLevel, kFormat, kWidth, kHeight, kBorder, kFormat, kType, |
- kTransferBufferId, offset2); |
+ transfer_buffer_id_, offset2); |
expected2.set_token.Init(GetNextToken()); |
const void* commands2 = GetPut(); |
gl_->PixelStorei(GL_UNPACK_FLIP_Y_CHROMIUM, GL_TRUE); |
@@ -1674,11 +1707,11 @@ TEST_F(GLES2ImplementationTest, TexImage2D2Writes) { |
0, 0); |
expected.tex_sub_image_2d1.Init( |
kTarget, kLevel, 0, 0, kWidth, kHeight / 2, kFormat, kType, |
- kTransferBufferId, offset1, true); |
+ transfer_buffer_id_, offset1, true); |
expected.set_token1.Init(GetNextToken()); |
expected.tex_sub_image_2d2.Init( |
kTarget, kLevel, 0, kHeight / 2, kWidth, kHeight / 2, kFormat, kType, |
- kTransferBufferId, offset2, true); |
+ transfer_buffer_id_, offset2, true); |
expected.set_token2.Init(GetNextToken()); |
// TODO(gman): Make it possible to run this test |
@@ -1707,11 +1740,11 @@ TEST_F(GLES2ImplementationTest, TexImage2D2Writes) { |
0, 0); |
expected.tex_sub_image_2d1.Init( |
kTarget, kLevel, 0, kHeight / 2, kWidth, kHeight / 2, kFormat, kType, |
- kTransferBufferId, offset3, true); |
+ transfer_buffer_id_, offset3, true); |
expected.set_token1.Init(GetNextToken()); |
expected.tex_sub_image_2d2.Init( |
kTarget, kLevel, 0, 0, kWidth, kHeight / 2, kFormat, kType, |
- kTransferBufferId, offset4, true); |
+ transfer_buffer_id_, offset4, true); |
expected.set_token2.Init(GetNextToken()); |
// TODO(gman): Make it possible to run this test |
@@ -1777,19 +1810,19 @@ TEST_F(GLES2ImplementationTest, TexImage2DSubRows) { |
0, 0); |
expected.tex_sub_image_2d1.Init( |
kTarget, kLevel, 0, 0, kWidth / 2, 1, kFormat, kType, |
- kTransferBufferId, offset1, true); |
+ transfer_buffer_id_, offset1, true); |
expected.set_token1.Init(GetNextToken()); |
expected.tex_sub_image_2d2.Init( |
kTarget, kLevel, kWidth / 2, 0, kWidth / 2, 1, kFormat, kType, |
- kTransferBufferId, offset2, true); |
+ transfer_buffer_id_, offset2, true); |
expected.set_token2.Init(GetNextToken()); |
expected.tex_sub_image_2d3.Init( |
kTarget, kLevel, 0, 1, kWidth / 2, 1, kFormat, kType, |
- kTransferBufferId, offset3, true); |
+ transfer_buffer_id_, offset3, true); |
expected.set_token3.Init(GetNextToken()); |
expected.tex_sub_image_2d4.Init( |
kTarget, kLevel, kWidth / 2, 1, kWidth / 2, 1, kFormat, kType, |
- kTransferBufferId, offset4, true); |
+ transfer_buffer_id_, offset4, true); |
expected.set_token4.Init(GetNextToken()); |
// TODO(gman): Make it possible to run this test |
@@ -1828,19 +1861,19 @@ TEST_F(GLES2ImplementationTest, TexImage2DSubRows) { |
0, 0); |
expected.tex_sub_image_2d1.Init( |
kTarget, kLevel, 0, 1, kWidth / 2, 1, kFormat, kType, |
- kTransferBufferId, offset1, true); |
+ transfer_buffer_id_, offset1, true); |
expected.set_token1.Init(GetNextToken()); |
expected.tex_sub_image_2d2.Init( |
kTarget, kLevel, kWidth / 2, 1, kWidth / 2, 1, kFormat, kType, |
- kTransferBufferId, offset2, true); |
+ transfer_buffer_id_, offset2, true); |
expected.set_token2.Init(GetNextToken()); |
expected.tex_sub_image_2d3.Init( |
kTarget, kLevel, 0, 0, kWidth / 2, 1, kFormat, kType, |
- kTransferBufferId, offset3, true); |
+ transfer_buffer_id_, offset3, true); |
expected.set_token3.Init(GetNextToken()); |
expected.tex_sub_image_2d4.Init( |
kTarget, kLevel, kWidth / 2, 0, kWidth / 2, 1, kFormat, kType, |
- kTransferBufferId, offset4, true); |
+ transfer_buffer_id_, offset4, true); |
expected.set_token4.Init(GetNextToken()); |
// TODO(gman): Make it possible to run this test |
@@ -1908,10 +1941,10 @@ TEST_F(GLES2ImplementationTest, TexSubImage2DFlipY) { |
kType, 0, NULL); |
expected.tex_sub_image_2d1.Init(kTarget, kLevel, kSubImageXOffset, |
kSubImageYOffset + 2, kSubImageWidth, 2, kFormat, kType, |
- kTransferBufferId, offset1, false); |
+ transfer_buffer_id_, offset1, false); |
expected.set_token1.Init(GetNextToken()); |
expected.tex_sub_image_2d2.Init(kTarget, kLevel, kSubImageXOffset, |
- kSubImageYOffset, kSubImageWidth , 2, kFormat, kType, kTransferBufferId, |
+ kSubImageYOffset, kSubImageWidth , 2, kFormat, kType, transfer_buffer_id_, |
offset2, false); |
expected.set_token2.Init(GetNextToken()); |
@@ -2020,7 +2053,7 @@ TEST_F(GLES2ImplementationTest, CreateStreamTextureCHROMIUM) { |
}; |
Cmds expected; |
- expected.create_stream.Init(kTextureId, kTransferBufferId, kResultOffset); |
+ expected.create_stream.Init(kTextureId, transfer_buffer_id_, kResultOffset); |
EXPECT_CALL(*command_buffer_, OnFlush(_)) |
.WillOnce(SetMemoryAtOffset(kResultOffset, kResult)) |