Index: chrome/browser/sync/test_profile_sync_service.h |
=================================================================== |
--- chrome/browser/sync/test_profile_sync_service.h (revision 71392) |
+++ chrome/browser/sync/test_profile_sync_service.h (working copy) |
@@ -20,9 +20,11 @@ |
#include "chrome/browser/sync/syncable/syncable.h" |
#include "chrome/test/profile_mock.h" |
#include "chrome/test/sync/test_http_bridge_factory.h" |
+#include "chrome/test/sync/engine/test_id_factory.h" |
#include "testing/gmock/include/gmock/gmock.h" |
class Profile; |
+class TestProfileSyncService; |
using browser_sync::ModelSafeRoutingInfo; |
using browser_sync::sessions::ErrorCounters; |
@@ -60,7 +62,8 @@ |
// this is false, configuring data types will require a syncer nudge. |
// |synchronous_init| causes initialization to block until the syncapi has |
// completed setting itself up and called us back. |
- SyncBackendHostForProfileSyncTest(SyncFrontend* frontend, |
+ SyncBackendHostForProfileSyncTest( |
+ TestProfileSyncService* service, |
Profile* profile, |
const FilePath& profile_path, |
const DataTypeController::TypeMap& data_type_controllers, |
@@ -68,30 +71,8 @@ |
int num_expected_resumes, |
int num_expected_pauses, |
bool set_initial_sync_ended_on_init, |
- bool synchronous_init) |
- : browser_sync::SyncBackendHost(frontend, profile, profile_path, |
- data_type_controllers), |
- initial_condition_setup_task_(initial_condition_setup_task), |
- set_initial_sync_ended_on_init_(set_initial_sync_ended_on_init), |
- synchronous_init_(synchronous_init) { |
- // By default, the RequestPause and RequestResume methods will |
- // send the confirmation notification and return true. |
- ON_CALL(*this, RequestPause()). |
- WillByDefault(testing::DoAll(CallOnPaused(core_), |
- testing::Return(true))); |
- ON_CALL(*this, RequestResume()). |
- WillByDefault(testing::DoAll(CallOnResumed(core_), |
- testing::Return(true))); |
- ON_CALL(*this, RequestNudge()).WillByDefault(testing::Invoke(this, |
- &SyncBackendHostForProfileSyncTest:: |
- SimulateSyncCycleCompletedInitialSyncEnded)); |
+ bool synchronous_init); |
- EXPECT_CALL(*this, RequestPause()).Times(num_expected_pauses); |
- EXPECT_CALL(*this, RequestResume()).Times(num_expected_resumes); |
- EXPECT_CALL(*this, RequestNudge()). |
- Times(set_initial_sync_ended_on_init ? 0 : 1); |
- } |
- |
MOCK_METHOD0(RequestPause, bool()); |
MOCK_METHOD0(RequestResume, bool()); |
MOCK_METHOD0(RequestNudge, void()); |
@@ -118,22 +99,6 @@ |
SyncBackendHost::ConfigureDataTypes(types, ready_task); |
} |
- virtual void HandleInitializationCompletedOnFrontendLoop() { |
- set_syncapi_initialized(); // Need to do this asap so task below works. |
- |
- // Set up any nodes the test wants around before model association. |
- if (initial_condition_setup_task_) { |
- initial_condition_setup_task_->Run(); |
- } |
- |
- // Pretend we downloaded initial updates and set initial sync ended bits |
- // if we were asked to. |
- if (set_initial_sync_ended_on_init_) |
- SetInitialSyncEndedForEnabledTypes(); |
- |
- SyncBackendHost::HandleInitializationCompletedOnFrontendLoop(); |
- } |
- |
// Called when a nudge comes in. |
void SimulateSyncCycleCompletedInitialSyncEnded() { |
syncable::ModelTypeBitSet sync_ended; |
@@ -149,6 +114,8 @@ |
sync_ended, download_progress_markers, false, false, 0, 0, false)); |
} |
+ virtual void HandleInitializationCompletedOnFrontendLoop(); |
+ |
virtual sync_api::HttpPostProviderFactory* MakeHttpBridgeFactory( |
URLRequestContextGetter* getter) { |
return new browser_sync::TestHttpBridgeFactory; |
@@ -185,6 +152,7 @@ |
Task* initial_condition_setup_task_; |
bool set_initial_sync_ended_on_init_; |
bool synchronous_init_; |
+ TestProfileSyncService* test_service_; |
}; |
} // namespace browser_sync |
@@ -252,6 +220,8 @@ |
synchronous_sync_configuration_ = true; |
} |
+ browser_sync::TestIdFactory* id_factory() { return &id_factory_; } |
+ |
private: |
// When testing under ChromiumOS, this method must not return an empty |
// value value in order for the profile sync service to start. |
@@ -270,6 +240,9 @@ |
scoped_ptr<Task> initial_condition_setup_task_; |
bool set_initial_sync_ended_on_init_; |
+ browser_sync::TestIdFactory id_factory_; |
}; |
+ |
+ |
#endif // CHROME_BROWSER_SYNC_TEST_PROFILE_SYNC_SERVICE_H_ |