Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(386)

Side by Side Diff: components/browser_sync/profile_sync_service_unittest.cc

Issue 2494873003: [Sync] Allow sync start without sign-in if the local sync backend is on. (Closed)
Patch Set: Remove ifdefs around include. Created 4 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 "components/browser_sync/profile_sync_service.h" 5 #include "components/browser_sync/profile_sync_service.h"
6 6
7 #include <utility> 7 #include <utility>
8 8
9 #include "base/callback.h" 9 #include "base/callback.h"
10 #include "base/command_line.h" 10 #include "base/command_line.h"
(...skipping 193 matching lines...) Expand 10 before | Expand all | Expand 10 after
204 &profile_sync_service_bundle_); 204 &profile_sync_service_bundle_);
205 ProfileSyncService::InitParams init_params = 205 ProfileSyncService::InitParams init_params =
206 profile_sync_service_bundle_.CreateBasicInitParams(behavior, 206 profile_sync_service_bundle_.CreateBasicInitParams(behavior,
207 builder.Build()); 207 builder.Build());
208 208
209 service_ = base::MakeUnique<ProfileSyncService>(std::move(init_params)); 209 service_ = base::MakeUnique<ProfileSyncService>(std::move(init_params));
210 service_->RegisterDataTypeController( 210 service_->RegisterDataTypeController(
211 base::MakeUnique<syncer::FakeDataTypeController>(syncer::BOOKMARKS)); 211 base::MakeUnique<syncer::FakeDataTypeController>(syncer::BOOKMARKS));
212 } 212 }
213 213
214 #if defined(OS_WIN) || defined(OS_MACOSX) || \ 214 void CreateServiceWithLocalSyncBackend() {
215 (defined(OS_LINUX) && !defined(OS_CHROMEOS)) 215 component_factory_ = profile_sync_service_bundle_.component_factory();
216 void CreateServiceWithoutSignIn() { 216 ProfileSyncServiceBundle::SyncClientBuilder builder(
217 CreateService(ProfileSyncService::AUTO_START); 217 &profile_sync_service_bundle_);
218 signin_manager()->SignOut(signin_metrics::SIGNOUT_TEST, 218 ProfileSyncService::InitParams init_params =
219 signin_metrics::SignoutDelete::IGNORE_METRIC); 219 profile_sync_service_bundle_.CreateBasicInitParams(
220 ProfileSyncService::AUTO_START, builder.Build());
221
222 prefs()->SetBoolean(syncer::prefs::kEnableLocalSyncBackend, true);
223 init_params.local_sync_backend_folder =
224 base::FilePath(FILE_PATH_LITERAL("dummyPath"));
225 init_params.oauth2_token_service = nullptr;
226 init_params.gaia_cookie_manager_service = nullptr;
227
228 service_ = base::MakeUnique<ProfileSyncService>(std::move(init_params));
229 service_->RegisterDataTypeController(
230 base::MakeUnique<syncer::FakeDataTypeController>(syncer::BOOKMARKS));
220 } 231 }
221 #endif
222 232
223 void ShutdownAndDeleteService() { 233 void ShutdownAndDeleteService() {
224 if (service_) 234 if (service_)
225 service_->Shutdown(); 235 service_->Shutdown();
226 service_.reset(); 236 service_.reset();
227 } 237 }
228 238
229 void InitializeForNthSync() { 239 void InitializeForNthSync() {
230 // Set first sync time before initialize to simulate a complete sync setup. 240 // Set first sync time before initialize to simulate a complete sync setup.
231 syncer::SyncPrefs sync_prefs(prefs()); 241 syncer::SyncPrefs sync_prefs(prefs());
(...skipping 133 matching lines...) Expand 10 before | Expand all | Expand 10 after
365 new base::FundamentalValue(false)); 375 new base::FundamentalValue(false));
366 IssueTestTokens(); 376 IssueTestTokens();
367 CreateService(ProfileSyncService::AUTO_START); 377 CreateService(ProfileSyncService::AUTO_START);
368 ExpectDataTypeManagerCreation(1, GetDefaultConfigureCalledCallback()); 378 ExpectDataTypeManagerCreation(1, GetDefaultConfigureCalledCallback());
369 ExpectSyncEngineCreation(1); 379 ExpectSyncEngineCreation(1);
370 InitializeForNthSync(); 380 InitializeForNthSync();
371 EXPECT_FALSE(service()->IsManaged()); 381 EXPECT_FALSE(service()->IsManaged());
372 EXPECT_TRUE(service()->IsSyncActive()); 382 EXPECT_TRUE(service()->IsSyncActive());
373 } 383 }
374 384
385 // Verify a successful initialization.
386 TEST_F(ProfileSyncServiceTest, SuccessfulLocalBackendInitialization) {
387 prefs()->SetManagedPref(syncer::prefs::kSyncManaged,
388 new base::FundamentalValue(false));
389 IssueTestTokens();
390 CreateServiceWithLocalSyncBackend();
391 ExpectDataTypeManagerCreation(1, GetDefaultConfigureCalledCallback());
392 ExpectSyncEngineCreation(1);
393 InitializeForNthSync();
394 EXPECT_FALSE(service()->IsManaged());
395 EXPECT_TRUE(service()->IsSyncActive());
396 }
397
375 // Verify that an initialization where first setup is not complete does not 398 // Verify that an initialization where first setup is not complete does not
376 // start up the backend. 399 // start up the backend.
377 TEST_F(ProfileSyncServiceTest, NeedsConfirmation) { 400 TEST_F(ProfileSyncServiceTest, NeedsConfirmation) {
378 prefs()->SetManagedPref(syncer::prefs::kSyncManaged, 401 prefs()->SetManagedPref(syncer::prefs::kSyncManaged,
379 new base::FundamentalValue(false)); 402 new base::FundamentalValue(false));
380 IssueTestTokens(); 403 IssueTestTokens();
381 CreateService(ProfileSyncService::MANUAL_START); 404 CreateService(ProfileSyncService::MANUAL_START);
382 syncer::SyncPrefs sync_prefs(prefs()); 405 syncer::SyncPrefs sync_prefs(prefs());
383 base::Time now = base::Time::Now(); 406 base::Time now = base::Time::Now();
384 sync_prefs.SetLastSyncedTime(now); 407 sync_prefs.SetLastSyncedTime(now);
(...skipping 547 matching lines...) Expand 10 before | Expand all | Expand 10 after
932 // Progress the controller to RUNNING first, which is how the service 955 // Progress the controller to RUNNING first, which is how the service
933 // determines whether a type is enabled. 956 // determines whether a type is enabled.
934 controller->StartAssociating(base::Bind(&DoNothing)); 957 controller->StartAssociating(base::Bind(&DoNothing));
935 controller->FinishStart(DataTypeController::OK_FIRST_RUN); 958 controller->FinishStart(DataTypeController::OK_FIRST_RUN);
936 service()->RegisterDataTypeController(std::move(controller)); 959 service()->RegisterDataTypeController(std::move(controller));
937 EXPECT_NE(nullptr, service()->GetOpenTabsUIDelegate()); 960 EXPECT_NE(nullptr, service()->GetOpenTabsUIDelegate());
938 } 961 }
939 962
940 } // namespace 963 } // namespace
941 } // namespace browser_sync 964 } // namespace browser_sync
OLDNEW
« no previous file with comments | « components/browser_sync/profile_sync_service.cc ('k') | components/browsing_data/core/history_notice_utils_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698