| OLD | NEW |
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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 "mojo/edk/system/core_test_base.h" | 5 #include "mojo/edk/system/core_test_base.h" |
| 6 | 6 |
| 7 #include <vector> | 7 #include <vector> |
| 8 | 8 |
| 9 #include "base/logging.h" | 9 #include "base/logging.h" |
| 10 #include "mojo/edk/embedder/simple_platform_support.h" | 10 #include "mojo/edk/embedder/simple_platform_support.h" |
| (...skipping 112 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 123 mutex().AssertHeld(); | 123 mutex().AssertHeld(); |
| 124 return MOJO_RESULT_UNIMPLEMENTED; | 124 return MOJO_RESULT_UNIMPLEMENTED; |
| 125 } | 125 } |
| 126 | 126 |
| 127 MojoResult EndReadDataImplNoLock(uint32_t /*num_bytes_read*/) override { | 127 MojoResult EndReadDataImplNoLock(uint32_t /*num_bytes_read*/) override { |
| 128 info_->IncrementEndReadDataCallCount(); | 128 info_->IncrementEndReadDataCallCount(); |
| 129 mutex().AssertHeld(); | 129 mutex().AssertHeld(); |
| 130 return MOJO_RESULT_UNIMPLEMENTED; | 130 return MOJO_RESULT_UNIMPLEMENTED; |
| 131 } | 131 } |
| 132 | 132 |
| 133 MojoResult DuplicateBufferHandleImplNoLock( |
| 134 UserPointer<const MojoDuplicateBufferHandleOptions> /*options*/, |
| 135 RefPtr<Dispatcher>* /*new_dispatcher*/) override { |
| 136 info_->IncrementDuplicateBufferHandleCallCount(); |
| 137 mutex().AssertHeld(); |
| 138 return MOJO_RESULT_UNIMPLEMENTED; |
| 139 } |
| 140 |
| 141 MojoResult GetBufferInformationImplNoLock( |
| 142 UserPointer<MojoBufferInformation> /*info*/, |
| 143 uint32_t /*info_num_bytes*/) override { |
| 144 info_->IncrementGetBufferInformationCallCount(); |
| 145 mutex().AssertHeld(); |
| 146 return MOJO_RESULT_UNIMPLEMENTED; |
| 147 } |
| 148 |
| 149 MojoResult MapBufferImplNoLock( |
| 150 uint64_t /*offset*/, |
| 151 uint64_t /*num_bytes*/, |
| 152 MojoMapBufferFlags /*flags*/, |
| 153 std::unique_ptr<platform::PlatformSharedBufferMapping>* /*mapping*/) |
| 154 override { |
| 155 info_->IncrementMapBufferCallCount(); |
| 156 mutex().AssertHeld(); |
| 157 return MOJO_RESULT_UNIMPLEMENTED; |
| 158 } |
| 159 |
| 133 MojoResult AddAwakableImplNoLock(Awakable* awakable, | 160 MojoResult AddAwakableImplNoLock(Awakable* awakable, |
| 134 MojoHandleSignals /*signals*/, | 161 MojoHandleSignals /*signals*/, |
| 135 uint32_t /*context*/, | 162 uint32_t /*context*/, |
| 136 HandleSignalsState* signals_state) override { | 163 HandleSignalsState* signals_state) override { |
| 137 info_->IncrementAddAwakableCallCount(); | 164 info_->IncrementAddAwakableCallCount(); |
| 138 mutex().AssertHeld(); | 165 mutex().AssertHeld(); |
| 139 if (signals_state) | 166 if (signals_state) |
| 140 *signals_state = HandleSignalsState(); | 167 *signals_state = HandleSignalsState(); |
| 141 if (info_->IsAddAwakableAllowed()) { | 168 if (info_->IsAddAwakableAllowed()) { |
| 142 info_->AwakableWasAdded(awakable); | 169 info_->AwakableWasAdded(awakable); |
| (...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 190 MojoHandle CoreTestBase::CreateMockHandle(CoreTestBase::MockHandleInfo* info) { | 217 MojoHandle CoreTestBase::CreateMockHandle(CoreTestBase::MockHandleInfo* info) { |
| 191 CHECK(core_); | 218 CHECK(core_); |
| 192 auto dispatcher = MockDispatcher::Create(info); | 219 auto dispatcher = MockDispatcher::Create(info); |
| 193 MojoHandle rv = core_->AddDispatcher(dispatcher.get()); | 220 MojoHandle rv = core_->AddDispatcher(dispatcher.get()); |
| 194 CHECK_NE(rv, MOJO_HANDLE_INVALID); | 221 CHECK_NE(rv, MOJO_HANDLE_INVALID); |
| 195 return rv; | 222 return rv; |
| 196 } | 223 } |
| 197 | 224 |
| 198 // CoreTestBase_MockHandleInfo ------------------------------------------------- | 225 // CoreTestBase_MockHandleInfo ------------------------------------------------- |
| 199 | 226 |
| 200 CoreTestBase_MockHandleInfo::CoreTestBase_MockHandleInfo() | 227 CoreTestBase_MockHandleInfo::CoreTestBase_MockHandleInfo() {} |
| 201 : ctor_call_count_(0), | |
| 202 dtor_call_count_(0), | |
| 203 close_call_count_(0), | |
| 204 write_message_call_count_(0), | |
| 205 read_message_call_count_(0), | |
| 206 write_data_call_count_(0), | |
| 207 begin_write_data_call_count_(0), | |
| 208 end_write_data_call_count_(0), | |
| 209 read_data_call_count_(0), | |
| 210 begin_read_data_call_count_(0), | |
| 211 end_read_data_call_count_(0), | |
| 212 add_awakable_call_count_(0), | |
| 213 remove_awakable_call_count_(0), | |
| 214 cancel_all_awakables_call_count_(0), | |
| 215 add_awakable_allowed_(false) { | |
| 216 } | |
| 217 | 228 |
| 218 CoreTestBase_MockHandleInfo::~CoreTestBase_MockHandleInfo() { | 229 CoreTestBase_MockHandleInfo::~CoreTestBase_MockHandleInfo() {} |
| 219 } | |
| 220 | 230 |
| 221 unsigned CoreTestBase_MockHandleInfo::GetCtorCallCount() const { | 231 unsigned CoreTestBase_MockHandleInfo::GetCtorCallCount() const { |
| 222 MutexLocker locker(&mutex_); | 232 MutexLocker locker(&mutex_); |
| 223 return ctor_call_count_; | 233 return ctor_call_count_; |
| 224 } | 234 } |
| 225 | 235 |
| 226 unsigned CoreTestBase_MockHandleInfo::GetDtorCallCount() const { | 236 unsigned CoreTestBase_MockHandleInfo::GetDtorCallCount() const { |
| 227 MutexLocker locker(&mutex_); | 237 MutexLocker locker(&mutex_); |
| 228 return dtor_call_count_; | 238 return dtor_call_count_; |
| 229 } | 239 } |
| (...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 266 unsigned CoreTestBase_MockHandleInfo::GetBeginReadDataCallCount() const { | 276 unsigned CoreTestBase_MockHandleInfo::GetBeginReadDataCallCount() const { |
| 267 MutexLocker locker(&mutex_); | 277 MutexLocker locker(&mutex_); |
| 268 return begin_read_data_call_count_; | 278 return begin_read_data_call_count_; |
| 269 } | 279 } |
| 270 | 280 |
| 271 unsigned CoreTestBase_MockHandleInfo::GetEndReadDataCallCount() const { | 281 unsigned CoreTestBase_MockHandleInfo::GetEndReadDataCallCount() const { |
| 272 MutexLocker locker(&mutex_); | 282 MutexLocker locker(&mutex_); |
| 273 return end_read_data_call_count_; | 283 return end_read_data_call_count_; |
| 274 } | 284 } |
| 275 | 285 |
| 286 unsigned CoreTestBase_MockHandleInfo::GetDuplicateBufferHandleCallCount() |
| 287 const { |
| 288 MutexLocker locker(&mutex_); |
| 289 return duplicate_buffer_handle_call_count_; |
| 290 } |
| 291 |
| 292 unsigned CoreTestBase_MockHandleInfo::GetGetBufferInformationCallCount() const { |
| 293 MutexLocker locker(&mutex_); |
| 294 return get_buffer_information_call_count_; |
| 295 } |
| 296 |
| 297 unsigned CoreTestBase_MockHandleInfo::GetMapBufferCallCount() const { |
| 298 MutexLocker locker(&mutex_); |
| 299 return map_buffer_call_count_; |
| 300 } |
| 301 |
| 276 unsigned CoreTestBase_MockHandleInfo::GetAddAwakableCallCount() const { | 302 unsigned CoreTestBase_MockHandleInfo::GetAddAwakableCallCount() const { |
| 277 MutexLocker locker(&mutex_); | 303 MutexLocker locker(&mutex_); |
| 278 return add_awakable_call_count_; | 304 return add_awakable_call_count_; |
| 279 } | 305 } |
| 280 | 306 |
| 281 unsigned CoreTestBase_MockHandleInfo::GetRemoveAwakableCallCount() const { | 307 unsigned CoreTestBase_MockHandleInfo::GetRemoveAwakableCallCount() const { |
| 282 MutexLocker locker(&mutex_); | 308 MutexLocker locker(&mutex_); |
| 283 return remove_awakable_call_count_; | 309 return remove_awakable_call_count_; |
| 284 } | 310 } |
| 285 | 311 |
| (...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 346 void CoreTestBase_MockHandleInfo::IncrementBeginReadDataCallCount() { | 372 void CoreTestBase_MockHandleInfo::IncrementBeginReadDataCallCount() { |
| 347 MutexLocker locker(&mutex_); | 373 MutexLocker locker(&mutex_); |
| 348 begin_read_data_call_count_++; | 374 begin_read_data_call_count_++; |
| 349 } | 375 } |
| 350 | 376 |
| 351 void CoreTestBase_MockHandleInfo::IncrementEndReadDataCallCount() { | 377 void CoreTestBase_MockHandleInfo::IncrementEndReadDataCallCount() { |
| 352 MutexLocker locker(&mutex_); | 378 MutexLocker locker(&mutex_); |
| 353 end_read_data_call_count_++; | 379 end_read_data_call_count_++; |
| 354 } | 380 } |
| 355 | 381 |
| 382 void CoreTestBase_MockHandleInfo::IncrementDuplicateBufferHandleCallCount() { |
| 383 MutexLocker locker(&mutex_); |
| 384 duplicate_buffer_handle_call_count_++; |
| 385 } |
| 386 |
| 387 void CoreTestBase_MockHandleInfo::IncrementGetBufferInformationCallCount() { |
| 388 MutexLocker locker(&mutex_); |
| 389 get_buffer_information_call_count_++; |
| 390 } |
| 391 |
| 392 void CoreTestBase_MockHandleInfo::IncrementMapBufferCallCount() { |
| 393 MutexLocker locker(&mutex_); |
| 394 map_buffer_call_count_++; |
| 395 } |
| 396 |
| 356 void CoreTestBase_MockHandleInfo::IncrementAddAwakableCallCount() { | 397 void CoreTestBase_MockHandleInfo::IncrementAddAwakableCallCount() { |
| 357 MutexLocker locker(&mutex_); | 398 MutexLocker locker(&mutex_); |
| 358 add_awakable_call_count_++; | 399 add_awakable_call_count_++; |
| 359 } | 400 } |
| 360 | 401 |
| 361 void CoreTestBase_MockHandleInfo::IncrementRemoveAwakableCallCount() { | 402 void CoreTestBase_MockHandleInfo::IncrementRemoveAwakableCallCount() { |
| 362 MutexLocker locker(&mutex_); | 403 MutexLocker locker(&mutex_); |
| 363 remove_awakable_call_count_++; | 404 remove_awakable_call_count_++; |
| 364 } | 405 } |
| 365 | 406 |
| (...skipping 13 matching lines...) Expand all Loading... |
| 379 } | 420 } |
| 380 | 421 |
| 381 void CoreTestBase_MockHandleInfo::AwakableWasAdded(Awakable* awakable) { | 422 void CoreTestBase_MockHandleInfo::AwakableWasAdded(Awakable* awakable) { |
| 382 MutexLocker locker(&mutex_); | 423 MutexLocker locker(&mutex_); |
| 383 added_awakables_.push_back(awakable); | 424 added_awakables_.push_back(awakable); |
| 384 } | 425 } |
| 385 | 426 |
| 386 } // namespace test | 427 } // namespace test |
| 387 } // namespace system | 428 } // namespace system |
| 388 } // namespace mojo | 429 } // namespace mojo |
| OLD | NEW |