Index: sync/engine/sync_scheduler_unittest.cc |
diff --git a/sync/engine/sync_scheduler_unittest.cc b/sync/engine/sync_scheduler_unittest.cc |
index 1bb52453508f13eb28e688209c7b78911d7803ff..ce7a0254fd40bf57823b533badcc36c9edcdcf39 100644 |
--- a/sync/engine/sync_scheduler_unittest.cc |
+++ b/sync/engine/sync_scheduler_unittest.cc |
@@ -42,7 +42,7 @@ using sync_pb::GetUpdatesCallerInfo; |
class MockSyncer : public Syncer { |
public: |
- MOCK_METHOD3(SyncShare, void(sessions::SyncSession*, SyncerStep, |
+ MOCK_METHOD3(SyncShare, bool(sessions::SyncSession*, SyncerStep, |
SyncerStep)); |
}; |
@@ -101,6 +101,7 @@ class SyncSchedulerTest : public testing::Test { |
}; |
virtual void SetUp() { |
+ message_loop_.reset(new MessageLoop()); |
dir_maker_.SetUp(); |
syncer_ = new MockSyncer(); |
delay_ = NULL; |
@@ -110,6 +111,7 @@ class SyncSchedulerTest : public testing::Test { |
routing_info_[THEMES] = GROUP_UI; |
routing_info_[NIGORI] = GROUP_PASSIVE; |
+ workers_.clear(); |
workers_.push_back(make_scoped_refptr(new FakeModelWorker(GROUP_UI))); |
workers_.push_back(make_scoped_refptr(new FakeModelWorker(GROUP_DB))); |
workers_.push_back(make_scoped_refptr(new FakeModelWorker(GROUP_PASSIVE))); |
@@ -223,7 +225,7 @@ class SyncSchedulerTest : public testing::Test { |
} |
base::WeakPtrFactory<SyncSchedulerTest> weak_ptr_factory_; |
- MessageLoop message_loop_; |
+ scoped_ptr<MessageLoop> message_loop_; |
akalin
2012/10/26 06:52:29
why'd you have to do this?
tim (not reviewing)
2012/10/26 22:52:27
Ah, leftover from some debugging. Undone.
|
TestDirectorySetterUpper dir_maker_; |
scoped_ptr<MockConnectionManager> connection_; |
scoped_ptr<SyncSessionContext> context_; |
@@ -245,6 +247,7 @@ ACTION_P(RecordSyncShare, record) { |
RecordSyncShareImpl(arg0, record); |
if (MessageLoop::current()->is_running()) |
QuitLoopNow(); |
+ return true; |
} |
ACTION_P2(RecordSyncShareMultiple, record, quit_after) { |
@@ -254,15 +257,18 @@ ACTION_P2(RecordSyncShareMultiple, record, quit_after) { |
MessageLoop::current()->is_running()) { |
QuitLoopNow(); |
} |
+ return true; |
} |
ACTION(AddFailureAndQuitLoopNow) { |
ADD_FAILURE(); |
QuitLoopNow(); |
+ return true; |
} |
ACTION(QuitLoopNowAction) { |
QuitLoopNow(); |
+ return true; |
} |
// Test nudge scheduling. |
@@ -646,8 +652,10 @@ TEST_F(SyncSchedulerTest, PollIntervalUpdate) { |
TimeDelta poll2(TimeDelta::FromMilliseconds(30)); |
scheduler()->OnReceivedLongPollIntervalUpdate(poll1); |
EXPECT_CALL(*syncer(), SyncShare(_,_,_)).Times(AtLeast(kMinNumSamples)) |
- .WillOnce(WithArg<0>( |
- sessions::test_util::SimulatePollIntervalUpdate(poll2))) |
+ .WillOnce(DoAll( |
+ WithArg<0>( |
+ sessions::test_util::SimulatePollIntervalUpdate(poll2)), |
+ Return(true))) |
.WillRepeatedly( |
DoAll(Invoke(sessions::test_util::SimulateSuccess), |
WithArg<0>( |
@@ -695,7 +703,8 @@ TEST_F(SyncSchedulerTest, SessionsCommitDelay) { |
// Test that a sync session is run through to completion. |
TEST_F(SyncSchedulerTest, HasMoreToSync) { |
EXPECT_CALL(*syncer(), SyncShare(_,_,_)) |
- .WillOnce(Invoke(sessions::test_util::SimulateHasMoreToSync)) |
+ .WillOnce(DoAll(Invoke(sessions::test_util::SimulateHasMoreToSync), |
+ Return(true))) |
.WillOnce(DoAll(Invoke(sessions::test_util::SimulateSuccess), |
QuitLoopNowAction())); |
StartSyncScheduler(SyncScheduler::NORMAL_MODE); |
@@ -710,7 +719,8 @@ TEST_F(SyncSchedulerTest, HasMoreToSync) { |
// Test that continuations can go into backoff. |
TEST_F(SyncSchedulerTest, HasMoreToSyncThenFails) { |
EXPECT_CALL(*syncer(), SyncShare(_,_,_)) |
- .WillOnce(Invoke(sessions::test_util::SimulateHasMoreToSync)) |
+ .WillOnce(DoAll(Invoke(sessions::test_util::SimulateHasMoreToSync), |
+ Return(true))) |
.WillOnce(DoAll(Invoke(sessions::test_util::SimulateCommitFailed), |
QuitLoopNowAction())); |
StartSyncScheduler(SyncScheduler::NORMAL_MODE); |
@@ -730,7 +740,9 @@ TEST_F(SyncSchedulerTest, ThrottlingDoesThrottle) { |
scheduler()->OnReceivedLongPollIntervalUpdate(poll); |
EXPECT_CALL(*syncer(), SyncShare(_,_,_)) |
- .WillOnce(WithArg<0>(sessions::test_util::SimulateThrottled(throttle))) |
+ .WillOnce(DoAll( |
+ WithArg<0>(sessions::test_util::SimulateThrottled(throttle)), |
+ Return(true))) |
.WillRepeatedly(AddFailureAndQuitLoopNow()); |
StartSyncScheduler(SyncScheduler::NORMAL_MODE); |
@@ -759,7 +771,9 @@ TEST_F(SyncSchedulerTest, ThrottlingExpires) { |
::testing::InSequence seq; |
EXPECT_CALL(*syncer(), SyncShare(_,_,_)) |
- .WillOnce(WithArg<0>(sessions::test_util::SimulateThrottled(throttle1))) |
+ .WillOnce(DoAll( |
+ WithArg<0>(sessions::test_util::SimulateThrottled(throttle1)), |
+ Return(true))) |
.RetiresOnSaturation(); |
EXPECT_CALL(*syncer(), SyncShare(_,_,_)) |
.WillRepeatedly(DoAll(Invoke(sessions::test_util::SimulateSuccess), |
@@ -857,7 +871,9 @@ TEST_F(BackoffTriggersSyncSchedulerTest, FailCommitOnce) { |
// retry. Expect that this clears the backoff state. |
TEST_F(BackoffTriggersSyncSchedulerTest, FailDownloadOnceThenSucceed) { |
EXPECT_CALL(*syncer(), SyncShare(_,_,_)) |
- .WillOnce(Invoke(sessions::test_util::SimulateDownloadUpdatesFailed)) |
+ .WillOnce(DoAll( |
+ Invoke(sessions::test_util::SimulateDownloadUpdatesFailed), |
+ Return(true))) |
.WillOnce(DoAll(Invoke(sessions::test_util::SimulateSuccess), |
QuitLoopNowAction())); |
EXPECT_FALSE(RunAndGetBackoff()); |
@@ -867,7 +883,9 @@ TEST_F(BackoffTriggersSyncSchedulerTest, FailDownloadOnceThenSucceed) { |
// that this clears the backoff state. |
TEST_F(BackoffTriggersSyncSchedulerTest, FailCommitOnceThenSucceed) { |
EXPECT_CALL(*syncer(), SyncShare(_,_,_)) |
- .WillOnce(Invoke(sessions::test_util::SimulateCommitFailed)) |
+ .WillOnce(DoAll( |
+ Invoke(sessions::test_util::SimulateCommitFailed), |
+ Return(true))) |
.WillOnce(DoAll(Invoke(sessions::test_util::SimulateSuccess), |
QuitLoopNowAction())); |
EXPECT_FALSE(RunAndGetBackoff()); |
@@ -877,7 +895,9 @@ TEST_F(BackoffTriggersSyncSchedulerTest, FailCommitOnceThenSucceed) { |
// Expect this will leave the scheduler in backoff. |
TEST_F(BackoffTriggersSyncSchedulerTest, FailDownloadTwice) { |
EXPECT_CALL(*syncer(), SyncShare(_,_,_)) |
- .WillOnce(Invoke(sessions::test_util::SimulateDownloadUpdatesFailed)) |
+ .WillOnce(DoAll( |
+ Invoke(sessions::test_util::SimulateDownloadUpdatesFailed), |
+ Return(true))) |
.WillRepeatedly(DoAll( |
Invoke(sessions::test_util::SimulateDownloadUpdatesFailed), |
QuitLoopNowAction())); |
@@ -888,7 +908,9 @@ TEST_F(BackoffTriggersSyncSchedulerTest, FailDownloadTwice) { |
// updates. Expect this will leave the scheduler in backoff. |
TEST_F(BackoffTriggersSyncSchedulerTest, FailGetEncryptionKey) { |
EXPECT_CALL(*syncer(), SyncShare(_,_,_)) |
- .WillOnce(Invoke(sessions::test_util::SimulateGetEncryptionKeyFailed)) |
+ .WillOnce(DoAll( |
+ Invoke(sessions::test_util::SimulateGetEncryptionKeyFailed), |
+ Return(true))) |
.WillRepeatedly(DoAll( |
Invoke(sessions::test_util::SimulateGetEncryptionKeyFailed), |
QuitLoopNowAction())); |
@@ -1070,7 +1092,8 @@ TEST_F(SyncSchedulerTest, TransientPollFailure) { |
TEST_F(SyncSchedulerTest, SyncerSteps) { |
// Nudges. |
EXPECT_CALL(*syncer(), SyncShare(_, SYNCER_BEGIN, SYNCER_END)) |
- .WillOnce(Invoke(sessions::test_util::SimulateSuccess)); |
+ .WillOnce(DoAll(Invoke(sessions::test_util::SimulateSuccess), |
+ Return(true))); |
StartSyncScheduler(SyncScheduler::NORMAL_MODE); |
scheduler()->ScheduleNudgeAsync( |
@@ -1084,7 +1107,8 @@ TEST_F(SyncSchedulerTest, SyncerSteps) { |
// Configuration. |
EXPECT_CALL(*syncer(), SyncShare(_, DOWNLOAD_UPDATES, APPLY_UPDATES)) |
- .WillOnce(Invoke(sessions::test_util::SimulateSuccess)); |
+ .WillOnce(DoAll(Invoke(sessions::test_util::SimulateSuccess), |
+ Return(true))); |
StartSyncScheduler(SyncScheduler::CONFIGURATION_MODE); |
ModelTypeSet model_types(BOOKMARKS); |
@@ -1125,8 +1149,10 @@ TEST_F(SyncSchedulerTest, StartWhenNotConnected) { |
connection()->SetServerNotReachable(); |
connection()->UpdateConnectionStatus(); |
EXPECT_CALL(*syncer(), SyncShare(_,_,_)) |
- .WillOnce(Invoke(sessions::test_util::SimulateConnectionFailure)) |
- .WillOnce(QuitLoopNowAction()); |
+ .WillOnce(DoAll(Invoke(sessions::test_util::SimulateConnectionFailure), |
+ Return(true))) |
+ .WillOnce(DoAll(Invoke(sessions::test_util::SimulateSuccess), |
+ QuitLoopNowAction())); |
StartSyncScheduler(SyncScheduler::NORMAL_MODE); |
scheduler()->ScheduleNudgeAsync( |