Index: chrome/browser/sync/profile_sync_service_startup_unittest.cc |
diff --git a/chrome/browser/sync/profile_sync_service_startup_unittest.cc b/chrome/browser/sync/profile_sync_service_startup_unittest.cc |
index 64956d85670a1fcf24d8191cade2a082c4f99d15..bb041a1ff79636c365f10c74957652d51ee4cd6e 100644 |
--- a/chrome/browser/sync/profile_sync_service_startup_unittest.cc |
+++ b/chrome/browser/sync/profile_sync_service_startup_unittest.cc |
@@ -34,6 +34,17 @@ using testing::DoAll; |
using testing::InvokeArgument; |
using testing::Mock; |
using testing::Return; |
+using testing::ReturnRef; |
+ |
+ACTION_P(InvokeOnConfigureStart, pss) { |
+ TestProfileSyncService* service = static_cast<TestProfileSyncService*>(pss); |
+ service->OnConfigureStart(); |
+} |
+ |
+ACTION_P(InvokeOnConfigureDone, pss) { |
+ TestProfileSyncService* service = static_cast<TestProfileSyncService*>(pss); |
+ service->OnConfigureDone(); |
+} |
// TODO(chron): Test not using cros_user flag and use signin_ |
class ProfileSyncServiceStartupTest : public testing::Test { |
@@ -90,6 +101,9 @@ class ProfileSyncServiceStartupTest : public testing::Test { |
DataTypeManagerMock* data_type_manager = new DataTypeManagerMock(); |
EXPECT_CALL(*factory_mock(), CreateDataTypeManager(_, _)). |
WillOnce(Return(data_type_manager)); |
+ EXPECT_CALL(*data_type_manager, AddObserver(_)).Times(AnyNumber()); |
+ EXPECT_CALL(*data_type_manager, RemoveObserver(_)).Times(AnyNumber()); |
+ EXPECT_CALL(*data_type_manager, HasObserver(_)).Times(AnyNumber()); |
return data_type_manager; |
} |
@@ -302,21 +316,19 @@ TEST_F(ProfileSyncServiceStartupTest, StartFailure) { |
FROM_HERE, "Association failed.", syncer::BOOKMARKS); |
std::list<syncer::SyncError> errors; |
errors.push_back(error); |
- browser_sync::DataTypeManager::ConfigureResult result( |
+ const browser_sync::DataTypeManager::ConfigureResult result( |
status, |
syncer::ModelTypeSet(), |
errors, |
syncer::ModelTypeSet()); |
EXPECT_CALL(*data_type_manager, Configure(_, _)). |
WillRepeatedly( |
- DoAll( |
- NotifyFromDataTypeManager(data_type_manager, |
- static_cast<int>(chrome::NOTIFICATION_SYNC_CONFIGURE_START)), |
- NotifyFromDataTypeManagerWithResult(data_type_manager, |
- static_cast<int>(chrome::NOTIFICATION_SYNC_CONFIGURE_DONE), |
- &result))); |
+ DoAll(InvokeOnConfigureStart(service_.get()), |
+ InvokeOnConfigureDone(service_.get()))); |
EXPECT_CALL(*data_type_manager, state()). |
WillOnce(Return(DataTypeManager::STOPPED)); |
+ EXPECT_CALL(*data_type_manager, last_configure_result()). |
+ WillRepeatedly(ReturnRef(result)); |
EXPECT_CALL(observer_, OnStateChanged()).Times(AnyNumber()); |