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

Side by Side Diff: gpu/command_buffer/client/gles2_implementation_unittest.cc

Issue 11970022: Revert 177054 (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Created 7 years, 11 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 unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « gpu/command_buffer/client/gles2_implementation.cc ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 // Tests for GLES2Implementation. 5 // Tests for GLES2Implementation.
6 6
7 #include "gpu/command_buffer/client/gles2_implementation.h" 7 #include "gpu/command_buffer/client/gles2_implementation.h"
8 8
9 #include <GLES2/gl2ext.h> 9 #include <GLES2/gl2ext.h>
10 #include <GLES2/gl2extchromium.h> 10 #include <GLES2/gl2extchromium.h>
(...skipping 230 matching lines...) Expand 10 before | Expand all | Expand 10 after
241 241
242 void* MockTransferBuffer::GetResultBuffer() { 242 void* MockTransferBuffer::GetResultBuffer() {
243 return actual_buffer() + actual_buffer_index_ * alignment_; 243 return actual_buffer() + actual_buffer_index_ * alignment_;
244 } 244 }
245 245
246 int MockTransferBuffer::GetResultOffset() { 246 int MockTransferBuffer::GetResultOffset() {
247 return actual_buffer_index_ * alignment_; 247 return actual_buffer_index_ * alignment_;
248 } 248 }
249 249
250 void MockTransferBuffer::Free() { 250 void MockTransferBuffer::Free() {
251 GPU_NOTREACHED();
251 } 252 }
252 253
253 bool MockTransferBuffer::HaveBuffer() const { 254 bool MockTransferBuffer::HaveBuffer() const {
254 return true; 255 return true;
255 } 256 }
256 257
257 void* MockTransferBuffer::AllocUpTo( 258 void* MockTransferBuffer::AllocUpTo(
258 unsigned int size, unsigned int* size_allocated) { 259 unsigned int size, unsigned int* size_allocated) {
259 EXPECT_TRUE(size_allocated != NULL); 260 EXPECT_TRUE(size_allocated != NULL);
260 EXPECT_TRUE(last_alloc_ == NULL); 261 EXPECT_TRUE(last_alloc_ == NULL);
(...skipping 1187 matching lines...) Expand 10 before | Expand all | Expand 10 after
1448 struct Cmds { 1449 struct Cmds {
1449 BufferSubData buf; 1450 BufferSubData buf;
1450 cmd::SetToken set_token; 1451 cmd::SetToken set_token;
1451 }; 1452 };
1452 const GLenum kTarget = GL_ELEMENT_ARRAY_BUFFER; 1453 const GLenum kTarget = GL_ELEMENT_ARRAY_BUFFER;
1453 const GLintptr kOffset = 15; 1454 const GLintptr kOffset = 15;
1454 const GLsizeiptr kSize = 16; 1455 const GLsizeiptr kSize = 16;
1455 1456
1456 uint32 offset = 0; 1457 uint32 offset = 0;
1457 Cmds expected; 1458 Cmds expected;
1458 int32 shm_id = command_buffer()->GetNextFreeTransferBufferId(); 1459 expected.buf.Init(
1459 expected.buf.Init(kTarget, kOffset, kSize, shm_id, offset); 1460 kTarget, kOffset, kSize,
1461 command_buffer()->GetNextFreeTransferBufferId(), offset);
1460 expected.set_token.Init(GetNextToken()); 1462 expected.set_token.Init(GetNextToken());
1461 1463
1462 void* mem = gl_->MapBufferSubDataCHROMIUM( 1464 void* mem = gl_->MapBufferSubDataCHROMIUM(
1463 kTarget, kOffset, kSize, GL_WRITE_ONLY); 1465 kTarget, kOffset, kSize, GL_WRITE_ONLY);
1464 ASSERT_TRUE(mem != NULL); 1466 ASSERT_TRUE(mem != NULL);
1465 gl_->UnmapBufferSubDataCHROMIUM(mem); 1467 gl_->UnmapBufferSubDataCHROMIUM(mem);
1466 EXPECT_EQ(0, memcmp(&expected, commands_, sizeof(expected))); 1468 EXPECT_EQ(0, memcmp(&expected, commands_, sizeof(expected)));
1467
1468 EXPECT_CALL(*command_buffer(), DestroyTransferBuffer(shm_id))
1469 .Times(1)
1470 .RetiresOnSaturation();
1471 gl_->FreeUnusedSharedMemory();
1472 } 1469 }
1473 1470
1474 TEST_F(GLES2ImplementationTest, MapUnmapBufferSubDataCHROMIUMBadArgs) { 1471 TEST_F(GLES2ImplementationTest, MapUnmapBufferSubDataCHROMIUMBadArgs) {
1475 const GLenum kTarget = GL_ELEMENT_ARRAY_BUFFER; 1472 const GLenum kTarget = GL_ELEMENT_ARRAY_BUFFER;
1476 const GLintptr kOffset = 15; 1473 const GLintptr kOffset = 15;
1477 const GLsizeiptr kSize = 16; 1474 const GLsizeiptr kSize = 16;
1478 1475
1479 ExpectedMemoryInfo result1 = 1476 ExpectedMemoryInfo result1 =
1480 GetExpectedResultMemory(sizeof(GetError::Result)); 1477 GetExpectedResultMemory(sizeof(GetError::Result));
1481 ExpectedMemoryInfo result2 = 1478 ExpectedMemoryInfo result2 =
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
1516 const GLint kLevel = 1; 1513 const GLint kLevel = 1;
1517 const GLint kXOffset = 2; 1514 const GLint kXOffset = 2;
1518 const GLint kYOffset = 3; 1515 const GLint kYOffset = 3;
1519 const GLint kWidth = 4; 1516 const GLint kWidth = 4;
1520 const GLint kHeight = 5; 1517 const GLint kHeight = 5;
1521 const GLenum kFormat = GL_RGBA; 1518 const GLenum kFormat = GL_RGBA;
1522 const GLenum kType = GL_UNSIGNED_BYTE; 1519 const GLenum kType = GL_UNSIGNED_BYTE;
1523 1520
1524 uint32 offset = 0; 1521 uint32 offset = 0;
1525 Cmds expected; 1522 Cmds expected;
1526 int32 shm_id = command_buffer()->GetNextFreeTransferBufferId();
1527 expected.tex.Init( 1523 expected.tex.Init(
1528 GL_TEXTURE_2D, kLevel, kXOffset, kYOffset, kWidth, kHeight, kFormat, 1524 GL_TEXTURE_2D, kLevel, kXOffset, kYOffset, kWidth, kHeight, kFormat,
1529 kType, shm_id, offset, GL_FALSE); 1525 kType,
1526 command_buffer()->GetNextFreeTransferBufferId(), offset, GL_FALSE);
1530 expected.set_token.Init(GetNextToken()); 1527 expected.set_token.Init(GetNextToken());
1531 1528
1532 void* mem = gl_->MapTexSubImage2DCHROMIUM( 1529 void* mem = gl_->MapTexSubImage2DCHROMIUM(
1533 GL_TEXTURE_2D, 1530 GL_TEXTURE_2D,
1534 kLevel, 1531 kLevel,
1535 kXOffset, 1532 kXOffset,
1536 kYOffset, 1533 kYOffset,
1537 kWidth, 1534 kWidth,
1538 kHeight, 1535 kHeight,
1539 kFormat, 1536 kFormat,
1540 kType, 1537 kType,
1541 GL_WRITE_ONLY); 1538 GL_WRITE_ONLY);
1542 ASSERT_TRUE(mem != NULL); 1539 ASSERT_TRUE(mem != NULL);
1543 gl_->UnmapTexSubImage2DCHROMIUM(mem); 1540 gl_->UnmapTexSubImage2DCHROMIUM(mem);
1544 EXPECT_EQ(0, memcmp(&expected, commands_, sizeof(expected))); 1541 EXPECT_EQ(0, memcmp(&expected, commands_, sizeof(expected)));
1545
1546 EXPECT_CALL(*command_buffer(), DestroyTransferBuffer(shm_id))
1547 .Times(1)
1548 .RetiresOnSaturation();
1549 gl_->FreeUnusedSharedMemory();
1550 } 1542 }
1551 1543
1552 TEST_F(GLES2ImplementationTest, MapUnmapTexSubImage2DCHROMIUMBadArgs) { 1544 TEST_F(GLES2ImplementationTest, MapUnmapTexSubImage2DCHROMIUMBadArgs) {
1553 const GLint kLevel = 1; 1545 const GLint kLevel = 1;
1554 const GLint kXOffset = 2; 1546 const GLint kXOffset = 2;
1555 const GLint kYOffset = 3; 1547 const GLint kYOffset = 3;
1556 const GLint kWidth = 4; 1548 const GLint kWidth = 4;
1557 const GLint kHeight = 5; 1549 const GLint kHeight = 5;
1558 const GLenum kFormat = GL_RGBA; 1550 const GLenum kFormat = GL_RGBA;
1559 const GLenum kType = GL_UNSIGNED_BYTE; 1551 const GLenum kType = GL_UNSIGNED_BYTE;
(...skipping 1130 matching lines...) Expand 10 before | Expand all | Expand 10 after
2690 gl_->GetQueryObjectuivEXT(4567, GL_QUERY_RESULT_AVAILABLE_EXT, &available); 2682 gl_->GetQueryObjectuivEXT(4567, GL_QUERY_RESULT_AVAILABLE_EXT, &available);
2691 EXPECT_TRUE(NoCommandsWritten()); 2683 EXPECT_TRUE(NoCommandsWritten());
2692 EXPECT_EQ(0xBDu, available); 2684 EXPECT_EQ(0xBDu, available);
2693 EXPECT_EQ(GL_INVALID_OPERATION, CheckError()); 2685 EXPECT_EQ(GL_INVALID_OPERATION, CheckError());
2694 2686
2695 // Test GetQueryObjectuivEXT CheckResultsAvailable 2687 // Test GetQueryObjectuivEXT CheckResultsAvailable
2696 ClearCommands(); 2688 ClearCommands();
2697 gl_->GetQueryObjectuivEXT(id1, GL_QUERY_RESULT_AVAILABLE_EXT, &available); 2689 gl_->GetQueryObjectuivEXT(id1, GL_QUERY_RESULT_AVAILABLE_EXT, &available);
2698 EXPECT_TRUE(NoCommandsWritten()); 2690 EXPECT_TRUE(NoCommandsWritten());
2699 EXPECT_EQ(0u, available); 2691 EXPECT_EQ(0u, available);
2700
2701 EXPECT_CALL(*command_buffer(), DestroyTransferBuffer(_))
2702 .Times(1)
2703 .RetiresOnSaturation();
2704 } 2692 }
2705 2693
2706 TEST_F(GLES2ImplementationTest, ErrorQuery) { 2694 TEST_F(GLES2ImplementationTest, ErrorQuery) {
2707 GLuint id = 0; 2695 GLuint id = 0;
2708 gl_->GenQueriesEXT(1, &id); 2696 gl_->GenQueriesEXT(1, &id);
2709 ClearCommands(); 2697 ClearCommands();
2710 2698
2711 // Test BeginQueryEXT does NOT insert commands. 2699 // Test BeginQueryEXT does NOT insert commands.
2712 gl_->BeginQueryEXT(GL_GET_ERROR_QUERY_CHROMIUM, id); 2700 gl_->BeginQueryEXT(GL_GET_ERROR_QUERY_CHROMIUM, id);
2713 EXPECT_TRUE(NoCommandsWritten()); 2701 EXPECT_TRUE(NoCommandsWritten());
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
2748 // Check result is available. 2736 // Check result is available.
2749 gl_->GetQueryObjectuivEXT(id, GL_QUERY_RESULT_AVAILABLE_EXT, &available); 2737 gl_->GetQueryObjectuivEXT(id, GL_QUERY_RESULT_AVAILABLE_EXT, &available);
2750 EXPECT_TRUE(NoCommandsWritten()); 2738 EXPECT_TRUE(NoCommandsWritten());
2751 EXPECT_NE(0u, available); 2739 EXPECT_NE(0u, available);
2752 2740
2753 // Check result. 2741 // Check result.
2754 GLuint result = 0xBDu; 2742 GLuint result = 0xBDu;
2755 gl_->GetQueryObjectuivEXT(id, GL_QUERY_RESULT_EXT, &result); 2743 gl_->GetQueryObjectuivEXT(id, GL_QUERY_RESULT_EXT, &result);
2756 EXPECT_TRUE(NoCommandsWritten()); 2744 EXPECT_TRUE(NoCommandsWritten());
2757 EXPECT_EQ(static_cast<GLuint>(GL_INVALID_ENUM), result); 2745 EXPECT_EQ(static_cast<GLuint>(GL_INVALID_ENUM), result);
2758
2759 EXPECT_CALL(*command_buffer(), DestroyTransferBuffer(_))
2760 .Times(1)
2761 .RetiresOnSaturation();
2762 } 2746 }
2763 2747
2764 #if !defined(GLES2_SUPPORT_CLIENT_SIDE_ARRAYS) 2748 #if !defined(GLES2_SUPPORT_CLIENT_SIDE_ARRAYS)
2765 TEST_F(GLES2ImplementationTest, VertexArrays) { 2749 TEST_F(GLES2ImplementationTest, VertexArrays) {
2766 const GLuint kAttribIndex1 = 1; 2750 const GLuint kAttribIndex1 = 1;
2767 const GLint kNumComponents1 = 3; 2751 const GLint kNumComponents1 = 3;
2768 const GLsizei kClientStride = 12; 2752 const GLsizei kClientStride = 12;
2769 2753
2770 GLuint id = 0; 2754 GLuint id = 0;
2771 gl_->GenVertexArraysOES(1, &id); 2755 gl_->GenVertexArraysOES(1, &id);
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after
2817 gl_->Enable(GL_BLEND); 2801 gl_->Enable(GL_BLEND);
2818 EXPECT_TRUE(NoCommandsWritten()); 2802 EXPECT_TRUE(NoCommandsWritten());
2819 } 2803 }
2820 2804
2821 2805
2822 #include "gpu/command_buffer/client/gles2_implementation_unittest_autogen.h" 2806 #include "gpu/command_buffer/client/gles2_implementation_unittest_autogen.h"
2823 2807
2824 } // namespace gles2 2808 } // namespace gles2
2825 } // namespace gpu 2809 } // namespace gpu
2826 2810
OLDNEW
« no previous file with comments | « gpu/command_buffer/client/gles2_implementation.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698