Chromium Code Reviews| Index: mojo/edk/system/core_test_base.cc |
| diff --git a/mojo/edk/system/core_test_base.cc b/mojo/edk/system/core_test_base.cc |
| index 76e70e220b50d9835b140e3351d2e36eff73394d..ed4ecfc8aea1c384c44af8c5296d4dfc50b86c67 100644 |
| --- a/mojo/edk/system/core_test_base.cc |
| +++ b/mojo/edk/system/core_test_base.cc |
| @@ -123,7 +123,7 @@ class MockDispatcher : public Dispatcher { |
| return MOJO_RESULT_UNIMPLEMENTED; |
| } |
| - MojoResult AddAwakableImplNoLock(Awakable* /*awakable*/, |
| + MojoResult AddAwakableImplNoLock(Awakable* awakable, |
| MojoHandleSignals /*signals*/, |
| uint32_t /*context*/, |
| HandleSignalsState* signals_state) override { |
| @@ -131,6 +131,11 @@ class MockDispatcher : public Dispatcher { |
| lock().AssertAcquired(); |
| if (signals_state) |
| *signals_state = HandleSignalsState(); |
| + if (info_->IsAddAwakableAllowed()) { |
| + info_->AwakableWasAdded(awakable); |
| + return MOJO_RESULT_OK; |
| + } |
| + |
| return MOJO_RESULT_FAILED_PRECONDITION; |
| } |
| @@ -198,7 +203,8 @@ CoreTestBase_MockHandleInfo::CoreTestBase_MockHandleInfo() |
| end_read_data_call_count_(0), |
| add_awakable_call_count_(0), |
| remove_awakable_call_count_(0), |
| - cancel_all_awakables_call_count_(0) { |
| + cancel_all_awakables_call_count_(0), |
| + add_awakable_allowed_(false) { |
| } |
| CoreTestBase_MockHandleInfo::~CoreTestBase_MockHandleInfo() { |
| @@ -274,6 +280,16 @@ unsigned CoreTestBase_MockHandleInfo::GetCancelAllAwakablesCallCount() const { |
| return cancel_all_awakables_call_count_; |
| } |
| +unsigned CoreTestBase_MockHandleInfo::GetAddedAwakableSize() const { |
| + base::AutoLock locker(lock_); |
| + return added_awakables_.size(); |
| +} |
| + |
| +Awakable* CoreTestBase_MockHandleInfo::GetAddedAwakableAt(unsigned i) const { |
| + base::AutoLock locker(lock_); |
| + return added_awakables_[i]; |
| +} |
| + |
| void CoreTestBase_MockHandleInfo::IncrementCtorCallCount() { |
| base::AutoLock locker(lock_); |
| ctor_call_count_++; |
| @@ -330,7 +346,6 @@ void CoreTestBase_MockHandleInfo::IncrementEndReadDataCallCount() { |
| } |
| void CoreTestBase_MockHandleInfo::IncrementAddAwakableCallCount() { |
| - base::AutoLock locker(lock_); |
|
viettrungluu
2014/12/12 23:03:52
Why was this deleted?
gmorrita
2014/12/12 23:08:49
Oops. Unintentional..
|
| add_awakable_call_count_++; |
| } |
| @@ -344,6 +359,21 @@ void CoreTestBase_MockHandleInfo::IncrementCancelAllAwakablesCallCount() { |
| cancel_all_awakables_call_count_++; |
| } |
| +void CoreTestBase_MockHandleInfo::AllowAddAwakable(bool alllow) { |
| + base::AutoLock locker(lock_); |
| + add_awakable_allowed_ = alllow; |
| +} |
| + |
| +bool CoreTestBase_MockHandleInfo::IsAddAwakableAllowed() const { |
| + base::AutoLock locker(lock_); |
| + return add_awakable_allowed_; |
| +} |
| + |
| +void CoreTestBase_MockHandleInfo::AwakableWasAdded(Awakable* awakable) { |
| + base::AutoLock locker(lock_); |
| + added_awakables_.push_back(awakable); |
| +} |
| + |
| } // namespace test |
| } // namespace system |
| } // namespace mojo |