OLD | NEW |
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 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 #include "gpu/command_buffer/service/buffer_manager.h" | 5 #include "gpu/command_buffer/service/buffer_manager.h" |
6 #include "gpu/command_buffer/common/gl_mock.h" | 6 #include "gpu/command_buffer/common/gl_mock.h" |
7 #include "testing/gtest/include/gtest/gtest.h" | 7 #include "testing/gtest/include/gtest/gtest.h" |
8 | 8 |
9 namespace gpu { | 9 namespace gpu { |
10 namespace gles2 { | 10 namespace gles2 { |
(...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
92 const uint8 data[] = {10, 9, 8, 7, 6, 5, 4, 3, 2, 1}; | 92 const uint8 data[] = {10, 9, 8, 7, 6, 5, 4, 3, 2, 1}; |
93 manager_.CreateBufferInfo(kClientBufferId, kServiceBufferId); | 93 manager_.CreateBufferInfo(kClientBufferId, kServiceBufferId); |
94 BufferManager::BufferInfo* info = manager_.GetBufferInfo(kClientBufferId); | 94 BufferManager::BufferInfo* info = manager_.GetBufferInfo(kClientBufferId); |
95 ASSERT_TRUE(info != NULL); | 95 ASSERT_TRUE(info != NULL); |
96 manager_.SetTarget(info, GL_ELEMENT_ARRAY_BUFFER); | 96 manager_.SetTarget(info, GL_ELEMENT_ARRAY_BUFFER); |
97 manager_.SetSize(info, sizeof(data)); | 97 manager_.SetSize(info, sizeof(data)); |
98 EXPECT_TRUE(info->SetRange(0, sizeof(data), data)); | 98 EXPECT_TRUE(info->SetRange(0, sizeof(data), data)); |
99 EXPECT_TRUE(info->SetRange(sizeof(data), 0, data)); | 99 EXPECT_TRUE(info->SetRange(sizeof(data), 0, data)); |
100 EXPECT_FALSE(info->SetRange(sizeof(data), 1, data)); | 100 EXPECT_FALSE(info->SetRange(sizeof(data), 1, data)); |
101 EXPECT_FALSE(info->SetRange(0, sizeof(data) + 1, data)); | 101 EXPECT_FALSE(info->SetRange(0, sizeof(data) + 1, data)); |
| 102 EXPECT_FALSE(info->SetRange(-1, sizeof(data), data)); |
| 103 EXPECT_FALSE(info->SetRange(0, -1, data)); |
102 } | 104 } |
103 | 105 |
104 TEST_F(BufferManagerTest, GetRange) { | 106 TEST_F(BufferManagerTest, GetRange) { |
105 const GLuint kClientBufferId = 1; | 107 const GLuint kClientBufferId = 1; |
106 const GLuint kServiceBufferId = 11; | 108 const GLuint kServiceBufferId = 11; |
107 const uint8 data[] = {10, 9, 8, 7, 6, 5, 4, 3, 2, 1}; | 109 const uint8 data[] = {10, 9, 8, 7, 6, 5, 4, 3, 2, 1}; |
108 manager_.CreateBufferInfo(kClientBufferId, kServiceBufferId); | 110 manager_.CreateBufferInfo(kClientBufferId, kServiceBufferId); |
109 BufferManager::BufferInfo* info = manager_.GetBufferInfo(kClientBufferId); | 111 BufferManager::BufferInfo* info = manager_.GetBufferInfo(kClientBufferId); |
110 ASSERT_TRUE(info != NULL); | 112 ASSERT_TRUE(info != NULL); |
111 manager_.SetTarget(info, GL_ELEMENT_ARRAY_BUFFER); | 113 manager_.SetTarget(info, GL_ELEMENT_ARRAY_BUFFER); |
112 manager_.SetSize(info, sizeof(data)); | 114 manager_.SetSize(info, sizeof(data)); |
113 const char* buf = static_cast<const char*>(info->GetRange(0, sizeof(data))); | 115 const char* buf = static_cast<const char*>(info->GetRange(0, sizeof(data))); |
114 ASSERT_TRUE(buf != NULL); | 116 ASSERT_TRUE(buf != NULL); |
115 const char* buf1 = | 117 const char* buf1 = |
116 static_cast<const char*>(info->GetRange(1, sizeof(data) - 1)); | 118 static_cast<const char*>(info->GetRange(1, sizeof(data) - 1)); |
117 EXPECT_EQ(buf + 1, buf1); | 119 EXPECT_EQ(buf + 1, buf1); |
118 EXPECT_TRUE(info->GetRange(sizeof(data), 1) == NULL); | 120 EXPECT_TRUE(info->GetRange(sizeof(data), 1) == NULL); |
119 EXPECT_TRUE(info->GetRange(0, sizeof(data) + 1) == NULL); | 121 EXPECT_TRUE(info->GetRange(0, sizeof(data) + 1) == NULL); |
| 122 EXPECT_TRUE(info->GetRange(-1, sizeof(data)) == NULL); |
| 123 EXPECT_TRUE(info->GetRange(-0, -1) == NULL); |
120 } | 124 } |
121 | 125 |
122 TEST_F(BufferManagerTest, GetMaxValueForRangeUint8) { | 126 TEST_F(BufferManagerTest, GetMaxValueForRangeUint8) { |
123 const GLuint kClientBufferId = 1; | 127 const GLuint kClientBufferId = 1; |
124 const GLuint kServiceBufferId = 11; | 128 const GLuint kServiceBufferId = 11; |
125 const uint8 data[] = {10, 9, 8, 7, 6, 5, 4, 3, 2, 1}; | 129 const uint8 data[] = {10, 9, 8, 7, 6, 5, 4, 3, 2, 1}; |
126 const uint8 new_data[] = {100, 120, 110}; | 130 const uint8 new_data[] = {100, 120, 110}; |
127 manager_.CreateBufferInfo(kClientBufferId, kServiceBufferId); | 131 manager_.CreateBufferInfo(kClientBufferId, kServiceBufferId); |
128 BufferManager::BufferInfo* info = manager_.GetBufferInfo(kClientBufferId); | 132 BufferManager::BufferInfo* info = manager_.GetBufferInfo(kClientBufferId); |
129 ASSERT_TRUE(info != NULL); | 133 ASSERT_TRUE(info != NULL); |
(...skipping 82 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
212 EXPECT_EQ(120u, max_value); | 216 EXPECT_EQ(120u, max_value); |
213 // Check out of range fails. | 217 // Check out of range fails. |
214 EXPECT_FALSE(info->GetMaxValueForRange(0, 11, GL_UNSIGNED_INT, &max_value)); | 218 EXPECT_FALSE(info->GetMaxValueForRange(0, 11, GL_UNSIGNED_INT, &max_value)); |
215 EXPECT_FALSE(info->GetMaxValueForRange(40, 1, GL_UNSIGNED_INT, &max_value)); | 219 EXPECT_FALSE(info->GetMaxValueForRange(40, 1, GL_UNSIGNED_INT, &max_value)); |
216 } | 220 } |
217 | 221 |
218 } // namespace gles2 | 222 } // namespace gles2 |
219 } // namespace gpu | 223 } // namespace gpu |
220 | 224 |
221 | 225 |
OLD | NEW |