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

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: Merge pref changes from https://codereview.chromium.org/2528163002/. 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 231 matching lines...) Expand 10 before | Expand all | Expand 10 after
242 &profile_sync_service_bundle_); 242 &profile_sync_service_bundle_);
243 ProfileSyncService::InitParams init_params = 243 ProfileSyncService::InitParams init_params =
244 profile_sync_service_bundle_.CreateBasicInitParams(behavior, 244 profile_sync_service_bundle_.CreateBasicInitParams(behavior,
245 builder.Build()); 245 builder.Build());
246 246
247 service_ = base::MakeUnique<ProfileSyncService>(std::move(init_params)); 247 service_ = base::MakeUnique<ProfileSyncService>(std::move(init_params));
248 service_->RegisterDataTypeController( 248 service_->RegisterDataTypeController(
249 base::MakeUnique<syncer::FakeDataTypeController>(syncer::BOOKMARKS)); 249 base::MakeUnique<syncer::FakeDataTypeController>(syncer::BOOKMARKS));
250 } 250 }
251 251
252 #if defined(OS_WIN) || defined(OS_MACOSX) || \
253 (defined(OS_LINUX) && !defined(OS_CHROMEOS))
254 void CreateServiceWithoutSignIn() { 252 void CreateServiceWithoutSignIn() {
Nicolas Zea 2016/12/15 00:37:28 nit: for clarity would be good to rename to Create
pastarmovj 2016/12/16 17:04:48 Done.
255 CreateService(ProfileSyncService::AUTO_START); 253 component_factory_ = profile_sync_service_bundle_.component_factory();
256 signin_manager()->SignOut(signin_metrics::SIGNOUT_TEST, 254 ProfileSyncServiceBundle::SyncClientBuilder builder(
257 signin_metrics::SignoutDelete::IGNORE_METRIC); 255 &profile_sync_service_bundle_);
256 ProfileSyncService::InitParams init_params =
257 profile_sync_service_bundle_.CreateBasicInitParams(
258 ProfileSyncService::AUTO_START, builder.Build());
259
260 prefs()->SetBoolean(syncer::prefs::kEnableLocalSyncBackend, true);
261 init_params.local_sync_backend_folder =
262 base::FilePath(FILE_PATH_LITERAL("dummyPath"));
263 init_params.oauth2_token_service = nullptr;
264 init_params.gaia_cookie_manager_service = nullptr;
265
266 service_ = base::MakeUnique<ProfileSyncService>(std::move(init_params));
267 service_->RegisterDataTypeController(
268 base::MakeUnique<syncer::FakeDataTypeController>(syncer::BOOKMARKS));
258 } 269 }
259 #endif
260 270
261 void ShutdownAndDeleteService() { 271 void ShutdownAndDeleteService() {
262 if (service_) 272 if (service_)
263 service_->Shutdown(); 273 service_->Shutdown();
264 service_.reset(); 274 service_.reset();
265 } 275 }
266 276
267 void InitializeForNthSync() { 277 void InitializeForNthSync() {
268 // Set first sync time before initialize to simulate a complete sync setup. 278 // Set first sync time before initialize to simulate a complete sync setup.
269 syncer::SyncPrefs sync_prefs(prefs()); 279 syncer::SyncPrefs sync_prefs(prefs());
(...skipping 133 matching lines...) Expand 10 before | Expand all | Expand 10 after
403 new base::FundamentalValue(false)); 413 new base::FundamentalValue(false));
404 IssueTestTokens(); 414 IssueTestTokens();
405 CreateService(ProfileSyncService::AUTO_START); 415 CreateService(ProfileSyncService::AUTO_START);
406 ExpectDataTypeManagerCreation(1, GetDefaultConfigureCalledCallback()); 416 ExpectDataTypeManagerCreation(1, GetDefaultConfigureCalledCallback());
407 ExpectSyncEngineCreation(1); 417 ExpectSyncEngineCreation(1);
408 InitializeForNthSync(); 418 InitializeForNthSync();
409 EXPECT_FALSE(service()->IsManaged()); 419 EXPECT_FALSE(service()->IsManaged());
410 EXPECT_TRUE(service()->IsSyncActive()); 420 EXPECT_TRUE(service()->IsSyncActive());
411 } 421 }
412 422
423 // Verify a successful initialization.
424 TEST_F(ProfileSyncServiceTest, SuccessfulLocalBackendInitialization) {
425 prefs()->SetManagedPref(syncer::prefs::kSyncManaged,
426 new base::FundamentalValue(false));
427 IssueTestTokens();
428 CreateServiceWithoutSignIn();
429 ExpectDataTypeManagerCreation(1, GetDefaultConfigureCalledCallback());
430 ExpectSyncEngineCreation(1);
431 InitializeForNthSync();
432 EXPECT_FALSE(service()->IsManaged());
433 EXPECT_TRUE(service()->IsSyncActive());
434 }
435
413 // Verify that an initialization where first setup is not complete does not 436 // Verify that an initialization where first setup is not complete does not
414 // start up the backend. 437 // start up the backend.
415 TEST_F(ProfileSyncServiceTest, NeedsConfirmation) { 438 TEST_F(ProfileSyncServiceTest, NeedsConfirmation) {
416 prefs()->SetManagedPref(syncer::prefs::kSyncManaged, 439 prefs()->SetManagedPref(syncer::prefs::kSyncManaged,
417 new base::FundamentalValue(false)); 440 new base::FundamentalValue(false));
418 IssueTestTokens(); 441 IssueTestTokens();
419 CreateService(ProfileSyncService::MANUAL_START); 442 CreateService(ProfileSyncService::MANUAL_START);
420 syncer::SyncPrefs sync_prefs(prefs()); 443 syncer::SyncPrefs sync_prefs(prefs());
421 base::Time now = base::Time::Now(); 444 base::Time now = base::Time::Now();
422 sync_prefs.SetLastSyncedTime(now); 445 sync_prefs.SetLastSyncedTime(now);
(...skipping 547 matching lines...) Expand 10 before | Expand all | Expand 10 after
970 // Progress the controller to RUNNING first, which is how the service 993 // Progress the controller to RUNNING first, which is how the service
971 // determines whether a type is enabled. 994 // determines whether a type is enabled.
972 controller->StartAssociating(base::Bind(&DoNothing)); 995 controller->StartAssociating(base::Bind(&DoNothing));
973 controller->FinishStart(DataTypeController::OK_FIRST_RUN); 996 controller->FinishStart(DataTypeController::OK_FIRST_RUN);
974 service()->RegisterDataTypeController(std::move(controller)); 997 service()->RegisterDataTypeController(std::move(controller));
975 EXPECT_NE(nullptr, service()->GetOpenTabsUIDelegate()); 998 EXPECT_NE(nullptr, service()->GetOpenTabsUIDelegate());
976 } 999 }
977 1000
978 } // namespace 1001 } // namespace
979 } // namespace browser_sync 1002 } // namespace browser_sync
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698