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

Side by Side Diff: chrome/browser/sync/profile_sync_service_startup_unittest.cc

Issue 15024007: Eliminate BrowserProcess dependency from sign-in production code. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Merge LKGR Created 7 years, 7 months 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 | Annotate | Revision Log
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 "testing/gtest/include/gtest/gtest.h" 5 #include "testing/gtest/include/gtest/gtest.h"
6 6
7 #include "base/memory/scoped_ptr.h" 7 #include "base/memory/scoped_ptr.h"
8 #include "base/message_loop.h" 8 #include "base/message_loop.h"
9 #include "base/prefs/pref_service.h" 9 #include "base/prefs/pref_service.h"
10 #include "chrome/browser/signin/fake_signin_manager.h" 10 #include "chrome/browser/signin/fake_signin_manager.h"
(...skipping 141 matching lines...) Expand 10 before | Expand all | Expand 10 after
152 sync_->set_synchronous_sync_configuration(); 152 sync_->set_synchronous_sync_configuration();
153 } 153 }
154 154
155 static ProfileKeyedService* BuildCrosService( 155 static ProfileKeyedService* BuildCrosService(
156 content::BrowserContext* context) { 156 content::BrowserContext* context) {
157 Profile* profile = static_cast<Profile*>(context); 157 Profile* profile = static_cast<Profile*>(context);
158 SigninManagerBase* signin = 158 SigninManagerBase* signin =
159 SigninManagerFactory::GetForProfile(profile); 159 SigninManagerFactory::GetForProfile(profile);
160 profile->GetPrefs()->SetString(prefs::kGoogleServicesUsername, 160 profile->GetPrefs()->SetString(prefs::kGoogleServicesUsername,
161 "test_user"); 161 "test_user");
162 signin->Initialize(profile); 162 signin->Initialize(profile, NULL);
163 EXPECT_FALSE(signin->GetAuthenticatedUsername().empty()); 163 EXPECT_FALSE(signin->GetAuthenticatedUsername().empty());
164 return new TestProfileSyncService( 164 return new TestProfileSyncService(
165 new ProfileSyncComponentsFactoryMock(), 165 new ProfileSyncComponentsFactoryMock(),
166 profile, 166 profile,
167 signin, 167 signin,
168 ProfileSyncService::AUTO_START, 168 ProfileSyncService::AUTO_START,
169 true); 169 true);
170 } 170 }
171 }; 171 };
172 172
173 ProfileKeyedService* BuildFakeTokenService(content::BrowserContext* profile) { 173 ProfileKeyedService* BuildFakeTokenService(content::BrowserContext* profile) {
174 return new FakeTokenService(); 174 return new FakeTokenService();
175 } 175 }
176 176
177 TEST_F(ProfileSyncServiceStartupTest, StartFirstTime) { 177 TEST_F(ProfileSyncServiceStartupTest, StartFirstTime) {
178 // We've never completed startup. 178 // We've never completed startup.
179 profile_->GetPrefs()->ClearPref(prefs::kSyncHasSetupCompleted); 179 profile_->GetPrefs()->ClearPref(prefs::kSyncHasSetupCompleted);
180 SigninManagerFactory::GetForProfile( 180 SigninManagerFactory::GetForProfile(
181 profile_.get())->Initialize(profile_.get()); 181 profile_.get())->Initialize(profile_.get(), NULL);
182 CreateSyncService(); 182 CreateSyncService();
183 DataTypeManagerMock* data_type_manager = SetUpDataTypeManager(); 183 DataTypeManagerMock* data_type_manager = SetUpDataTypeManager();
184 EXPECT_CALL(*data_type_manager, Configure(_, _)).Times(0); 184 EXPECT_CALL(*data_type_manager, Configure(_, _)).Times(0);
185 185
186 // Should not actually start, rather just clean things up and wait 186 // Should not actually start, rather just clean things up and wait
187 // to be enabled. 187 // to be enabled.
188 EXPECT_CALL(observer_, OnStateChanged()).Times(AnyNumber()); 188 EXPECT_CALL(observer_, OnStateChanged()).Times(AnyNumber());
189 sync_->Initialize(); 189 sync_->Initialize();
190 190
191 // Preferences should be back to defaults. 191 // Preferences should be back to defaults.
(...skipping 29 matching lines...) Expand all
221 221
222 // Simulate the UI telling sync it has finished setting up. 222 // Simulate the UI telling sync it has finished setting up.
223 sync_->SetSetupInProgress(false); 223 sync_->SetSetupInProgress(false);
224 EXPECT_TRUE(sync_->ShouldPushChanges()); 224 EXPECT_TRUE(sync_->ShouldPushChanges());
225 } 225 }
226 226
227 TEST_F(ProfileSyncServiceStartupTest, StartNoCredentials) { 227 TEST_F(ProfileSyncServiceStartupTest, StartNoCredentials) {
228 // We've never completed startup. 228 // We've never completed startup.
229 profile_->GetPrefs()->ClearPref(prefs::kSyncHasSetupCompleted); 229 profile_->GetPrefs()->ClearPref(prefs::kSyncHasSetupCompleted);
230 SigninManagerFactory::GetForProfile( 230 SigninManagerFactory::GetForProfile(
231 profile_.get())->Initialize(profile_.get()); 231 profile_.get())->Initialize(profile_.get(), NULL);
232 TokenService* token_service = static_cast<TokenService*>( 232 TokenService* token_service = static_cast<TokenService*>(
233 TokenServiceFactory::GetInstance()->SetTestingFactoryAndUse( 233 TokenServiceFactory::GetInstance()->SetTestingFactoryAndUse(
234 profile_.get(), BuildFakeTokenService)); 234 profile_.get(), BuildFakeTokenService));
235 CreateSyncService(); 235 CreateSyncService();
236 DataTypeManagerMock* data_type_manager = SetUpDataTypeManager(); 236 DataTypeManagerMock* data_type_manager = SetUpDataTypeManager();
237 EXPECT_CALL(*data_type_manager, Configure(_, _)).Times(0); 237 EXPECT_CALL(*data_type_manager, Configure(_, _)).Times(0);
238 238
239 // Should not actually start, rather just clean things up and wait 239 // Should not actually start, rather just clean things up and wait
240 // to be enabled. 240 // to be enabled.
241 EXPECT_CALL(observer_, OnStateChanged()).Times(AnyNumber()); 241 EXPECT_CALL(observer_, OnStateChanged()).Times(AnyNumber());
(...skipping 29 matching lines...) Expand all
271 271
272 sync_->SetSetupInProgress(false); 272 sync_->SetSetupInProgress(false);
273 // Backend should initialize using a bogus GAIA token for credentials. 273 // Backend should initialize using a bogus GAIA token for credentials.
274 EXPECT_TRUE(sync_->ShouldPushChanges()); 274 EXPECT_TRUE(sync_->ShouldPushChanges());
275 } 275 }
276 276
277 TEST_F(ProfileSyncServiceStartupTest, StartInvalidCredentials) { 277 TEST_F(ProfileSyncServiceStartupTest, StartInvalidCredentials) {
278 profile_->GetPrefs()->SetString(prefs::kGoogleServicesUsername, 278 profile_->GetPrefs()->SetString(prefs::kGoogleServicesUsername,
279 "test_user"); 279 "test_user");
280 SigninManagerFactory::GetForProfile( 280 SigninManagerFactory::GetForProfile(
281 profile_.get())->Initialize(profile_.get()); 281 profile_.get())->Initialize(profile_.get(), NULL);
282 CreateSyncService(); 282 CreateSyncService();
283 DataTypeManagerMock* data_type_manager = SetUpDataTypeManager(); 283 DataTypeManagerMock* data_type_manager = SetUpDataTypeManager();
284 EXPECT_CALL(*data_type_manager, Configure(_, _)).Times(0); 284 EXPECT_CALL(*data_type_manager, Configure(_, _)).Times(0);
285 TokenService* token_service = static_cast<TokenService*>( 285 TokenService* token_service = static_cast<TokenService*>(
286 TokenServiceFactory::GetInstance()->SetTestingFactoryAndUse( 286 TokenServiceFactory::GetInstance()->SetTestingFactoryAndUse(
287 profile_.get(), BuildFakeTokenService)); 287 profile_.get(), BuildFakeTokenService));
288 token_service->LoadTokensFromDB(); 288 token_service->LoadTokensFromDB();
289 289
290 // Tell the backend to stall while downloading control types (simulating an 290 // Tell the backend to stall while downloading control types (simulating an
291 // auth error). 291 // auth error).
(...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after
355 TokenServiceFactory::GetForProfile(profile_.get())->IssueAuthTokenForTest( 355 TokenServiceFactory::GetForProfile(profile_.get())->IssueAuthTokenForTest(
356 GaiaConstants::kSyncService, "sync_token"); 356 GaiaConstants::kSyncService, "sync_token");
357 sync_->Initialize(); 357 sync_->Initialize();
358 EXPECT_TRUE(sync_->ShouldPushChanges()); 358 EXPECT_TRUE(sync_->ShouldPushChanges());
359 } 359 }
360 360
361 TEST_F(ProfileSyncServiceStartupTest, StartNormal) { 361 TEST_F(ProfileSyncServiceStartupTest, StartNormal) {
362 // Pre load the tokens 362 // Pre load the tokens
363 profile_->GetPrefs()->SetString(prefs::kGoogleServicesUsername, "test_user"); 363 profile_->GetPrefs()->SetString(prefs::kGoogleServicesUsername, "test_user");
364 SigninManagerFactory::GetForProfile(profile_.get())->Initialize( 364 SigninManagerFactory::GetForProfile(profile_.get())->Initialize(
365 profile_.get()); 365 profile_.get(), NULL);
366 CreateSyncService(); 366 CreateSyncService();
367 DataTypeManagerMock* data_type_manager = SetUpDataTypeManager(); 367 DataTypeManagerMock* data_type_manager = SetUpDataTypeManager();
368 EXPECT_CALL(*data_type_manager, Configure(_, _)); 368 EXPECT_CALL(*data_type_manager, Configure(_, _));
369 EXPECT_CALL(*data_type_manager, state()). 369 EXPECT_CALL(*data_type_manager, state()).
370 WillRepeatedly(Return(DataTypeManager::CONFIGURED)); 370 WillRepeatedly(Return(DataTypeManager::CONFIGURED));
371 EXPECT_CALL(*data_type_manager, Stop()).Times(1); 371 EXPECT_CALL(*data_type_manager, Stop()).Times(1);
372 EXPECT_CALL(observer_, OnStateChanged()).Times(AnyNumber()); 372 EXPECT_CALL(observer_, OnStateChanged()).Times(AnyNumber());
373 373
374 TokenServiceFactory::GetForProfile(profile_.get())->IssueAuthTokenForTest( 374 TokenServiceFactory::GetForProfile(profile_.get())->IssueAuthTokenForTest(
375 GaiaConstants::kSyncService, "sync_token"); 375 GaiaConstants::kSyncService, "sync_token");
(...skipping 10 matching lines...) Expand all
386 syncer::ModelTypeSet user_types = syncer::UserTypes(); 386 syncer::ModelTypeSet user_types = syncer::UserTypes();
387 for (syncer::ModelTypeSet::Iterator iter = user_types.First(); 387 for (syncer::ModelTypeSet::Iterator iter = user_types.First();
388 iter.Good(); iter.Inc()) { 388 iter.Good(); iter.Inc()) {
389 profile_->GetPrefs()->ClearPref( 389 profile_->GetPrefs()->ClearPref(
390 browser_sync::SyncPrefs::GetPrefNameForDataType(iter.Get())); 390 browser_sync::SyncPrefs::GetPrefNameForDataType(iter.Get()));
391 } 391 }
392 392
393 // Pre load the tokens 393 // Pre load the tokens
394 profile_->GetPrefs()->SetString(prefs::kGoogleServicesUsername, "test_user"); 394 profile_->GetPrefs()->SetString(prefs::kGoogleServicesUsername, "test_user");
395 SigninManagerFactory::GetForProfile(profile_.get())->Initialize( 395 SigninManagerFactory::GetForProfile(profile_.get())->Initialize(
396 profile_.get()); 396 profile_.get(), NULL);
397 CreateSyncService(); 397 CreateSyncService();
398 DataTypeManagerMock* data_type_manager = SetUpDataTypeManager(); 398 DataTypeManagerMock* data_type_manager = SetUpDataTypeManager();
399 EXPECT_CALL(*data_type_manager, Configure(_, _)); 399 EXPECT_CALL(*data_type_manager, Configure(_, _));
400 EXPECT_CALL(*data_type_manager, state()). 400 EXPECT_CALL(*data_type_manager, state()).
401 WillRepeatedly(Return(DataTypeManager::CONFIGURED)); 401 WillRepeatedly(Return(DataTypeManager::CONFIGURED));
402 EXPECT_CALL(*data_type_manager, Stop()).Times(1); 402 EXPECT_CALL(*data_type_manager, Stop()).Times(1);
403 EXPECT_CALL(observer_, OnStateChanged()).Times(AnyNumber()); 403 EXPECT_CALL(observer_, OnStateChanged()).Times(AnyNumber());
404 404
405 TokenServiceFactory::GetForProfile(profile_.get())->IssueAuthTokenForTest( 405 TokenServiceFactory::GetForProfile(profile_.get())->IssueAuthTokenForTest(
406 GaiaConstants::kSyncService, "sync_token"); 406 GaiaConstants::kSyncService, "sync_token");
407 sync_->Initialize(); 407 sync_->Initialize();
408 408
409 EXPECT_TRUE(profile_->GetPrefs()->GetBoolean( 409 EXPECT_TRUE(profile_->GetPrefs()->GetBoolean(
410 prefs::kSyncKeepEverythingSynced)); 410 prefs::kSyncKeepEverythingSynced));
411 } 411 }
412 412
413 // Verify that the recovery of datatype preferences doesn't overwrite a valid 413 // Verify that the recovery of datatype preferences doesn't overwrite a valid
414 // case where only bookmarks are enabled. 414 // case where only bookmarks are enabled.
415 TEST_F(ProfileSyncServiceStartupTest, StartDontRecoverDatatypePrefs) { 415 TEST_F(ProfileSyncServiceStartupTest, StartDontRecoverDatatypePrefs) {
416 // Explicitly set Keep Everything Synced to false and have only bookmarks 416 // Explicitly set Keep Everything Synced to false and have only bookmarks
417 // enabled. 417 // enabled.
418 profile_->GetPrefs()->SetBoolean(prefs::kSyncKeepEverythingSynced, false); 418 profile_->GetPrefs()->SetBoolean(prefs::kSyncKeepEverythingSynced, false);
419 419
420 // Pre load the tokens 420 // Pre load the tokens
421 profile_->GetPrefs()->SetString(prefs::kGoogleServicesUsername, "test_user"); 421 profile_->GetPrefs()->SetString(prefs::kGoogleServicesUsername, "test_user");
422 SigninManagerFactory::GetForProfile(profile_.get())->Initialize( 422 SigninManagerFactory::GetForProfile(profile_.get())->Initialize(
423 profile_.get()); 423 profile_.get(), NULL);
424 CreateSyncService(); 424 CreateSyncService();
425 DataTypeManagerMock* data_type_manager = SetUpDataTypeManager(); 425 DataTypeManagerMock* data_type_manager = SetUpDataTypeManager();
426 EXPECT_CALL(*data_type_manager, Configure(_, _)); 426 EXPECT_CALL(*data_type_manager, Configure(_, _));
427 EXPECT_CALL(*data_type_manager, state()). 427 EXPECT_CALL(*data_type_manager, state()).
428 WillRepeatedly(Return(DataTypeManager::CONFIGURED)); 428 WillRepeatedly(Return(DataTypeManager::CONFIGURED));
429 EXPECT_CALL(*data_type_manager, Stop()).Times(1); 429 EXPECT_CALL(*data_type_manager, Stop()).Times(1);
430 EXPECT_CALL(observer_, OnStateChanged()).Times(AnyNumber()); 430 EXPECT_CALL(observer_, OnStateChanged()).Times(AnyNumber());
431 TokenServiceFactory::GetForProfile(profile_.get())->IssueAuthTokenForTest( 431 TokenServiceFactory::GetForProfile(profile_.get())->IssueAuthTokenForTest(
432 GaiaConstants::kSyncService, "sync_token"); 432 GaiaConstants::kSyncService, "sync_token");
433 sync_->Initialize(); 433 sync_->Initialize();
434 434
435 EXPECT_FALSE(profile_->GetPrefs()->GetBoolean( 435 EXPECT_FALSE(profile_->GetPrefs()->GetBoolean(
436 prefs::kSyncKeepEverythingSynced)); 436 prefs::kSyncKeepEverythingSynced));
437 } 437 }
438 438
439 TEST_F(ProfileSyncServiceStartupTest, ManagedStartup) { 439 TEST_F(ProfileSyncServiceStartupTest, ManagedStartup) {
440 // Service should not be started by Initialize() since it's managed. 440 // Service should not be started by Initialize() since it's managed.
441 profile_->GetPrefs()->SetString(prefs::kGoogleServicesUsername, "test_user"); 441 profile_->GetPrefs()->SetString(prefs::kGoogleServicesUsername, "test_user");
442 SigninManagerFactory::GetForProfile(profile_.get())->Initialize( 442 SigninManagerFactory::GetForProfile(profile_.get())->Initialize(
443 profile_.get()); 443 profile_.get(), NULL);
444 CreateSyncService(); 444 CreateSyncService();
445 445
446 // Disable sync through policy. 446 // Disable sync through policy.
447 profile_->GetPrefs()->SetBoolean(prefs::kSyncManaged, true); 447 profile_->GetPrefs()->SetBoolean(prefs::kSyncManaged, true);
448 EXPECT_CALL(*sync_->components_factory_mock(), 448 EXPECT_CALL(*sync_->components_factory_mock(),
449 CreateDataTypeManager(_, _, _, _, _)).Times(0); 449 CreateDataTypeManager(_, _, _, _, _)).Times(0);
450 EXPECT_CALL(observer_, OnStateChanged()).Times(AnyNumber()); 450 EXPECT_CALL(observer_, OnStateChanged()).Times(AnyNumber());
451 451
452 TokenServiceFactory::GetForProfile(profile_.get())->IssueAuthTokenForTest( 452 TokenServiceFactory::GetForProfile(profile_.get())->IssueAuthTokenForTest(
453 GaiaConstants::kSyncService, "sync_token"); 453 GaiaConstants::kSyncService, "sync_token");
454 sync_->Initialize(); 454 sync_->Initialize();
455 } 455 }
456 456
457 TEST_F(ProfileSyncServiceStartupTest, SwitchManaged) { 457 TEST_F(ProfileSyncServiceStartupTest, SwitchManaged) {
458 profile_->GetPrefs()->SetString(prefs::kGoogleServicesUsername, "test_user"); 458 profile_->GetPrefs()->SetString(prefs::kGoogleServicesUsername, "test_user");
459 SigninManagerFactory::GetForProfile(profile_.get())->Initialize( 459 SigninManagerFactory::GetForProfile(profile_.get())->Initialize(
460 profile_.get()); 460 profile_.get(), NULL);
461 CreateSyncService(); 461 CreateSyncService();
462 DataTypeManagerMock* data_type_manager = SetUpDataTypeManager(); 462 DataTypeManagerMock* data_type_manager = SetUpDataTypeManager();
463 EXPECT_CALL(*data_type_manager, Configure(_, _)); 463 EXPECT_CALL(*data_type_manager, Configure(_, _));
464 EXPECT_CALL(observer_, OnStateChanged()).Times(AnyNumber()); 464 EXPECT_CALL(observer_, OnStateChanged()).Times(AnyNumber());
465 TokenServiceFactory::GetForProfile(profile_.get())->IssueAuthTokenForTest( 465 TokenServiceFactory::GetForProfile(profile_.get())->IssueAuthTokenForTest(
466 GaiaConstants::kSyncService, "sync_token"); 466 GaiaConstants::kSyncService, "sync_token");
467 sync_->Initialize(); 467 sync_->Initialize();
468 468
469 // The service should stop when switching to managed mode. 469 // The service should stop when switching to managed mode.
470 Mock::VerifyAndClearExpectations(data_type_manager); 470 Mock::VerifyAndClearExpectations(data_type_manager);
471 EXPECT_CALL(*data_type_manager, state()). 471 EXPECT_CALL(*data_type_manager, state()).
472 WillOnce(Return(DataTypeManager::CONFIGURED)); 472 WillOnce(Return(DataTypeManager::CONFIGURED));
473 EXPECT_CALL(*data_type_manager, Stop()).Times(1); 473 EXPECT_CALL(*data_type_manager, Stop()).Times(1);
474 EXPECT_CALL(observer_, OnStateChanged()).Times(AnyNumber()); 474 EXPECT_CALL(observer_, OnStateChanged()).Times(AnyNumber());
475 profile_->GetPrefs()->SetBoolean(prefs::kSyncManaged, true); 475 profile_->GetPrefs()->SetBoolean(prefs::kSyncManaged, true);
476 476
477 // When switching back to unmanaged, the state should change, but the service 477 // When switching back to unmanaged, the state should change, but the service
478 // should not start up automatically (kSyncSetupCompleted will be false). 478 // should not start up automatically (kSyncSetupCompleted will be false).
479 Mock::VerifyAndClearExpectations(data_type_manager); 479 Mock::VerifyAndClearExpectations(data_type_manager);
480 EXPECT_CALL(*sync_->components_factory_mock(), 480 EXPECT_CALL(*sync_->components_factory_mock(),
481 CreateDataTypeManager(_, _, _, _, _)).Times(0); 481 CreateDataTypeManager(_, _, _, _, _)).Times(0);
482 EXPECT_CALL(observer_, OnStateChanged()).Times(AnyNumber()); 482 EXPECT_CALL(observer_, OnStateChanged()).Times(AnyNumber());
483 profile_->GetPrefs()->ClearPref(prefs::kSyncManaged); 483 profile_->GetPrefs()->ClearPref(prefs::kSyncManaged);
484 } 484 }
485 485
486 TEST_F(ProfileSyncServiceStartupTest, StartFailure) { 486 TEST_F(ProfileSyncServiceStartupTest, StartFailure) {
487 profile_->GetPrefs()->SetString(prefs::kGoogleServicesUsername, "test_user"); 487 profile_->GetPrefs()->SetString(prefs::kGoogleServicesUsername, "test_user");
488 SigninManagerFactory::GetForProfile(profile_.get())->Initialize( 488 SigninManagerFactory::GetForProfile(profile_.get())->Initialize(
489 profile_.get()); 489 profile_.get(), NULL);
490 CreateSyncService(); 490 CreateSyncService();
491 DataTypeManagerMock* data_type_manager = SetUpDataTypeManager(); 491 DataTypeManagerMock* data_type_manager = SetUpDataTypeManager();
492 DataTypeManager::ConfigureStatus status = DataTypeManager::ABORTED; 492 DataTypeManager::ConfigureStatus status = DataTypeManager::ABORTED;
493 syncer::SyncError error( 493 syncer::SyncError error(
494 FROM_HERE, "Association failed.", syncer::BOOKMARKS); 494 FROM_HERE, "Association failed.", syncer::BOOKMARKS);
495 std::list<syncer::SyncError> errors; 495 std::list<syncer::SyncError> errors;
496 errors.push_back(error); 496 errors.push_back(error);
497 DataTypeManager::ConfigureResult result( 497 DataTypeManager::ConfigureResult result(
498 status, 498 status,
499 syncer::ModelTypeSet(), 499 syncer::ModelTypeSet(),
500 errors, 500 errors,
501 syncer::ModelTypeSet()); 501 syncer::ModelTypeSet());
502 EXPECT_CALL(*data_type_manager, Configure(_, _)). 502 EXPECT_CALL(*data_type_manager, Configure(_, _)).
503 WillRepeatedly( 503 WillRepeatedly(
504 DoAll(InvokeOnConfigureStart(sync_), 504 DoAll(InvokeOnConfigureStart(sync_),
505 InvokeOnConfigureDone(sync_, result))); 505 InvokeOnConfigureDone(sync_, result)));
506 EXPECT_CALL(*data_type_manager, state()). 506 EXPECT_CALL(*data_type_manager, state()).
507 WillOnce(Return(DataTypeManager::STOPPED)); 507 WillOnce(Return(DataTypeManager::STOPPED));
508 EXPECT_CALL(observer_, OnStateChanged()).Times(AnyNumber()); 508 EXPECT_CALL(observer_, OnStateChanged()).Times(AnyNumber());
509 TokenServiceFactory::GetForProfile(profile_.get())->IssueAuthTokenForTest( 509 TokenServiceFactory::GetForProfile(profile_.get())->IssueAuthTokenForTest(
510 GaiaConstants::kSyncService, "sync_token"); 510 GaiaConstants::kSyncService, "sync_token");
511 sync_->Initialize(); 511 sync_->Initialize();
512 EXPECT_TRUE(sync_->HasUnrecoverableError()); 512 EXPECT_TRUE(sync_->HasUnrecoverableError());
513 } 513 }
514 514
515 TEST_F(ProfileSyncServiceStartupTest, StartDownloadFailed) { 515 TEST_F(ProfileSyncServiceStartupTest, StartDownloadFailed) {
516 // Pre load the tokens 516 // Pre load the tokens
517 profile_->GetPrefs()->SetString(prefs::kGoogleServicesUsername, "test_user"); 517 profile_->GetPrefs()->SetString(prefs::kGoogleServicesUsername, "test_user");
518 SigninManagerFactory::GetForProfile(profile_.get())->Initialize( 518 SigninManagerFactory::GetForProfile(profile_.get())->Initialize(
519 profile_.get()); 519 profile_.get(), NULL);
520 CreateSyncService(); 520 CreateSyncService();
521 521
522 profile_->GetPrefs()->ClearPref(prefs::kSyncHasSetupCompleted); 522 profile_->GetPrefs()->ClearPref(prefs::kSyncHasSetupCompleted);
523 523
524 EXPECT_CALL(observer_, OnStateChanged()).Times(AnyNumber()); 524 EXPECT_CALL(observer_, OnStateChanged()).Times(AnyNumber());
525 TokenServiceFactory::GetForProfile(profile_.get())->IssueAuthTokenForTest( 525 TokenServiceFactory::GetForProfile(profile_.get())->IssueAuthTokenForTest(
526 GaiaConstants::kSyncService, "sync_token"); 526 GaiaConstants::kSyncService, "sync_token");
527 sync_->fail_initial_download(); 527 sync_->fail_initial_download();
528 528
529 sync_->Initialize(); 529 sync_->Initialize();
530 EXPECT_FALSE(sync_->sync_initialized()); 530 EXPECT_FALSE(sync_->sync_initialized());
531 EXPECT_FALSE(sync_->GetBackendForTest()); 531 EXPECT_FALSE(sync_->GetBackendForTest());
532 } 532 }
OLDNEW
« no previous file with comments | « chrome/browser/signin/signin_tracker_unittest.cc ('k') | chrome/browser/sync/sync_ui_util_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698