OLD | NEW |
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 the Command Buffer Helper. | 5 // Tests for the Command Buffer Helper. |
6 | 6 |
7 #include "gpu/command_buffer/client/transfer_buffer.h" | 7 #include "gpu/command_buffer/client/transfer_buffer.h" |
8 | 8 |
9 #include <stddef.h> | 9 #include <stddef.h> |
10 #include <stdint.h> | 10 #include <stdint.h> |
(...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
99 const size_t TransferBufferTest::kTransferBufferSize; | 99 const size_t TransferBufferTest::kTransferBufferSize; |
100 #endif | 100 #endif |
101 | 101 |
102 TEST_F(TransferBufferTest, Basic) { | 102 TEST_F(TransferBufferTest, Basic) { |
103 Initialize(0); | 103 Initialize(0); |
104 EXPECT_TRUE(transfer_buffer_->HaveBuffer()); | 104 EXPECT_TRUE(transfer_buffer_->HaveBuffer()); |
105 EXPECT_EQ(transfer_buffer_id_, transfer_buffer_->GetShmId()); | 105 EXPECT_EQ(transfer_buffer_id_, transfer_buffer_->GetShmId()); |
106 EXPECT_EQ( | 106 EXPECT_EQ( |
107 kTransferBufferSize - kStartingOffset, | 107 kTransferBufferSize - kStartingOffset, |
108 transfer_buffer_->GetCurrentMaxAllocationWithoutRealloc()); | 108 transfer_buffer_->GetCurrentMaxAllocationWithoutRealloc()); |
| 109 EXPECT_NE(base::UnguessableToken(), |
| 110 transfer_buffer_->shared_memory_handle().GetGUID()); |
109 } | 111 } |
110 | 112 |
111 TEST_F(TransferBufferTest, Free) { | 113 TEST_F(TransferBufferTest, Free) { |
112 Initialize(0); | 114 Initialize(0); |
113 EXPECT_TRUE(transfer_buffer_->HaveBuffer()); | 115 EXPECT_TRUE(transfer_buffer_->HaveBuffer()); |
114 EXPECT_EQ(transfer_buffer_id_, transfer_buffer_->GetShmId()); | 116 EXPECT_EQ(transfer_buffer_id_, transfer_buffer_->GetShmId()); |
| 117 EXPECT_NE(base::UnguessableToken(), |
| 118 transfer_buffer_->shared_memory_handle().GetGUID()); |
115 | 119 |
116 // Free buffer. | 120 // Free buffer. |
117 EXPECT_CALL(*command_buffer(), DestroyTransferBuffer(_)) | 121 EXPECT_CALL(*command_buffer(), DestroyTransferBuffer(_)) |
118 .Times(1) | 122 .Times(1) |
119 .RetiresOnSaturation(); | 123 .RetiresOnSaturation(); |
120 transfer_buffer_->Free(); | 124 transfer_buffer_->Free(); |
121 // See it's freed. | 125 // See it's freed. |
122 EXPECT_FALSE(transfer_buffer_->HaveBuffer()); | 126 EXPECT_FALSE(transfer_buffer_->HaveBuffer()); |
| 127 EXPECT_EQ(base::UnguessableToken(), |
| 128 transfer_buffer_->shared_memory_handle().GetGUID()); |
123 // See that it gets reallocated. | 129 // See that it gets reallocated. |
124 EXPECT_EQ(transfer_buffer_id_, transfer_buffer_->GetShmId()); | 130 EXPECT_EQ(transfer_buffer_id_, transfer_buffer_->GetShmId()); |
125 EXPECT_TRUE(transfer_buffer_->HaveBuffer()); | 131 EXPECT_TRUE(transfer_buffer_->HaveBuffer()); |
| 132 EXPECT_NE(base::UnguessableToken(), |
| 133 transfer_buffer_->shared_memory_handle().GetGUID()); |
126 | 134 |
127 // Free buffer. | 135 // Free buffer. |
128 EXPECT_CALL(*command_buffer(), DestroyTransferBuffer(_)) | 136 EXPECT_CALL(*command_buffer(), DestroyTransferBuffer(_)) |
129 .Times(1) | 137 .Times(1) |
130 .RetiresOnSaturation(); | 138 .RetiresOnSaturation(); |
131 transfer_buffer_->Free(); | 139 transfer_buffer_->Free(); |
132 // See it's freed. | 140 // See it's freed. |
133 EXPECT_FALSE(transfer_buffer_->HaveBuffer()); | 141 EXPECT_FALSE(transfer_buffer_->HaveBuffer()); |
| 142 EXPECT_EQ(base::UnguessableToken(), |
| 143 transfer_buffer_->shared_memory_handle().GetGUID()); |
134 // See that it gets reallocated. | 144 // See that it gets reallocated. |
135 EXPECT_TRUE(transfer_buffer_->GetResultBuffer() != NULL); | 145 EXPECT_TRUE(transfer_buffer_->GetResultBuffer() != NULL); |
136 EXPECT_TRUE(transfer_buffer_->HaveBuffer()); | 146 EXPECT_TRUE(transfer_buffer_->HaveBuffer()); |
| 147 EXPECT_NE(base::UnguessableToken(), |
| 148 transfer_buffer_->shared_memory_handle().GetGUID()); |
137 | 149 |
138 // Free buffer. | 150 // Free buffer. |
139 EXPECT_CALL(*command_buffer(), DestroyTransferBuffer(_)) | 151 EXPECT_CALL(*command_buffer(), DestroyTransferBuffer(_)) |
140 .Times(1) | 152 .Times(1) |
141 .RetiresOnSaturation(); | 153 .RetiresOnSaturation(); |
142 transfer_buffer_->Free(); | 154 transfer_buffer_->Free(); |
143 // See it's freed. | 155 // See it's freed. |
144 EXPECT_FALSE(transfer_buffer_->HaveBuffer()); | 156 EXPECT_FALSE(transfer_buffer_->HaveBuffer()); |
| 157 EXPECT_EQ(base::UnguessableToken(), |
| 158 transfer_buffer_->shared_memory_handle().GetGUID()); |
145 // See that it gets reallocated. | 159 // See that it gets reallocated. |
146 unsigned int size = 0; | 160 unsigned int size = 0; |
147 void* data = transfer_buffer_->AllocUpTo(1, &size); | 161 void* data = transfer_buffer_->AllocUpTo(1, &size); |
148 EXPECT_TRUE(data != NULL); | 162 EXPECT_TRUE(data != NULL); |
149 EXPECT_TRUE(transfer_buffer_->HaveBuffer()); | 163 EXPECT_TRUE(transfer_buffer_->HaveBuffer()); |
| 164 EXPECT_NE(base::UnguessableToken(), |
| 165 transfer_buffer_->shared_memory_handle().GetGUID()); |
150 transfer_buffer_->FreePendingToken(data, 1); | 166 transfer_buffer_->FreePendingToken(data, 1); |
151 | 167 |
152 // Free buffer. | 168 // Free buffer. |
153 EXPECT_CALL(*command_buffer(), DestroyTransferBuffer(_)) | 169 EXPECT_CALL(*command_buffer(), DestroyTransferBuffer(_)) |
154 .Times(1) | 170 .Times(1) |
155 .RetiresOnSaturation(); | 171 .RetiresOnSaturation(); |
156 transfer_buffer_->Free(); | 172 transfer_buffer_->Free(); |
157 // See it's freed. | 173 // See it's freed. |
158 EXPECT_FALSE(transfer_buffer_->HaveBuffer()); | 174 EXPECT_FALSE(transfer_buffer_->HaveBuffer()); |
| 175 EXPECT_EQ(base::UnguessableToken(), |
| 176 transfer_buffer_->shared_memory_handle().GetGUID()); |
159 // See that it gets reallocated. | 177 // See that it gets reallocated. |
160 transfer_buffer_->GetResultOffset(); | 178 transfer_buffer_->GetResultOffset(); |
161 EXPECT_TRUE(transfer_buffer_->HaveBuffer()); | 179 EXPECT_TRUE(transfer_buffer_->HaveBuffer()); |
| 180 EXPECT_NE(base::UnguessableToken(), |
| 181 transfer_buffer_->shared_memory_handle().GetGUID()); |
162 | 182 |
163 EXPECT_EQ( | 183 EXPECT_EQ( |
164 kTransferBufferSize - kStartingOffset, | 184 kTransferBufferSize - kStartingOffset, |
165 transfer_buffer_->GetCurrentMaxAllocationWithoutRealloc()); | 185 transfer_buffer_->GetCurrentMaxAllocationWithoutRealloc()); |
166 | 186 |
167 // Test freeing twice. | 187 // Test freeing twice. |
168 EXPECT_CALL(*command_buffer(), DestroyTransferBuffer(_)) | 188 EXPECT_CALL(*command_buffer(), DestroyTransferBuffer(_)) |
169 .Times(1) | 189 .Times(1) |
170 .RetiresOnSaturation(); | 190 .RetiresOnSaturation(); |
171 transfer_buffer_->Free(); | 191 transfer_buffer_->Free(); |
(...skipping 307 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
479 EXPECT_EQ(transfer_buffer_id_, transfer_buffer_->GetShmId()); | 499 EXPECT_EQ(transfer_buffer_id_, transfer_buffer_->GetShmId()); |
480 EXPECT_TRUE(transfer_buffer_->HaveBuffer()); | 500 EXPECT_TRUE(transfer_buffer_->HaveBuffer()); |
481 | 501 |
482 // Check it's the default size. | 502 // Check it's the default size. |
483 EXPECT_EQ( | 503 EXPECT_EQ( |
484 kStartTransferBufferSize - kStartingOffset, | 504 kStartTransferBufferSize - kStartingOffset, |
485 transfer_buffer_->GetCurrentMaxAllocationWithoutRealloc()); | 505 transfer_buffer_->GetCurrentMaxAllocationWithoutRealloc()); |
486 } | 506 } |
487 | 507 |
488 } // namespace gpu | 508 } // namespace gpu |
489 | |
490 | |
OLD | NEW |