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

Side by Side Diff: chrome/browser/ui/webui/settings/people_handler_unittest.cc

Issue 1608103002: Settings Rewrite: Fix Opening Sync User login (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 10 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
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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 "chrome/browser/ui/webui/settings/people_handler.h" 5 #include "chrome/browser/ui/webui/settings/people_handler.h"
6 6
7 #include <string> 7 #include <string>
8 #include <vector> 8 #include <vector>
9 9
10 #include "base/command_line.h" 10 #include "base/command_line.h"
(...skipping 300 matching lines...) Expand 10 before | Expand all | Expand 10 after
311 } 311 }
312 312
313 #if !defined(OS_CHROMEOS) 313 #if !defined(OS_CHROMEOS)
314 TEST_F(PeopleHandlerFirstSigninTest, DisplayBasicLogin) { 314 TEST_F(PeopleHandlerFirstSigninTest, DisplayBasicLogin) {
315 EXPECT_CALL(*mock_pss_, CanSyncStart()).WillRepeatedly(Return(false)); 315 EXPECT_CALL(*mock_pss_, CanSyncStart()).WillRepeatedly(Return(false));
316 EXPECT_CALL(*mock_pss_, IsFirstSetupComplete()).WillRepeatedly(Return(false)); 316 EXPECT_CALL(*mock_pss_, IsFirstSetupComplete()).WillRepeatedly(Return(false));
317 // Ensure that the user is not signed in before calling |HandleStartSignin()|. 317 // Ensure that the user is not signed in before calling |HandleStartSignin()|.
318 SigninManager* manager = static_cast<SigninManager*>(mock_signin_); 318 SigninManager* manager = static_cast<SigninManager*>(mock_signin_);
319 manager->SignOut(signin_metrics::SIGNOUT_TEST, 319 manager->SignOut(signin_metrics::SIGNOUT_TEST,
320 signin_metrics::SignoutDelete::IGNORE_METRIC); 320 signin_metrics::SignoutDelete::IGNORE_METRIC);
321 handler_->HandleStartSignin(NULL); 321 base::ListValue list_args;
322 handler_->HandleStartSignin(&list_args);
322 323
323 // Sync setup hands off control to the gaia login tab. 324 // Sync setup hands off control to the gaia login tab.
324 EXPECT_EQ(NULL, 325 EXPECT_EQ(NULL,
325 LoginUIServiceFactory::GetForProfile( 326 LoginUIServiceFactory::GetForProfile(
326 profile_)->current_login_ui()); 327 profile_)->current_login_ui());
327 328
328 ASSERT_FALSE(handler_->is_configuring_sync()); 329 ASSERT_FALSE(handler_->is_configuring_sync());
329 330
330 handler_->CloseSyncSetup(); 331 handler_->CloseSyncSetup();
331 EXPECT_EQ(NULL, 332 EXPECT_EQ(NULL,
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after
389 // to showing a configuration page when sync setup completes successfully. 390 // to showing a configuration page when sync setup completes successfully.
390 TEST_F(PeopleHandlerTest, 391 TEST_F(PeopleHandlerTest,
391 DisplayConfigureWithBackendDisabledAndSyncStartupCompleted) { 392 DisplayConfigureWithBackendDisabledAndSyncStartupCompleted) {
392 EXPECT_CALL(*mock_pss_, CanSyncStart()).WillRepeatedly(Return(true)); 393 EXPECT_CALL(*mock_pss_, CanSyncStart()).WillRepeatedly(Return(true));
393 EXPECT_CALL(*mock_pss_, IsFirstSetupComplete()).WillRepeatedly(Return(false)); 394 EXPECT_CALL(*mock_pss_, IsFirstSetupComplete()).WillRepeatedly(Return(false));
394 error_ = GoogleServiceAuthError::AuthErrorNone(); 395 error_ = GoogleServiceAuthError::AuthErrorNone();
395 // Sync backend is stopped initially, and will start up. 396 // Sync backend is stopped initially, and will start up.
396 EXPECT_CALL(*mock_pss_, IsBackendInitialized()).WillRepeatedly(Return(false)); 397 EXPECT_CALL(*mock_pss_, IsBackendInitialized()).WillRepeatedly(Return(false));
397 SetDefaultExpectationsForConfigPage(); 398 SetDefaultExpectationsForConfigPage();
398 399
399 handler_->OpenSyncSetup(nullptr); 400 handler_->OpenSyncSetup(false /* creating_supervised_user */);
400 401
401 // We expect a call to settings.SyncPrivateApi.showSyncSetupPage. 402 // We expect a call to settings.SyncPrivateApi.showSyncSetupPage.
402 EXPECT_EQ(1U, web_ui_.call_data().size()); 403 EXPECT_EQ(1U, web_ui_.call_data().size());
403 404
404 const content::TestWebUI::CallData& data0 = *web_ui_.call_data()[0]; 405 const content::TestWebUI::CallData& data0 = *web_ui_.call_data()[0];
405 EXPECT_EQ("settings.SyncPrivateApi.showSyncSetupPage", data0.function_name()); 406 EXPECT_EQ("settings.SyncPrivateApi.showSyncSetupPage", data0.function_name());
406 std::string page; 407 std::string page;
407 ASSERT_TRUE(data0.arg1()->GetAsString(&page)); 408 ASSERT_TRUE(data0.arg1()->GetAsString(&page));
408 EXPECT_EQ(page, "spinner"); 409 EXPECT_EQ(page, "spinner");
409 410
(...skipping 27 matching lines...) Expand all
437 // before the user has continued on. 438 // before the user has continued on.
438 TEST_F(PeopleHandlerTest, 439 TEST_F(PeopleHandlerTest,
439 DisplayConfigureWithBackendDisabledAndCancelAfterSigninSuccess) { 440 DisplayConfigureWithBackendDisabledAndCancelAfterSigninSuccess) {
440 EXPECT_CALL(*mock_pss_, CanSyncStart()).WillRepeatedly(Return(true)); 441 EXPECT_CALL(*mock_pss_, CanSyncStart()).WillRepeatedly(Return(true));
441 EXPECT_CALL(*mock_pss_, IsFirstSetupComplete()).WillRepeatedly(Return(false)); 442 EXPECT_CALL(*mock_pss_, IsFirstSetupComplete()).WillRepeatedly(Return(false));
442 error_ = GoogleServiceAuthError::AuthErrorNone(); 443 error_ = GoogleServiceAuthError::AuthErrorNone();
443 EXPECT_CALL(*mock_pss_, IsBackendInitialized()) 444 EXPECT_CALL(*mock_pss_, IsBackendInitialized())
444 .WillOnce(Return(false)) 445 .WillOnce(Return(false))
445 .WillRepeatedly(Return(true)); 446 .WillRepeatedly(Return(true));
446 SetDefaultExpectationsForConfigPage(); 447 SetDefaultExpectationsForConfigPage();
447 handler_->OpenSyncSetup(nullptr); 448 handler_->OpenSyncSetup(false /* creating_supervised_user */);
448 449
449 // It's important to tell sync the user cancelled the setup flow before we 450 // It's important to tell sync the user cancelled the setup flow before we
450 // tell it we're through with the setup progress. 451 // tell it we're through with the setup progress.
451 testing::InSequence seq; 452 testing::InSequence seq;
452 EXPECT_CALL(*mock_pss_, RequestStop(ProfileSyncService::CLEAR_DATA)); 453 EXPECT_CALL(*mock_pss_, RequestStop(ProfileSyncService::CLEAR_DATA));
453 EXPECT_CALL(*mock_pss_, SetSetupInProgress(false)); 454 EXPECT_CALL(*mock_pss_, SetSetupInProgress(false));
454 455
455 handler_->CloseSyncSetup(); 456 handler_->CloseSyncSetup();
456 EXPECT_EQ(NULL, 457 EXPECT_EQ(NULL,
457 LoginUIServiceFactory::GetForProfile( 458 LoginUIServiceFactory::GetForProfile(
458 profile_)->current_login_ui()); 459 profile_)->current_login_ui());
459 } 460 }
460 461
461 TEST_F(PeopleHandlerTest, 462 TEST_F(PeopleHandlerTest,
462 DisplayConfigureWithBackendDisabledAndSigninFailed) { 463 DisplayConfigureWithBackendDisabledAndSigninFailed) {
463 EXPECT_CALL(*mock_pss_, CanSyncStart()).WillRepeatedly(Return(true)); 464 EXPECT_CALL(*mock_pss_, CanSyncStart()).WillRepeatedly(Return(true));
464 EXPECT_CALL(*mock_pss_, IsFirstSetupComplete()).WillRepeatedly(Return(false)); 465 EXPECT_CALL(*mock_pss_, IsFirstSetupComplete()).WillRepeatedly(Return(false));
465 error_ = GoogleServiceAuthError::AuthErrorNone(); 466 error_ = GoogleServiceAuthError::AuthErrorNone();
466 EXPECT_CALL(*mock_pss_, IsBackendInitialized()).WillRepeatedly(Return(false)); 467 EXPECT_CALL(*mock_pss_, IsBackendInitialized()).WillRepeatedly(Return(false));
467 468
468 handler_->OpenSyncSetup(nullptr); 469 handler_->OpenSyncSetup(false /* creating_supervised_user */);
469 const content::TestWebUI::CallData& data = *web_ui_.call_data()[0]; 470 const content::TestWebUI::CallData& data = *web_ui_.call_data()[0];
470 EXPECT_EQ("settings.SyncPrivateApi.showSyncSetupPage", data.function_name()); 471 EXPECT_EQ("settings.SyncPrivateApi.showSyncSetupPage", data.function_name());
471 std::string page; 472 std::string page;
472 ASSERT_TRUE(data.arg1()->GetAsString(&page)); 473 ASSERT_TRUE(data.arg1()->GetAsString(&page));
473 EXPECT_EQ(page, "spinner"); 474 EXPECT_EQ(page, "spinner");
474 Mock::VerifyAndClearExpectations(mock_pss_); 475 Mock::VerifyAndClearExpectations(mock_pss_);
475 error_ = GoogleServiceAuthError( 476 error_ = GoogleServiceAuthError(
476 GoogleServiceAuthError::INVALID_GAIA_CREDENTIALS); 477 GoogleServiceAuthError::INVALID_GAIA_CREDENTIALS);
477 EXPECT_CALL(*mock_pss_, GetAuthError()).WillRepeatedly(ReturnRef(error_)); 478 EXPECT_CALL(*mock_pss_, GetAuthError()).WillRepeatedly(ReturnRef(error_));
478 NotifySyncListeners(); 479 NotifySyncListeners();
(...skipping 10 matching lines...) Expand all
489 public: 490 public:
490 PeopleHandlerNonCrosTest() {} 491 PeopleHandlerNonCrosTest() {}
491 }; 492 };
492 493
493 TEST_F(PeopleHandlerNonCrosTest, HandleGaiaAuthFailure) { 494 TEST_F(PeopleHandlerNonCrosTest, HandleGaiaAuthFailure) {
494 EXPECT_CALL(*mock_pss_, CanSyncStart()).WillRepeatedly(Return(false)); 495 EXPECT_CALL(*mock_pss_, CanSyncStart()).WillRepeatedly(Return(false));
495 EXPECT_CALL(*mock_pss_, HasUnrecoverableError()) 496 EXPECT_CALL(*mock_pss_, HasUnrecoverableError())
496 .WillRepeatedly(Return(false)); 497 .WillRepeatedly(Return(false));
497 EXPECT_CALL(*mock_pss_, IsFirstSetupComplete()).WillRepeatedly(Return(false)); 498 EXPECT_CALL(*mock_pss_, IsFirstSetupComplete()).WillRepeatedly(Return(false));
498 // Open the web UI. 499 // Open the web UI.
499 handler_->OpenSyncSetup(nullptr); 500 handler_->OpenSyncSetup(false /* creating_supervised_user */);
500 501
501 ASSERT_FALSE(handler_->is_configuring_sync()); 502 ASSERT_FALSE(handler_->is_configuring_sync());
502 } 503 }
503 504
504 // TODO(kochi): We need equivalent tests for ChromeOS. 505 // TODO(kochi): We need equivalent tests for ChromeOS.
505 TEST_F(PeopleHandlerNonCrosTest, UnrecoverableErrorInitializingSync) { 506 TEST_F(PeopleHandlerNonCrosTest, UnrecoverableErrorInitializingSync) {
506 EXPECT_CALL(*mock_pss_, CanSyncStart()).WillRepeatedly(Return(false)); 507 EXPECT_CALL(*mock_pss_, CanSyncStart()).WillRepeatedly(Return(false));
507 EXPECT_CALL(*mock_pss_, IsFirstSetupComplete()).WillRepeatedly(Return(false)); 508 EXPECT_CALL(*mock_pss_, IsFirstSetupComplete()).WillRepeatedly(Return(false));
508 // Open the web UI. 509 // Open the web UI.
509 handler_->OpenSyncSetup(nullptr); 510 handler_->OpenSyncSetup(false /* creating_supervised_user */);
510 511
511 ASSERT_FALSE(handler_->is_configuring_sync()); 512 ASSERT_FALSE(handler_->is_configuring_sync());
512 } 513 }
513 514
514 TEST_F(PeopleHandlerNonCrosTest, GaiaErrorInitializingSync) { 515 TEST_F(PeopleHandlerNonCrosTest, GaiaErrorInitializingSync) {
515 EXPECT_CALL(*mock_pss_, CanSyncStart()).WillRepeatedly(Return(false)); 516 EXPECT_CALL(*mock_pss_, CanSyncStart()).WillRepeatedly(Return(false));
516 EXPECT_CALL(*mock_pss_, IsFirstSetupComplete()).WillRepeatedly(Return(false)); 517 EXPECT_CALL(*mock_pss_, IsFirstSetupComplete()).WillRepeatedly(Return(false));
517 // Open the web UI. 518 // Open the web UI.
518 handler_->OpenSyncSetup(nullptr); 519 handler_->OpenSyncSetup(false /* creating_supervised_user */);
519 520
520 ASSERT_FALSE(handler_->is_configuring_sync()); 521 ASSERT_FALSE(handler_->is_configuring_sync());
521 } 522 }
522 523
523 #endif // #if !defined(OS_CHROMEOS) 524 #endif // #if !defined(OS_CHROMEOS)
524 525
525 TEST_F(PeopleHandlerTest, TestSyncEverything) { 526 TEST_F(PeopleHandlerTest, TestSyncEverything) {
526 std::string args = GetConfiguration( 527 std::string args = GetConfiguration(
527 NULL, SYNC_ALL_DATA, GetAllTypes(), std::string(), ENCRYPT_PASSWORDS); 528 NULL, SYNC_ALL_DATA, GetAllTypes(), std::string(), ENCRYPT_PASSWORDS);
528 base::ListValue list_args; 529 base::ListValue list_args;
(...skipping 208 matching lines...) Expand 10 before | Expand all | Expand 10 after
737 } 738 }
738 739
739 TEST_F(PeopleHandlerTest, ShowSyncSetup) { 740 TEST_F(PeopleHandlerTest, ShowSyncSetup) {
740 EXPECT_CALL(*mock_pss_, IsPassphraseRequired()) 741 EXPECT_CALL(*mock_pss_, IsPassphraseRequired())
741 .WillRepeatedly(Return(false)); 742 .WillRepeatedly(Return(false));
742 EXPECT_CALL(*mock_pss_, IsUsingSecondaryPassphrase()) 743 EXPECT_CALL(*mock_pss_, IsUsingSecondaryPassphrase())
743 .WillRepeatedly(Return(false)); 744 .WillRepeatedly(Return(false));
744 SetupInitializedProfileSyncService(); 745 SetupInitializedProfileSyncService();
745 // This should display the sync setup dialog (not login). 746 // This should display the sync setup dialog (not login).
746 SetDefaultExpectationsForConfigPage(); 747 SetDefaultExpectationsForConfigPage();
747 handler_->OpenSyncSetup(nullptr); 748 handler_->OpenSyncSetup(false /* creating_supervised_user */);
748 749
749 ExpectConfig(); 750 ExpectConfig();
750 } 751 }
751 752
752 // We do not display signin on chromeos in the case of auth error. 753 // We do not display signin on chromeos in the case of auth error.
753 TEST_F(PeopleHandlerTest, ShowSigninOnAuthError) { 754 TEST_F(PeopleHandlerTest, ShowSigninOnAuthError) {
754 // Initialize the system to a signed in state, but with an auth error. 755 // Initialize the system to a signed in state, but with an auth error.
755 error_ = GoogleServiceAuthError( 756 error_ = GoogleServiceAuthError(
756 GoogleServiceAuthError::INVALID_GAIA_CREDENTIALS); 757 GoogleServiceAuthError::INVALID_GAIA_CREDENTIALS);
757 758
(...skipping 14 matching lines...) Expand all
772 // sync backend (which will fail due to the auth error). This should only 773 // sync backend (which will fail due to the auth error). This should only
773 // happen if the user manually navigates to chrome://settings/syncSetup - 774 // happen if the user manually navigates to chrome://settings/syncSetup -
774 // clicking on the button in the UI will sign the user out rather than 775 // clicking on the button in the UI will sign the user out rather than
775 // displaying a spinner. Should be no visible UI on ChromeOS in this case. 776 // displaying a spinner. Should be no visible UI on ChromeOS in this case.
776 EXPECT_EQ(NULL, LoginUIServiceFactory::GetForProfile( 777 EXPECT_EQ(NULL, LoginUIServiceFactory::GetForProfile(
777 profile_)->current_login_ui()); 778 profile_)->current_login_ui());
778 #else 779 #else
779 780
780 // On ChromeOS, this should display the spinner while we try to startup the 781 // On ChromeOS, this should display the spinner while we try to startup the
781 // sync backend, and on desktop this displays the login dialog. 782 // sync backend, and on desktop this displays the login dialog.
782 handler_->OpenSyncSetup(nullptr); 783 handler_->OpenSyncSetup(false /* creating_supervised_user */);
783 784
784 // Sync setup is closed when re-auth is in progress. 785 // Sync setup is closed when re-auth is in progress.
785 EXPECT_EQ(NULL, 786 EXPECT_EQ(NULL,
786 LoginUIServiceFactory::GetForProfile( 787 LoginUIServiceFactory::GetForProfile(
787 profile_)->current_login_ui()); 788 profile_)->current_login_ui());
788 789
789 ASSERT_FALSE(handler_->is_configuring_sync()); 790 ASSERT_FALSE(handler_->is_configuring_sync());
790 #endif 791 #endif
791 } 792 }
792 793
793 TEST_F(PeopleHandlerTest, ShowSetupSyncEverything) { 794 TEST_F(PeopleHandlerTest, ShowSetupSyncEverything) {
794 EXPECT_CALL(*mock_pss_, IsPassphraseRequired()) 795 EXPECT_CALL(*mock_pss_, IsPassphraseRequired())
795 .WillRepeatedly(Return(false)); 796 .WillRepeatedly(Return(false));
796 EXPECT_CALL(*mock_pss_, IsUsingSecondaryPassphrase()) 797 EXPECT_CALL(*mock_pss_, IsUsingSecondaryPassphrase())
797 .WillRepeatedly(Return(false)); 798 .WillRepeatedly(Return(false));
798 SetupInitializedProfileSyncService(); 799 SetupInitializedProfileSyncService();
799 SetDefaultExpectationsForConfigPage(); 800 SetDefaultExpectationsForConfigPage();
800 // This should display the sync setup dialog (not login). 801 // This should display the sync setup dialog (not login).
801 handler_->OpenSyncSetup(nullptr); 802 handler_->OpenSyncSetup(false /* creating_supervised_user */);
802 803
803 ExpectConfig(); 804 ExpectConfig();
804 const content::TestWebUI::CallData& data = *web_ui_.call_data()[0]; 805 const content::TestWebUI::CallData& data = *web_ui_.call_data()[0];
805 const base::DictionaryValue* dictionary = nullptr; 806 const base::DictionaryValue* dictionary = nullptr;
806 ASSERT_TRUE(data.arg2()->GetAsDictionary(&dictionary)); 807 ASSERT_TRUE(data.arg2()->GetAsDictionary(&dictionary));
807 CheckBool(dictionary, "syncAllDataTypes", true); 808 CheckBool(dictionary, "syncAllDataTypes", true);
808 CheckBool(dictionary, "appsRegistered", true); 809 CheckBool(dictionary, "appsRegistered", true);
809 CheckBool(dictionary, "autofillRegistered", true); 810 CheckBool(dictionary, "autofillRegistered", true);
810 CheckBool(dictionary, "bookmarksRegistered", true); 811 CheckBool(dictionary, "bookmarksRegistered", true);
811 CheckBool(dictionary, "extensionsRegistered", true); 812 CheckBool(dictionary, "extensionsRegistered", true);
(...skipping 13 matching lines...) Expand all
825 TEST_F(PeopleHandlerTest, ShowSetupManuallySyncAll) { 826 TEST_F(PeopleHandlerTest, ShowSetupManuallySyncAll) {
826 EXPECT_CALL(*mock_pss_, IsPassphraseRequired()) 827 EXPECT_CALL(*mock_pss_, IsPassphraseRequired())
827 .WillRepeatedly(Return(false)); 828 .WillRepeatedly(Return(false));
828 EXPECT_CALL(*mock_pss_, IsUsingSecondaryPassphrase()) 829 EXPECT_CALL(*mock_pss_, IsUsingSecondaryPassphrase())
829 .WillRepeatedly(Return(false)); 830 .WillRepeatedly(Return(false));
830 SetupInitializedProfileSyncService(); 831 SetupInitializedProfileSyncService();
831 sync_driver::SyncPrefs sync_prefs(profile_->GetPrefs()); 832 sync_driver::SyncPrefs sync_prefs(profile_->GetPrefs());
832 sync_prefs.SetKeepEverythingSynced(false); 833 sync_prefs.SetKeepEverythingSynced(false);
833 SetDefaultExpectationsForConfigPage(); 834 SetDefaultExpectationsForConfigPage();
834 // This should display the sync setup dialog (not login). 835 // This should display the sync setup dialog (not login).
835 handler_->OpenSyncSetup(nullptr); 836 handler_->OpenSyncSetup(false /* creating_supervised_user */);
836 837
837 ExpectConfig(); 838 ExpectConfig();
838 const content::TestWebUI::CallData& data = *web_ui_.call_data()[0]; 839 const content::TestWebUI::CallData& data = *web_ui_.call_data()[0];
839 const base::DictionaryValue* dictionary = nullptr; 840 const base::DictionaryValue* dictionary = nullptr;
840 ASSERT_TRUE(data.arg2()->GetAsDictionary(&dictionary)); 841 ASSERT_TRUE(data.arg2()->GetAsDictionary(&dictionary));
841 CheckConfigDataTypeArguments(dictionary, CHOOSE_WHAT_TO_SYNC, GetAllTypes()); 842 CheckConfigDataTypeArguments(dictionary, CHOOSE_WHAT_TO_SYNC, GetAllTypes());
842 } 843 }
843 844
844 TEST_F(PeopleHandlerTest, ShowSetupSyncForAllTypesIndividually) { 845 TEST_F(PeopleHandlerTest, ShowSetupSyncForAllTypesIndividually) {
845 syncer::ModelTypeSet user_selectable_types = GetAllTypes(); 846 syncer::ModelTypeSet user_selectable_types = GetAllTypes();
846 syncer::ModelTypeSet::Iterator it; 847 syncer::ModelTypeSet::Iterator it;
847 for (it = user_selectable_types.First(); it.Good(); it.Inc()) { 848 for (it = user_selectable_types.First(); it.Good(); it.Inc()) {
848 EXPECT_CALL(*mock_pss_, IsPassphraseRequired()) 849 EXPECT_CALL(*mock_pss_, IsPassphraseRequired())
849 .WillRepeatedly(Return(false)); 850 .WillRepeatedly(Return(false));
850 EXPECT_CALL(*mock_pss_, IsUsingSecondaryPassphrase()) 851 EXPECT_CALL(*mock_pss_, IsUsingSecondaryPassphrase())
851 .WillRepeatedly(Return(false)); 852 .WillRepeatedly(Return(false));
852 SetupInitializedProfileSyncService(); 853 SetupInitializedProfileSyncService();
853 sync_driver::SyncPrefs sync_prefs(profile_->GetPrefs()); 854 sync_driver::SyncPrefs sync_prefs(profile_->GetPrefs());
854 sync_prefs.SetKeepEverythingSynced(false); 855 sync_prefs.SetKeepEverythingSynced(false);
855 SetDefaultExpectationsForConfigPage(); 856 SetDefaultExpectationsForConfigPage();
856 syncer::ModelTypeSet types; 857 syncer::ModelTypeSet types;
857 types.Put(it.Get()); 858 types.Put(it.Get());
858 EXPECT_CALL(*mock_pss_, GetPreferredDataTypes()). 859 EXPECT_CALL(*mock_pss_, GetPreferredDataTypes()).
859 WillRepeatedly(Return(types)); 860 WillRepeatedly(Return(types));
860 861
861 // This should display the sync setup dialog (not login). 862 // This should display the sync setup dialog (not login).
862 handler_->OpenSyncSetup(nullptr); 863 handler_->OpenSyncSetup(false /* creating_supervised_user */);
863 864
864 ExpectConfig(); 865 ExpectConfig();
865 // Close the config overlay. 866 // Close the config overlay.
866 LoginUIServiceFactory::GetForProfile(profile_)->LoginUIClosed( 867 LoginUIServiceFactory::GetForProfile(profile_)->LoginUIClosed(
867 handler_.get()); 868 handler_.get());
868 const content::TestWebUI::CallData& data = *web_ui_.call_data()[0]; 869 const content::TestWebUI::CallData& data = *web_ui_.call_data()[0];
869 const base::DictionaryValue* dictionary = nullptr; 870 const base::DictionaryValue* dictionary = nullptr;
870 ASSERT_TRUE(data.arg2()->GetAsDictionary(&dictionary)); 871 ASSERT_TRUE(data.arg2()->GetAsDictionary(&dictionary));
871 CheckConfigDataTypeArguments(dictionary, CHOOSE_WHAT_TO_SYNC, types); 872 CheckConfigDataTypeArguments(dictionary, CHOOSE_WHAT_TO_SYNC, types);
872 Mock::VerifyAndClearExpectations(mock_pss_); 873 Mock::VerifyAndClearExpectations(mock_pss_);
873 // Clean up so we can loop back to display the dialog again. 874 // Clean up so we can loop back to display the dialog again.
874 web_ui_.ClearTrackedCalls(); 875 web_ui_.ClearTrackedCalls();
875 } 876 }
876 } 877 }
877 878
878 TEST_F(PeopleHandlerTest, ShowSetupGaiaPassphraseRequired) { 879 TEST_F(PeopleHandlerTest, ShowSetupGaiaPassphraseRequired) {
879 EXPECT_CALL(*mock_pss_, IsPassphraseRequired()) 880 EXPECT_CALL(*mock_pss_, IsPassphraseRequired())
880 .WillRepeatedly(Return(true)); 881 .WillRepeatedly(Return(true));
881 EXPECT_CALL(*mock_pss_, IsUsingSecondaryPassphrase()) 882 EXPECT_CALL(*mock_pss_, IsUsingSecondaryPassphrase())
882 .WillRepeatedly(Return(false)); 883 .WillRepeatedly(Return(false));
883 SetupInitializedProfileSyncService(); 884 SetupInitializedProfileSyncService();
884 SetDefaultExpectationsForConfigPage(); 885 SetDefaultExpectationsForConfigPage();
885 886
886 // This should display the sync setup dialog (not login). 887 // This should display the sync setup dialog (not login).
887 handler_->OpenSyncSetup(nullptr); 888 handler_->OpenSyncSetup(false /* creating_supervised_user */);
888 889
889 ExpectConfig(); 890 ExpectConfig();
890 const content::TestWebUI::CallData& data = *web_ui_.call_data()[0]; 891 const content::TestWebUI::CallData& data = *web_ui_.call_data()[0];
891 const base::DictionaryValue* dictionary = nullptr; 892 const base::DictionaryValue* dictionary = nullptr;
892 ASSERT_TRUE(data.arg2()->GetAsDictionary(&dictionary)); 893 ASSERT_TRUE(data.arg2()->GetAsDictionary(&dictionary));
893 CheckBool(dictionary, "showPassphrase", true); 894 CheckBool(dictionary, "showPassphrase", true);
894 CheckBool(dictionary, "usePassphrase", false); 895 CheckBool(dictionary, "usePassphrase", false);
895 CheckBool(dictionary, "passphraseFailed", false); 896 CheckBool(dictionary, "passphraseFailed", false);
896 } 897 }
897 898
898 TEST_F(PeopleHandlerTest, ShowSetupCustomPassphraseRequired) { 899 TEST_F(PeopleHandlerTest, ShowSetupCustomPassphraseRequired) {
899 EXPECT_CALL(*mock_pss_, IsPassphraseRequired()) 900 EXPECT_CALL(*mock_pss_, IsPassphraseRequired())
900 .WillRepeatedly(Return(true)); 901 .WillRepeatedly(Return(true));
901 EXPECT_CALL(*mock_pss_, IsUsingSecondaryPassphrase()) 902 EXPECT_CALL(*mock_pss_, IsUsingSecondaryPassphrase())
902 .WillRepeatedly(Return(true)); 903 .WillRepeatedly(Return(true));
903 EXPECT_CALL(*mock_pss_, GetPassphraseType()) 904 EXPECT_CALL(*mock_pss_, GetPassphraseType())
904 .WillRepeatedly(Return(syncer::CUSTOM_PASSPHRASE)); 905 .WillRepeatedly(Return(syncer::CUSTOM_PASSPHRASE));
905 SetupInitializedProfileSyncService(); 906 SetupInitializedProfileSyncService();
906 SetDefaultExpectationsForConfigPage(); 907 SetDefaultExpectationsForConfigPage();
907 908
908 // This should display the sync setup dialog (not login). 909 // This should display the sync setup dialog (not login).
909 handler_->OpenSyncSetup(nullptr); 910 handler_->OpenSyncSetup(false /* creating_supervised_user */);
910 911
911 ExpectConfig(); 912 ExpectConfig();
912 const content::TestWebUI::CallData& data = *web_ui_.call_data()[0]; 913 const content::TestWebUI::CallData& data = *web_ui_.call_data()[0];
913 const base::DictionaryValue* dictionary = nullptr; 914 const base::DictionaryValue* dictionary = nullptr;
914 ASSERT_TRUE(data.arg2()->GetAsDictionary(&dictionary)); 915 ASSERT_TRUE(data.arg2()->GetAsDictionary(&dictionary));
915 CheckBool(dictionary, "showPassphrase", true); 916 CheckBool(dictionary, "showPassphrase", true);
916 CheckBool(dictionary, "usePassphrase", true); 917 CheckBool(dictionary, "usePassphrase", true);
917 CheckBool(dictionary, "passphraseFailed", false); 918 CheckBool(dictionary, "passphraseFailed", false);
918 } 919 }
919 920
920 TEST_F(PeopleHandlerTest, ShowSetupEncryptAll) { 921 TEST_F(PeopleHandlerTest, ShowSetupEncryptAll) {
921 EXPECT_CALL(*mock_pss_, IsPassphraseRequired()) 922 EXPECT_CALL(*mock_pss_, IsPassphraseRequired())
922 .WillRepeatedly(Return(false)); 923 .WillRepeatedly(Return(false));
923 EXPECT_CALL(*mock_pss_, IsUsingSecondaryPassphrase()) 924 EXPECT_CALL(*mock_pss_, IsUsingSecondaryPassphrase())
924 .WillRepeatedly(Return(false)); 925 .WillRepeatedly(Return(false));
925 SetupInitializedProfileSyncService(); 926 SetupInitializedProfileSyncService();
926 SetDefaultExpectationsForConfigPage(); 927 SetDefaultExpectationsForConfigPage();
927 EXPECT_CALL(*mock_pss_, IsEncryptEverythingEnabled()) 928 EXPECT_CALL(*mock_pss_, IsEncryptEverythingEnabled())
928 .WillRepeatedly(Return(true)); 929 .WillRepeatedly(Return(true));
929 930
930 // This should display the sync setup dialog (not login). 931 // This should display the sync setup dialog (not login).
931 handler_->OpenSyncSetup(nullptr); 932 handler_->OpenSyncSetup(false /* creating_supervised_user */);
932 933
933 ExpectConfig(); 934 ExpectConfig();
934 const content::TestWebUI::CallData& data = *web_ui_.call_data()[0]; 935 const content::TestWebUI::CallData& data = *web_ui_.call_data()[0];
935 const base::DictionaryValue* dictionary = nullptr; 936 const base::DictionaryValue* dictionary = nullptr;
936 ASSERT_TRUE(data.arg2()->GetAsDictionary(&dictionary)); 937 ASSERT_TRUE(data.arg2()->GetAsDictionary(&dictionary));
937 CheckBool(dictionary, "encryptAllData", true); 938 CheckBool(dictionary, "encryptAllData", true);
938 } 939 }
939 940
940 TEST_F(PeopleHandlerTest, ShowSetupEncryptAllDisallowed) { 941 TEST_F(PeopleHandlerTest, ShowSetupEncryptAllDisallowed) {
941 EXPECT_CALL(*mock_pss_, IsPassphraseRequired()) 942 EXPECT_CALL(*mock_pss_, IsPassphraseRequired())
942 .WillRepeatedly(Return(false)); 943 .WillRepeatedly(Return(false));
943 EXPECT_CALL(*mock_pss_, IsUsingSecondaryPassphrase()) 944 EXPECT_CALL(*mock_pss_, IsUsingSecondaryPassphrase())
944 .WillRepeatedly(Return(false)); 945 .WillRepeatedly(Return(false));
945 SetupInitializedProfileSyncService(); 946 SetupInitializedProfileSyncService();
946 SetDefaultExpectationsForConfigPage(); 947 SetDefaultExpectationsForConfigPage();
947 EXPECT_CALL(*mock_pss_, IsEncryptEverythingAllowed()) 948 EXPECT_CALL(*mock_pss_, IsEncryptEverythingAllowed())
948 .WillRepeatedly(Return(false)); 949 .WillRepeatedly(Return(false));
949 950
950 // This should display the sync setup dialog (not login). 951 // This should display the sync setup dialog (not login).
951 handler_->OpenSyncSetup(nullptr); 952 handler_->OpenSyncSetup(false /* creating_supervised_user */);
952 953
953 ExpectConfig(); 954 ExpectConfig();
954 const content::TestWebUI::CallData& data = *web_ui_.call_data()[0]; 955 const content::TestWebUI::CallData& data = *web_ui_.call_data()[0];
955 const base::DictionaryValue* dictionary = nullptr; 956 const base::DictionaryValue* dictionary = nullptr;
956 ASSERT_TRUE(data.arg2()->GetAsDictionary(&dictionary)); 957 ASSERT_TRUE(data.arg2()->GetAsDictionary(&dictionary));
957 CheckBool(dictionary, "encryptAllData", false); 958 CheckBool(dictionary, "encryptAllData", false);
958 CheckBool(dictionary, "encryptAllDataAllowed", false); 959 CheckBool(dictionary, "encryptAllDataAllowed", false);
959 } 960 }
960 961
961 TEST_F(PeopleHandlerTest, TurnOnEncryptAllDisallowed) { 962 TEST_F(PeopleHandlerTest, TurnOnEncryptAllDisallowed) {
(...skipping 11 matching lines...) Expand all
973 EXPECT_CALL(*mock_pss_, EnableEncryptEverything()).Times(0); 974 EXPECT_CALL(*mock_pss_, EnableEncryptEverything()).Times(0);
974 EXPECT_CALL(*mock_pss_, OnUserChoseDatatypes(true, _)); 975 EXPECT_CALL(*mock_pss_, OnUserChoseDatatypes(true, _));
975 handler_->HandleConfigure(&list_args); 976 handler_->HandleConfigure(&list_args);
976 977
977 // Ensure that we navigated to the "done" state since we don't need a 978 // Ensure that we navigated to the "done" state since we don't need a
978 // passphrase. 979 // passphrase.
979 ExpectDone(); 980 ExpectDone();
980 } 981 }
981 982
982 } // namespace settings 983 } // namespace settings
OLDNEW
« no previous file with comments | « chrome/browser/ui/webui/settings/people_handler.cc ('k') | chrome/browser/ui/webui/sync_setup_browsertest.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698