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

Side by Side Diff: chrome/browser/chromeos/login/wizard_controller_browsertest.cc

Issue 679133002: ScreenObserver is renamed to BaseScreenDelegate. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fixes. Created 6 years, 1 month 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
« no previous file with comments | « chrome/browser/chromeos/login/wizard_controller.cc ('k') | chrome/chrome_browser_chromeos.gypi » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 "chrome/browser/chromeos/login/wizard_controller.h" 5 #include "chrome/browser/chromeos/login/wizard_controller.h"
6 6
7 #include "base/basictypes.h" 7 #include "base/basictypes.h"
8 #include "base/command_line.h" 8 #include "base/command_line.h"
9 #include "base/compiler_specific.h" 9 #include "base/compiler_specific.h"
10 #include "base/path_service.h" 10 #include "base/path_service.h"
(...skipping 222 matching lines...) Expand 10 before | Expand all | Expand 10 after
233 WizardController::kTestNoScreenName) {} 233 WizardController::kTestNoScreenName) {}
234 virtual ~WizardControllerTest() {} 234 virtual ~WizardControllerTest() {}
235 235
236 virtual void SetUpOnMainThread() override { 236 virtual void SetUpOnMainThread() override {
237 AccessibilityManager::Get()-> 237 AccessibilityManager::Get()->
238 SetProfileForTest(ProfileHelper::GetSigninProfile()); 238 SetProfileForTest(ProfileHelper::GetSigninProfile());
239 WizardInProcessBrowserTest::SetUpOnMainThread(); 239 WizardInProcessBrowserTest::SetUpOnMainThread();
240 } 240 }
241 241
242 ErrorScreen* GetErrorScreen() { 242 ErrorScreen* GetErrorScreen() {
243 return static_cast<ScreenObserver*>(WizardController::default_controller()) 243 return static_cast<BaseScreenDelegate*>(
244 ->GetErrorScreen(); 244 WizardController::default_controller())->GetErrorScreen();
245 } 245 }
246 246
247 content::WebContents* GetWebContents() { 247 content::WebContents* GetWebContents() {
248 LoginDisplayHostImpl* host = static_cast<LoginDisplayHostImpl*>( 248 LoginDisplayHostImpl* host = static_cast<LoginDisplayHostImpl*>(
249 LoginDisplayHostImpl::default_host()); 249 LoginDisplayHostImpl::default_host());
250 if (!host) 250 if (!host)
251 return NULL; 251 return NULL;
252 WebUILoginView* webui_login_view = host->GetWebUILoginView(); 252 WebUILoginView* webui_login_view = host->GetWebUILoginView();
253 if (!webui_login_view) 253 if (!webui_login_view)
254 return NULL; 254 return NULL;
(...skipping 213 matching lines...) Expand 10 before | Expand all | Expand 10 after
468 const NetworkState* default_network = 468 const NetworkState* default_network =
469 NetworkHandler::Get()->network_state_handler()->DefaultNetwork(); 469 NetworkHandler::Get()->network_state_handler()->DefaultNetwork();
470 470
471 network_portal_detector_->SetDefaultNetworkForTesting( 471 network_portal_detector_->SetDefaultNetworkForTesting(
472 default_network->guid()); 472 default_network->guid());
473 network_portal_detector_->SetDetectionResultsForTesting( 473 network_portal_detector_->SetDetectionResultsForTesting(
474 default_network->guid(), 474 default_network->guid(),
475 online_state); 475 online_state);
476 } 476 }
477 477
478 void OnExit(ScreenObserver::ExitCodes exit_code) { 478 void OnExit(BaseScreenDelegate::ExitCodes exit_code) {
479 WizardController::default_controller()->OnExit(exit_code); 479 WizardController::default_controller()->OnExit(exit_code);
480 } 480 }
481 481
482 chromeos::SimpleGeolocationProvider* GetGeolocationProvider() { 482 chromeos::SimpleGeolocationProvider* GetGeolocationProvider() {
483 return WizardController::default_controller()->geolocation_provider_.get(); 483 return WizardController::default_controller()->geolocation_provider_.get();
484 } 484 }
485 485
486 void WaitUntilTimezoneResolved() { 486 void WaitUntilTimezoneResolved() {
487 scoped_ptr<TimeZoneTestRunner> runner(new TimeZoneTestRunner); 487 scoped_ptr<TimeZoneTestRunner> runner(new TimeZoneTestRunner);
488 if (!WizardController::default_controller() 488 if (!WizardController::default_controller()
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
524 EXPECT_TRUE(ExistingUserController::current_controller() == NULL); 524 EXPECT_TRUE(ExistingUserController::current_controller() == NULL);
525 CheckCurrentScreen(WizardController::kNetworkScreenName); 525 CheckCurrentScreen(WizardController::kNetworkScreenName);
526 526
527 WaitUntilJSIsReady(); 527 WaitUntilJSIsReady();
528 528
529 // Check visibility of the header bar. 529 // Check visibility of the header bar.
530 ASSERT_FALSE(JSExecuteBooleanExpression("$('login-header-bar').hidden")); 530 ASSERT_FALSE(JSExecuteBooleanExpression("$('login-header-bar').hidden"));
531 531
532 EXPECT_CALL(*mock_network_screen_, Hide()).Times(1); 532 EXPECT_CALL(*mock_network_screen_, Hide()).Times(1);
533 EXPECT_CALL(*mock_eula_screen_, Show()).Times(1); 533 EXPECT_CALL(*mock_eula_screen_, Show()).Times(1);
534 OnExit(ScreenObserver::NETWORK_CONNECTED); 534 OnExit(BaseScreenDelegate::NETWORK_CONNECTED);
535 535
536 CheckCurrentScreen(WizardController::kEulaScreenName); 536 CheckCurrentScreen(WizardController::kEulaScreenName);
537 537
538 // Header bar should still be visible. 538 // Header bar should still be visible.
539 ASSERT_FALSE(JSExecuteBooleanExpression("$('login-header-bar').hidden")); 539 ASSERT_FALSE(JSExecuteBooleanExpression("$('login-header-bar').hidden"));
540 540
541 EXPECT_CALL(*mock_eula_screen_, Hide()).Times(1); 541 EXPECT_CALL(*mock_eula_screen_, Hide()).Times(1);
542 EXPECT_CALL(*mock_update_screen_, StartNetworkCheck()).Times(1); 542 EXPECT_CALL(*mock_update_screen_, StartNetworkCheck()).Times(1);
543 EXPECT_CALL(*mock_update_screen_, Show()).Times(1); 543 EXPECT_CALL(*mock_update_screen_, Show()).Times(1);
544 // Enable TimeZone resolve 544 // Enable TimeZone resolve
545 InitTimezoneResolver(); 545 InitTimezoneResolver();
546 OnExit(ScreenObserver::EULA_ACCEPTED); 546 OnExit(BaseScreenDelegate::EULA_ACCEPTED);
547 EXPECT_TRUE(GetGeolocationProvider()); 547 EXPECT_TRUE(GetGeolocationProvider());
548 548
549 // Let update screen smooth time process (time = 0ms). 549 // Let update screen smooth time process (time = 0ms).
550 content::RunAllPendingInMessageLoop(); 550 content::RunAllPendingInMessageLoop();
551 551
552 CheckCurrentScreen(WizardController::kUpdateScreenName); 552 CheckCurrentScreen(WizardController::kUpdateScreenName);
553 EXPECT_CALL(*mock_update_screen_, Hide()).Times(1); 553 EXPECT_CALL(*mock_update_screen_, Hide()).Times(1);
554 EXPECT_CALL(*mock_auto_enrollment_check_screen_, Show()).Times(1); 554 EXPECT_CALL(*mock_auto_enrollment_check_screen_, Show()).Times(1);
555 OnExit(ScreenObserver::UPDATE_INSTALLED); 555 OnExit(BaseScreenDelegate::UPDATE_INSTALLED);
556 556
557 CheckCurrentScreen(WizardController::kAutoEnrollmentCheckScreenName); 557 CheckCurrentScreen(WizardController::kAutoEnrollmentCheckScreenName);
558 EXPECT_CALL(*mock_auto_enrollment_check_screen_, Hide()).Times(1); 558 EXPECT_CALL(*mock_auto_enrollment_check_screen_, Hide()).Times(1);
559 EXPECT_CALL(*mock_eula_screen_, Show()).Times(0); 559 EXPECT_CALL(*mock_eula_screen_, Show()).Times(0);
560 OnExit(ScreenObserver::ENTERPRISE_AUTO_ENROLLMENT_CHECK_COMPLETED); 560 OnExit(BaseScreenDelegate::ENTERPRISE_AUTO_ENROLLMENT_CHECK_COMPLETED);
561 561
562 EXPECT_FALSE(ExistingUserController::current_controller() == NULL); 562 EXPECT_FALSE(ExistingUserController::current_controller() == NULL);
563 EXPECT_EQ("ethernet,wifi,cellular", 563 EXPECT_EQ("ethernet,wifi,cellular",
564 NetworkHandler::Get()->network_state_handler() 564 NetworkHandler::Get()->network_state_handler()
565 ->GetCheckPortalListForTest()); 565 ->GetCheckPortalListForTest());
566 566
567 WaitUntilTimezoneResolved(); 567 WaitUntilTimezoneResolved();
568 EXPECT_EQ("America/Anchorage", 568 EXPECT_EQ("America/Anchorage",
569 base::UTF16ToUTF8(chromeos::system::TimezoneSettings::GetInstance() 569 base::UTF16ToUTF8(chromeos::system::TimezoneSettings::GetInstance()
570 ->GetCurrentTimezoneID())); 570 ->GetCurrentTimezoneID()));
571 } 571 }
572 572
573 IN_PROC_BROWSER_TEST_F(WizardControllerFlowTest, ControlFlowErrorUpdate) { 573 IN_PROC_BROWSER_TEST_F(WizardControllerFlowTest, ControlFlowErrorUpdate) {
574 CheckCurrentScreen(WizardController::kNetworkScreenName); 574 CheckCurrentScreen(WizardController::kNetworkScreenName);
575 EXPECT_CALL(*mock_update_screen_, StartNetworkCheck()).Times(0); 575 EXPECT_CALL(*mock_update_screen_, StartNetworkCheck()).Times(0);
576 EXPECT_CALL(*mock_eula_screen_, Show()).Times(1); 576 EXPECT_CALL(*mock_eula_screen_, Show()).Times(1);
577 EXPECT_CALL(*mock_update_screen_, Show()).Times(0); 577 EXPECT_CALL(*mock_update_screen_, Show()).Times(0);
578 EXPECT_CALL(*mock_network_screen_, Hide()).Times(1); 578 EXPECT_CALL(*mock_network_screen_, Hide()).Times(1);
579 OnExit(ScreenObserver::NETWORK_CONNECTED); 579 OnExit(BaseScreenDelegate::NETWORK_CONNECTED);
580 580
581 CheckCurrentScreen(WizardController::kEulaScreenName); 581 CheckCurrentScreen(WizardController::kEulaScreenName);
582 EXPECT_CALL(*mock_eula_screen_, Hide()).Times(1); 582 EXPECT_CALL(*mock_eula_screen_, Hide()).Times(1);
583 EXPECT_CALL(*mock_update_screen_, StartNetworkCheck()).Times(1); 583 EXPECT_CALL(*mock_update_screen_, StartNetworkCheck()).Times(1);
584 EXPECT_CALL(*mock_update_screen_, Show()).Times(1); 584 EXPECT_CALL(*mock_update_screen_, Show()).Times(1);
585 OnExit(ScreenObserver::EULA_ACCEPTED); 585 OnExit(BaseScreenDelegate::EULA_ACCEPTED);
586 586
587 // Let update screen smooth time process (time = 0ms). 587 // Let update screen smooth time process (time = 0ms).
588 content::RunAllPendingInMessageLoop(); 588 content::RunAllPendingInMessageLoop();
589 589
590 CheckCurrentScreen(WizardController::kUpdateScreenName); 590 CheckCurrentScreen(WizardController::kUpdateScreenName);
591 EXPECT_CALL(*mock_update_screen_, Hide()).Times(1); 591 EXPECT_CALL(*mock_update_screen_, Hide()).Times(1);
592 EXPECT_CALL(*mock_auto_enrollment_check_screen_, Show()).Times(1); 592 EXPECT_CALL(*mock_auto_enrollment_check_screen_, Show()).Times(1);
593 OnExit(ScreenObserver::UPDATE_ERROR_UPDATING); 593 OnExit(BaseScreenDelegate::UPDATE_ERROR_UPDATING);
594 594
595 CheckCurrentScreen(WizardController::kAutoEnrollmentCheckScreenName); 595 CheckCurrentScreen(WizardController::kAutoEnrollmentCheckScreenName);
596 EXPECT_CALL(*mock_auto_enrollment_check_screen_, Hide()).Times(1); 596 EXPECT_CALL(*mock_auto_enrollment_check_screen_, Hide()).Times(1);
597 EXPECT_CALL(*mock_eula_screen_, Show()).Times(0); 597 EXPECT_CALL(*mock_eula_screen_, Show()).Times(0);
598 OnExit(ScreenObserver::ENTERPRISE_AUTO_ENROLLMENT_CHECK_COMPLETED); 598 OnExit(BaseScreenDelegate::ENTERPRISE_AUTO_ENROLLMENT_CHECK_COMPLETED);
599 599
600 EXPECT_FALSE(ExistingUserController::current_controller() == NULL); 600 EXPECT_FALSE(ExistingUserController::current_controller() == NULL);
601 } 601 }
602 602
603 IN_PROC_BROWSER_TEST_F(WizardControllerFlowTest, ControlFlowSkipUpdateEnroll) { 603 IN_PROC_BROWSER_TEST_F(WizardControllerFlowTest, ControlFlowSkipUpdateEnroll) {
604 CheckCurrentScreen(WizardController::kNetworkScreenName); 604 CheckCurrentScreen(WizardController::kNetworkScreenName);
605 EXPECT_CALL(*mock_update_screen_, StartNetworkCheck()).Times(0); 605 EXPECT_CALL(*mock_update_screen_, StartNetworkCheck()).Times(0);
606 EXPECT_CALL(*mock_eula_screen_, Show()).Times(1); 606 EXPECT_CALL(*mock_eula_screen_, Show()).Times(1);
607 EXPECT_CALL(*mock_update_screen_, Show()).Times(0); 607 EXPECT_CALL(*mock_update_screen_, Show()).Times(0);
608 EXPECT_CALL(*mock_network_screen_, Hide()).Times(1); 608 EXPECT_CALL(*mock_network_screen_, Hide()).Times(1);
609 OnExit(ScreenObserver::NETWORK_CONNECTED); 609 OnExit(BaseScreenDelegate::NETWORK_CONNECTED);
610 610
611 CheckCurrentScreen(WizardController::kEulaScreenName); 611 CheckCurrentScreen(WizardController::kEulaScreenName);
612 EXPECT_CALL(*mock_eula_screen_, Hide()).Times(1); 612 EXPECT_CALL(*mock_eula_screen_, Hide()).Times(1);
613 EXPECT_CALL(*mock_update_screen_, StartNetworkCheck()).Times(0); 613 EXPECT_CALL(*mock_update_screen_, StartNetworkCheck()).Times(0);
614 EXPECT_CALL(*mock_update_screen_, Show()).Times(0); 614 EXPECT_CALL(*mock_update_screen_, Show()).Times(0);
615 WizardController::default_controller()->SkipUpdateEnrollAfterEula(); 615 WizardController::default_controller()->SkipUpdateEnrollAfterEula();
616 EXPECT_CALL(*mock_enrollment_screen_->actor(), 616 EXPECT_CALL(*mock_enrollment_screen_->actor(),
617 SetParameters(mock_enrollment_screen_, 617 SetParameters(mock_enrollment_screen_,
618 EnrollmentScreenActor::ENROLLMENT_MODE_MANUAL, 618 EnrollmentScreenActor::ENROLLMENT_MODE_MANUAL,
619 "")) 619 ""))
620 .Times(1); 620 .Times(1);
621 EXPECT_CALL(*mock_auto_enrollment_check_screen_, Show()).Times(1); 621 EXPECT_CALL(*mock_auto_enrollment_check_screen_, Show()).Times(1);
622 OnExit(ScreenObserver::EULA_ACCEPTED); 622 OnExit(BaseScreenDelegate::EULA_ACCEPTED);
623 content::RunAllPendingInMessageLoop(); 623 content::RunAllPendingInMessageLoop();
624 624
625 CheckCurrentScreen(WizardController::kAutoEnrollmentCheckScreenName); 625 CheckCurrentScreen(WizardController::kAutoEnrollmentCheckScreenName);
626 EXPECT_CALL(*mock_auto_enrollment_check_screen_, Hide()).Times(1); 626 EXPECT_CALL(*mock_auto_enrollment_check_screen_, Hide()).Times(1);
627 EXPECT_CALL(*mock_enrollment_screen_, Show()).Times(1); 627 EXPECT_CALL(*mock_enrollment_screen_, Show()).Times(1);
628 EXPECT_CALL(*mock_enrollment_screen_, Hide()).Times(0); 628 EXPECT_CALL(*mock_enrollment_screen_, Hide()).Times(0);
629 OnExit(ScreenObserver::ENTERPRISE_AUTO_ENROLLMENT_CHECK_COMPLETED); 629 OnExit(BaseScreenDelegate::ENTERPRISE_AUTO_ENROLLMENT_CHECK_COMPLETED);
630 content::RunAllPendingInMessageLoop(); 630 content::RunAllPendingInMessageLoop();
631 631
632 CheckCurrentScreen(WizardController::kEnrollmentScreenName); 632 CheckCurrentScreen(WizardController::kEnrollmentScreenName);
633 EXPECT_TRUE(ExistingUserController::current_controller() == NULL); 633 EXPECT_TRUE(ExistingUserController::current_controller() == NULL);
634 EXPECT_EQ("ethernet,wifi,cellular", 634 EXPECT_EQ("ethernet,wifi,cellular",
635 NetworkHandler::Get()->network_state_handler() 635 NetworkHandler::Get()->network_state_handler()
636 ->GetCheckPortalListForTest()); 636 ->GetCheckPortalListForTest());
637 } 637 }
638 638
639 IN_PROC_BROWSER_TEST_F(WizardControllerFlowTest, ControlFlowEulaDeclined) { 639 IN_PROC_BROWSER_TEST_F(WizardControllerFlowTest, ControlFlowEulaDeclined) {
640 CheckCurrentScreen(WizardController::kNetworkScreenName); 640 CheckCurrentScreen(WizardController::kNetworkScreenName);
641 EXPECT_CALL(*mock_update_screen_, StartNetworkCheck()).Times(0); 641 EXPECT_CALL(*mock_update_screen_, StartNetworkCheck()).Times(0);
642 EXPECT_CALL(*mock_eula_screen_, Show()).Times(1); 642 EXPECT_CALL(*mock_eula_screen_, Show()).Times(1);
643 EXPECT_CALL(*mock_network_screen_, Hide()).Times(1); 643 EXPECT_CALL(*mock_network_screen_, Hide()).Times(1);
644 OnExit(ScreenObserver::NETWORK_CONNECTED); 644 OnExit(BaseScreenDelegate::NETWORK_CONNECTED);
645 645
646 CheckCurrentScreen(WizardController::kEulaScreenName); 646 CheckCurrentScreen(WizardController::kEulaScreenName);
647 EXPECT_CALL(*mock_eula_screen_, Hide()).Times(1); 647 EXPECT_CALL(*mock_eula_screen_, Hide()).Times(1);
648 EXPECT_CALL(*mock_network_screen_, Show()).Times(1); 648 EXPECT_CALL(*mock_network_screen_, Show()).Times(1);
649 EXPECT_CALL(*mock_network_screen_, Hide()).Times(0); // last transition 649 EXPECT_CALL(*mock_network_screen_, Hide()).Times(0); // last transition
650 OnExit(ScreenObserver::EULA_BACK); 650 OnExit(BaseScreenDelegate::EULA_BACK);
651 651
652 CheckCurrentScreen(WizardController::kNetworkScreenName); 652 CheckCurrentScreen(WizardController::kNetworkScreenName);
653 } 653 }
654 654
655 IN_PROC_BROWSER_TEST_F(WizardControllerFlowTest, 655 IN_PROC_BROWSER_TEST_F(WizardControllerFlowTest,
656 ControlFlowEnrollmentCompleted) { 656 ControlFlowEnrollmentCompleted) {
657 CheckCurrentScreen(WizardController::kNetworkScreenName); 657 CheckCurrentScreen(WizardController::kNetworkScreenName);
658 EXPECT_CALL(*mock_update_screen_, StartNetworkCheck()).Times(0); 658 EXPECT_CALL(*mock_update_screen_, StartNetworkCheck()).Times(0);
659 EXPECT_CALL(*mock_enrollment_screen_->actor(), 659 EXPECT_CALL(*mock_enrollment_screen_->actor(),
660 SetParameters(mock_enrollment_screen_, 660 SetParameters(mock_enrollment_screen_,
661 EnrollmentScreenActor::ENROLLMENT_MODE_MANUAL, 661 EnrollmentScreenActor::ENROLLMENT_MODE_MANUAL,
662 "")) 662 ""))
663 .Times(1); 663 .Times(1);
664 EXPECT_CALL(*mock_enrollment_screen_, Show()).Times(1); 664 EXPECT_CALL(*mock_enrollment_screen_, Show()).Times(1);
665 EXPECT_CALL(*mock_network_screen_, Hide()).Times(1); 665 EXPECT_CALL(*mock_network_screen_, Hide()).Times(1);
666 666
667 WizardController::default_controller()->AdvanceToScreen( 667 WizardController::default_controller()->AdvanceToScreen(
668 WizardController::kEnrollmentScreenName); 668 WizardController::kEnrollmentScreenName);
669 CheckCurrentScreen(WizardController::kEnrollmentScreenName); 669 CheckCurrentScreen(WizardController::kEnrollmentScreenName);
670 OnExit(ScreenObserver::ENTERPRISE_ENROLLMENT_COMPLETED); 670 OnExit(BaseScreenDelegate::ENTERPRISE_ENROLLMENT_COMPLETED);
671 671
672 EXPECT_FALSE(ExistingUserController::current_controller() == NULL); 672 EXPECT_FALSE(ExistingUserController::current_controller() == NULL);
673 } 673 }
674 674
675 IN_PROC_BROWSER_TEST_F(WizardControllerFlowTest, 675 IN_PROC_BROWSER_TEST_F(WizardControllerFlowTest,
676 ControlFlowAutoEnrollmentCompleted) { 676 ControlFlowAutoEnrollmentCompleted) {
677 WizardController::default_controller()->SkipPostLoginScreensForTesting(); 677 WizardController::default_controller()->SkipPostLoginScreensForTesting();
678 CheckCurrentScreen(WizardController::kNetworkScreenName); 678 CheckCurrentScreen(WizardController::kNetworkScreenName);
679 EXPECT_CALL(*mock_update_screen_, StartNetworkCheck()).Times(0); 679 EXPECT_CALL(*mock_update_screen_, StartNetworkCheck()).Times(0);
680 680
(...skipping 11 matching lines...) Expand all
692 &mock_consumer); 692 &mock_consumer);
693 // This calls StartWizard, destroying the current controller() and its mocks; 693 // This calls StartWizard, destroying the current controller() and its mocks;
694 // don't set expectations on those objects. 694 // don't set expectations on those objects.
695 ExistingUserController::current_controller()->CompleteLogin(user_context); 695 ExistingUserController::current_controller()->CompleteLogin(user_context);
696 // Run the tasks posted to complete the login: 696 // Run the tasks posted to complete the login:
697 base::MessageLoop::current()->RunUntilIdle(); 697 base::MessageLoop::current()->RunUntilIdle();
698 698
699 CheckCurrentScreen(WizardController::kEnrollmentScreenName); 699 CheckCurrentScreen(WizardController::kEnrollmentScreenName);
700 // This is the main expectation: after auto-enrollment, login is resumed. 700 // This is the main expectation: after auto-enrollment, login is resumed.
701 EXPECT_CALL(mock_consumer, OnAuthSuccess(_)).Times(1); 701 EXPECT_CALL(mock_consumer, OnAuthSuccess(_)).Times(1);
702 OnExit(ScreenObserver::ENTERPRISE_AUTO_MAGIC_ENROLLMENT_COMPLETED); 702 OnExit(BaseScreenDelegate::ENTERPRISE_AUTO_MAGIC_ENROLLMENT_COMPLETED);
703 // Prevent browser launch when the profile is prepared: 703 // Prevent browser launch when the profile is prepared:
704 browser_shutdown::SetTryingToQuit(true); 704 browser_shutdown::SetTryingToQuit(true);
705 // Run the tasks posted to complete the login: 705 // Run the tasks posted to complete the login:
706 base::MessageLoop::current()->RunUntilIdle(); 706 base::MessageLoop::current()->RunUntilIdle();
707 } 707 }
708 708
709 IN_PROC_BROWSER_TEST_F(WizardControllerFlowTest, 709 IN_PROC_BROWSER_TEST_F(WizardControllerFlowTest,
710 ControlFlowWrongHWIDScreenFromLogin) { 710 ControlFlowWrongHWIDScreenFromLogin) {
711 CheckCurrentScreen(WizardController::kNetworkScreenName); 711 CheckCurrentScreen(WizardController::kNetworkScreenName);
712 712
713 LoginDisplayHostImpl::default_host()->StartSignInScreen(LoginScreenContext()); 713 LoginDisplayHostImpl::default_host()->StartSignInScreen(LoginScreenContext());
714 EXPECT_FALSE(ExistingUserController::current_controller() == NULL); 714 EXPECT_FALSE(ExistingUserController::current_controller() == NULL);
715 ExistingUserController::current_controller()->ShowWrongHWIDScreen(); 715 ExistingUserController::current_controller()->ShowWrongHWIDScreen();
716 716
717 CheckCurrentScreen(WizardController::kWrongHWIDScreenName); 717 CheckCurrentScreen(WizardController::kWrongHWIDScreenName);
718 718
719 // After warning is skipped, user returns to sign-in screen. 719 // After warning is skipped, user returns to sign-in screen.
720 // And this destroys WizardController. 720 // And this destroys WizardController.
721 OnExit(ScreenObserver::WRONG_HWID_WARNING_SKIPPED); 721 OnExit(BaseScreenDelegate::WRONG_HWID_WARNING_SKIPPED);
722 EXPECT_FALSE(ExistingUserController::current_controller() == NULL); 722 EXPECT_FALSE(ExistingUserController::current_controller() == NULL);
723 } 723 }
724 724
725 class WizardControllerDeviceStateTest : public WizardControllerFlowTest { 725 class WizardControllerDeviceStateTest : public WizardControllerFlowTest {
726 protected: 726 protected:
727 WizardControllerDeviceStateTest() 727 WizardControllerDeviceStateTest()
728 : install_attributes_(std::string(), 728 : install_attributes_(std::string(),
729 std::string(), 729 std::string(),
730 std::string(), 730 std::string(),
731 policy::DEVICE_MODE_NOT_SET) { 731 policy::DEVICE_MODE_NOT_SET) {
(...skipping 20 matching lines...) Expand all
752 policy::ScopedStubEnterpriseInstallAttributes install_attributes_; 752 policy::ScopedStubEnterpriseInstallAttributes install_attributes_;
753 753
754 DISALLOW_COPY_AND_ASSIGN(WizardControllerDeviceStateTest); 754 DISALLOW_COPY_AND_ASSIGN(WizardControllerDeviceStateTest);
755 }; 755 };
756 756
757 IN_PROC_BROWSER_TEST_F(WizardControllerDeviceStateTest, 757 IN_PROC_BROWSER_TEST_F(WizardControllerDeviceStateTest,
758 ControlFlowForcedReEnrollment) { 758 ControlFlowForcedReEnrollment) {
759 CheckCurrentScreen(WizardController::kNetworkScreenName); 759 CheckCurrentScreen(WizardController::kNetworkScreenName);
760 EXPECT_CALL(*mock_network_screen_, Hide()).Times(1); 760 EXPECT_CALL(*mock_network_screen_, Hide()).Times(1);
761 EXPECT_CALL(*mock_eula_screen_, Show()).Times(1); 761 EXPECT_CALL(*mock_eula_screen_, Show()).Times(1);
762 OnExit(ScreenObserver::NETWORK_CONNECTED); 762 OnExit(BaseScreenDelegate::NETWORK_CONNECTED);
763 763
764 CheckCurrentScreen(WizardController::kEulaScreenName); 764 CheckCurrentScreen(WizardController::kEulaScreenName);
765 EXPECT_CALL(*mock_eula_screen_, Hide()).Times(1); 765 EXPECT_CALL(*mock_eula_screen_, Hide()).Times(1);
766 EXPECT_CALL(*mock_update_screen_, StartNetworkCheck()).Times(1); 766 EXPECT_CALL(*mock_update_screen_, StartNetworkCheck()).Times(1);
767 EXPECT_CALL(*mock_update_screen_, Show()).Times(1); 767 EXPECT_CALL(*mock_update_screen_, Show()).Times(1);
768 OnExit(ScreenObserver::EULA_ACCEPTED); 768 OnExit(BaseScreenDelegate::EULA_ACCEPTED);
769 769
770 // Let update screen smooth time process (time = 0ms). 770 // Let update screen smooth time process (time = 0ms).
771 content::RunAllPendingInMessageLoop(); 771 content::RunAllPendingInMessageLoop();
772 772
773 CheckCurrentScreen(WizardController::kUpdateScreenName); 773 CheckCurrentScreen(WizardController::kUpdateScreenName);
774 EXPECT_CALL(*mock_update_screen_, Hide()).Times(1); 774 EXPECT_CALL(*mock_update_screen_, Hide()).Times(1);
775 EXPECT_CALL(*mock_auto_enrollment_check_screen_, Show()).Times(1); 775 EXPECT_CALL(*mock_auto_enrollment_check_screen_, Show()).Times(1);
776 OnExit(ScreenObserver::UPDATE_INSTALLED); 776 OnExit(BaseScreenDelegate::UPDATE_INSTALLED);
777 777
778 AutoEnrollmentCheckScreen* screen = 778 AutoEnrollmentCheckScreen* screen =
779 AutoEnrollmentCheckScreen::Get(WizardController::default_controller()); 779 AutoEnrollmentCheckScreen::Get(WizardController::default_controller());
780 EXPECT_EQ(screen, 780 EXPECT_EQ(screen,
781 WizardController::default_controller()->current_screen()); 781 WizardController::default_controller()->current_screen());
782 EXPECT_CALL(*mock_auto_enrollment_check_screen_, Hide()).Times(1); 782 EXPECT_CALL(*mock_auto_enrollment_check_screen_, Hide()).Times(1);
783 screen->Start(); 783 screen->Start();
784 784
785 // Wait for auto-enrollment controller to encounter the connection error. 785 // Wait for auto-enrollment controller to encounter the connection error.
786 WaitForAutoEnrollmentState(policy::AUTO_ENROLLMENT_STATE_CONNECTION_ERROR); 786 WaitForAutoEnrollmentState(policy::AUTO_ENROLLMENT_STATE_CONNECTION_ERROR);
787 787
788 // The error screen shows up if there's no auto-enrollment decision. 788 // The error screen shows up if there's no auto-enrollment decision.
789 EXPECT_FALSE(StartupUtils::IsOobeCompleted()); 789 EXPECT_FALSE(StartupUtils::IsOobeCompleted());
790 EXPECT_EQ(GetErrorScreen(), 790 EXPECT_EQ(GetErrorScreen(),
791 WizardController::default_controller()->current_screen()); 791 WizardController::default_controller()->current_screen());
792 base::DictionaryValue device_state; 792 base::DictionaryValue device_state;
793 device_state.SetString(policy::kDeviceStateRestoreMode, 793 device_state.SetString(policy::kDeviceStateRestoreMode,
794 policy::kDeviceStateRestoreModeReEnrollmentEnforced); 794 policy::kDeviceStateRestoreModeReEnrollmentEnforced);
795 g_browser_process->local_state()->Set(prefs::kServerBackedDeviceState, 795 g_browser_process->local_state()->Set(prefs::kServerBackedDeviceState,
796 device_state); 796 device_state);
797 EXPECT_CALL(*mock_enrollment_screen_, Show()).Times(1); 797 EXPECT_CALL(*mock_enrollment_screen_, Show()).Times(1);
798 EXPECT_CALL(*mock_enrollment_screen_->actor(), 798 EXPECT_CALL(*mock_enrollment_screen_->actor(),
799 SetParameters(mock_enrollment_screen_, 799 SetParameters(mock_enrollment_screen_,
800 EnrollmentScreenActor::ENROLLMENT_MODE_FORCED, 800 EnrollmentScreenActor::ENROLLMENT_MODE_FORCED,
801 "")).Times(1); 801 "")).Times(1);
802 OnExit(ScreenObserver::ENTERPRISE_AUTO_ENROLLMENT_CHECK_COMPLETED); 802 OnExit(BaseScreenDelegate::ENTERPRISE_AUTO_ENROLLMENT_CHECK_COMPLETED);
803 803
804 ResetAutoEnrollmentCheckScreen(); 804 ResetAutoEnrollmentCheckScreen();
805 805
806 // Make sure enterprise enrollment page shows up. 806 // Make sure enterprise enrollment page shows up.
807 CheckCurrentScreen(WizardController::kEnrollmentScreenName); 807 CheckCurrentScreen(WizardController::kEnrollmentScreenName);
808 OnExit(ScreenObserver::ENTERPRISE_ENROLLMENT_COMPLETED); 808 OnExit(BaseScreenDelegate::ENTERPRISE_ENROLLMENT_COMPLETED);
809 809
810 EXPECT_TRUE(StartupUtils::IsOobeCompleted()); 810 EXPECT_TRUE(StartupUtils::IsOobeCompleted());
811 } 811 }
812 812
813 IN_PROC_BROWSER_TEST_F(WizardControllerDeviceStateTest, 813 IN_PROC_BROWSER_TEST_F(WizardControllerDeviceStateTest,
814 ControlFlowNoForcedReEnrollmentOnFirstBoot) { 814 ControlFlowNoForcedReEnrollmentOnFirstBoot) {
815 fake_statistics_provider_.ClearMachineStatistic(system::kActivateDateKey); 815 fake_statistics_provider_.ClearMachineStatistic(system::kActivateDateKey);
816 EXPECT_NE(policy::AUTO_ENROLLMENT_STATE_NO_ENROLLMENT, 816 EXPECT_NE(policy::AUTO_ENROLLMENT_STATE_NO_ENROLLMENT,
817 LoginDisplayHostImpl::default_host() 817 LoginDisplayHostImpl::default_host()
818 ->GetAutoEnrollmentController() 818 ->GetAutoEnrollmentController()
819 ->state()); 819 ->state());
820 820
821 CheckCurrentScreen(WizardController::kNetworkScreenName); 821 CheckCurrentScreen(WizardController::kNetworkScreenName);
822 EXPECT_CALL(*mock_network_screen_, Hide()).Times(1); 822 EXPECT_CALL(*mock_network_screen_, Hide()).Times(1);
823 EXPECT_CALL(*mock_eula_screen_, Show()).Times(1); 823 EXPECT_CALL(*mock_eula_screen_, Show()).Times(1);
824 OnExit(ScreenObserver::NETWORK_CONNECTED); 824 OnExit(BaseScreenDelegate::NETWORK_CONNECTED);
825 825
826 CheckCurrentScreen(WizardController::kEulaScreenName); 826 CheckCurrentScreen(WizardController::kEulaScreenName);
827 EXPECT_CALL(*mock_eula_screen_, Hide()).Times(1); 827 EXPECT_CALL(*mock_eula_screen_, Hide()).Times(1);
828 EXPECT_CALL(*mock_update_screen_, StartNetworkCheck()).Times(1); 828 EXPECT_CALL(*mock_update_screen_, StartNetworkCheck()).Times(1);
829 EXPECT_CALL(*mock_update_screen_, Show()).Times(1); 829 EXPECT_CALL(*mock_update_screen_, Show()).Times(1);
830 OnExit(ScreenObserver::EULA_ACCEPTED); 830 OnExit(BaseScreenDelegate::EULA_ACCEPTED);
831 831
832 // Let update screen smooth time process (time = 0ms). 832 // Let update screen smooth time process (time = 0ms).
833 content::RunAllPendingInMessageLoop(); 833 content::RunAllPendingInMessageLoop();
834 834
835 CheckCurrentScreen(WizardController::kUpdateScreenName); 835 CheckCurrentScreen(WizardController::kUpdateScreenName);
836 EXPECT_CALL(*mock_update_screen_, Hide()).Times(1); 836 EXPECT_CALL(*mock_update_screen_, Hide()).Times(1);
837 EXPECT_CALL(*mock_auto_enrollment_check_screen_, Show()).Times(1); 837 EXPECT_CALL(*mock_auto_enrollment_check_screen_, Show()).Times(1);
838 OnExit(ScreenObserver::UPDATE_INSTALLED); 838 OnExit(BaseScreenDelegate::UPDATE_INSTALLED);
839 839
840 AutoEnrollmentCheckScreen* screen = 840 AutoEnrollmentCheckScreen* screen =
841 AutoEnrollmentCheckScreen::Get(WizardController::default_controller()); 841 AutoEnrollmentCheckScreen::Get(WizardController::default_controller());
842 EXPECT_EQ(screen, 842 EXPECT_EQ(screen,
843 WizardController::default_controller()->current_screen()); 843 WizardController::default_controller()->current_screen());
844 EXPECT_CALL(*mock_auto_enrollment_check_screen_, Hide()).Times(1); 844 EXPECT_CALL(*mock_auto_enrollment_check_screen_, Hide()).Times(1);
845 screen->Start(); 845 screen->Start();
846 EXPECT_EQ(policy::AUTO_ENROLLMENT_STATE_NO_ENROLLMENT, 846 EXPECT_EQ(policy::AUTO_ENROLLMENT_STATE_NO_ENROLLMENT,
847 LoginDisplayHostImpl::default_host() 847 LoginDisplayHostImpl::default_host()
848 ->GetAutoEnrollmentController() 848 ->GetAutoEnrollmentController()
849 ->state()); 849 ->state());
850 } 850 }
851 851
852 IN_PROC_BROWSER_TEST_F(WizardControllerDeviceStateTest, 852 IN_PROC_BROWSER_TEST_F(WizardControllerDeviceStateTest,
853 ControlFlowDeviceDisabled) { 853 ControlFlowDeviceDisabled) {
854 CheckCurrentScreen(WizardController::kNetworkScreenName); 854 CheckCurrentScreen(WizardController::kNetworkScreenName);
855 EXPECT_CALL(*mock_network_screen_, Hide()).Times(1); 855 EXPECT_CALL(*mock_network_screen_, Hide()).Times(1);
856 EXPECT_CALL(*mock_eula_screen_, Show()).Times(1); 856 EXPECT_CALL(*mock_eula_screen_, Show()).Times(1);
857 OnExit(ScreenObserver::NETWORK_CONNECTED); 857 OnExit(BaseScreenDelegate::NETWORK_CONNECTED);
858 858
859 CheckCurrentScreen(WizardController::kEulaScreenName); 859 CheckCurrentScreen(WizardController::kEulaScreenName);
860 EXPECT_CALL(*mock_eula_screen_, Hide()).Times(1); 860 EXPECT_CALL(*mock_eula_screen_, Hide()).Times(1);
861 EXPECT_CALL(*mock_update_screen_, StartNetworkCheck()).Times(1); 861 EXPECT_CALL(*mock_update_screen_, StartNetworkCheck()).Times(1);
862 EXPECT_CALL(*mock_update_screen_, Show()).Times(1); 862 EXPECT_CALL(*mock_update_screen_, Show()).Times(1);
863 OnExit(ScreenObserver::EULA_ACCEPTED); 863 OnExit(BaseScreenDelegate::EULA_ACCEPTED);
864 864
865 // Let update screen smooth time process (time = 0ms). 865 // Let update screen smooth time process (time = 0ms).
866 content::RunAllPendingInMessageLoop(); 866 content::RunAllPendingInMessageLoop();
867 867
868 CheckCurrentScreen(WizardController::kUpdateScreenName); 868 CheckCurrentScreen(WizardController::kUpdateScreenName);
869 EXPECT_CALL(*mock_update_screen_, Hide()).Times(1); 869 EXPECT_CALL(*mock_update_screen_, Hide()).Times(1);
870 EXPECT_CALL(*mock_auto_enrollment_check_screen_, Show()).Times(1); 870 EXPECT_CALL(*mock_auto_enrollment_check_screen_, Show()).Times(1);
871 OnExit(ScreenObserver::UPDATE_INSTALLED); 871 OnExit(BaseScreenDelegate::UPDATE_INSTALLED);
872 872
873 AutoEnrollmentCheckScreen* screen = 873 AutoEnrollmentCheckScreen* screen =
874 AutoEnrollmentCheckScreen::Get(WizardController::default_controller()); 874 AutoEnrollmentCheckScreen::Get(WizardController::default_controller());
875 EXPECT_EQ(screen, 875 EXPECT_EQ(screen,
876 WizardController::default_controller()->current_screen()); 876 WizardController::default_controller()->current_screen());
877 EXPECT_CALL(*mock_auto_enrollment_check_screen_, Hide()).Times(1); 877 EXPECT_CALL(*mock_auto_enrollment_check_screen_, Hide()).Times(1);
878 screen->Start(); 878 screen->Start();
879 879
880 // Wait for auto-enrollment controller to encounter the connection error. 880 // Wait for auto-enrollment controller to encounter the connection error.
881 WaitForAutoEnrollmentState(policy::AUTO_ENROLLMENT_STATE_CONNECTION_ERROR); 881 WaitForAutoEnrollmentState(policy::AUTO_ENROLLMENT_STATE_CONNECTION_ERROR);
882 882
883 // The error screen shows up if device state could not be retrieved. 883 // The error screen shows up if device state could not be retrieved.
884 EXPECT_FALSE(StartupUtils::IsOobeCompleted()); 884 EXPECT_FALSE(StartupUtils::IsOobeCompleted());
885 EXPECT_EQ(GetErrorScreen(), 885 EXPECT_EQ(GetErrorScreen(),
886 WizardController::default_controller()->current_screen()); 886 WizardController::default_controller()->current_screen());
887 base::DictionaryValue device_state; 887 base::DictionaryValue device_state;
888 device_state.SetBoolean(policy::kDeviceStateDisabled, true); 888 device_state.SetBoolean(policy::kDeviceStateDisabled, true);
889 device_state.SetString(policy::kDeviceStateDisabledMessage, kDisabledMessage); 889 device_state.SetString(policy::kDeviceStateDisabledMessage, kDisabledMessage);
890 g_browser_process->local_state()->Set(prefs::kServerBackedDeviceState, 890 g_browser_process->local_state()->Set(prefs::kServerBackedDeviceState,
891 device_state); 891 device_state);
892 EXPECT_CALL(*device_disabled_screen_actor_, Show(kDisabledMessage)).Times(1); 892 EXPECT_CALL(*device_disabled_screen_actor_, Show(kDisabledMessage)).Times(1);
893 OnExit(ScreenObserver::ENTERPRISE_AUTO_ENROLLMENT_CHECK_COMPLETED); 893 OnExit(BaseScreenDelegate::ENTERPRISE_AUTO_ENROLLMENT_CHECK_COMPLETED);
894 894
895 ResetAutoEnrollmentCheckScreen(); 895 ResetAutoEnrollmentCheckScreen();
896 896
897 // Make sure the device disabled screen is shown. 897 // Make sure the device disabled screen is shown.
898 CheckCurrentScreen(WizardController::kDeviceDisabledScreenName); 898 CheckCurrentScreen(WizardController::kDeviceDisabledScreenName);
899 899
900 EXPECT_FALSE(StartupUtils::IsOobeCompleted()); 900 EXPECT_FALSE(StartupUtils::IsOobeCompleted());
901 } 901 }
902 902
903 class WizardControllerBrokenLocalStateTest : public WizardControllerTest { 903 class WizardControllerBrokenLocalStateTest : public WizardControllerTest {
(...skipping 130 matching lines...) Expand 10 before | Expand all | Expand 10 after
1034 EXPECT_CALL(*mock_enrollment_screen_->actor(), 1034 EXPECT_CALL(*mock_enrollment_screen_->actor(),
1035 SetParameters(mock_enrollment_screen_, 1035 SetParameters(mock_enrollment_screen_,
1036 EnrollmentScreenActor::ENROLLMENT_MODE_FORCED, 1036 EnrollmentScreenActor::ENROLLMENT_MODE_FORCED,
1037 "")) 1037 ""))
1038 .Times(1); 1038 .Times(1);
1039 1039
1040 EXPECT_TRUE(ExistingUserController::current_controller() == NULL); 1040 EXPECT_TRUE(ExistingUserController::current_controller() == NULL);
1041 CheckCurrentScreen(WizardController::kNetworkScreenName); 1041 CheckCurrentScreen(WizardController::kNetworkScreenName);
1042 EXPECT_CALL(*mock_network_screen_, Hide()).Times(1); 1042 EXPECT_CALL(*mock_network_screen_, Hide()).Times(1);
1043 EXPECT_CALL(*mock_eula_screen_, Show()).Times(1); 1043 EXPECT_CALL(*mock_eula_screen_, Show()).Times(1);
1044 OnExit(ScreenObserver::NETWORK_CONNECTED); 1044 OnExit(BaseScreenDelegate::NETWORK_CONNECTED);
1045 1045
1046 CheckCurrentScreen(WizardController::kEulaScreenName); 1046 CheckCurrentScreen(WizardController::kEulaScreenName);
1047 EXPECT_CALL(*mock_eula_screen_, Hide()).Times(1); 1047 EXPECT_CALL(*mock_eula_screen_, Hide()).Times(1);
1048 EXPECT_CALL(*mock_update_screen_, StartNetworkCheck()).Times(1); 1048 EXPECT_CALL(*mock_update_screen_, StartNetworkCheck()).Times(1);
1049 EXPECT_CALL(*mock_update_screen_, Show()).Times(1); 1049 EXPECT_CALL(*mock_update_screen_, Show()).Times(1);
1050 OnExit(ScreenObserver::EULA_ACCEPTED); 1050 OnExit(BaseScreenDelegate::EULA_ACCEPTED);
1051 1051
1052 // Let update screen smooth time process (time = 0ms). 1052 // Let update screen smooth time process (time = 0ms).
1053 content::RunAllPendingInMessageLoop(); 1053 content::RunAllPendingInMessageLoop();
1054 1054
1055 CheckCurrentScreen(WizardController::kUpdateScreenName); 1055 CheckCurrentScreen(WizardController::kUpdateScreenName);
1056 EXPECT_CALL(*mock_update_screen_, Hide()).Times(1); 1056 EXPECT_CALL(*mock_update_screen_, Hide()).Times(1);
1057 EXPECT_CALL(*mock_auto_enrollment_check_screen_, Show()).Times(1); 1057 EXPECT_CALL(*mock_auto_enrollment_check_screen_, Show()).Times(1);
1058 OnExit(ScreenObserver::UPDATE_INSTALLED); 1058 OnExit(BaseScreenDelegate::UPDATE_INSTALLED);
1059 1059
1060 CheckCurrentScreen(WizardController::kAutoEnrollmentCheckScreenName); 1060 CheckCurrentScreen(WizardController::kAutoEnrollmentCheckScreenName);
1061 EXPECT_CALL(*mock_auto_enrollment_check_screen_, Hide()).Times(1); 1061 EXPECT_CALL(*mock_auto_enrollment_check_screen_, Hide()).Times(1);
1062 EXPECT_CALL(*mock_enrollment_screen_, Show()).Times(1); 1062 EXPECT_CALL(*mock_enrollment_screen_, Show()).Times(1);
1063 OnExit(ScreenObserver::ENTERPRISE_AUTO_ENROLLMENT_CHECK_COMPLETED); 1063 OnExit(BaseScreenDelegate::ENTERPRISE_AUTO_ENROLLMENT_CHECK_COMPLETED);
1064
1065 1064
1066 EXPECT_FALSE(StartupUtils::IsOobeCompleted()); 1065 EXPECT_FALSE(StartupUtils::IsOobeCompleted());
1067 1066
1068 // Make sure enterprise enrollment page shows up right after update screen. 1067 // Make sure enterprise enrollment page shows up right after update screen.
1069 CheckCurrentScreen(WizardController::kEnrollmentScreenName); 1068 CheckCurrentScreen(WizardController::kEnrollmentScreenName);
1070 OnExit(ScreenObserver::ENTERPRISE_ENROLLMENT_COMPLETED); 1069 OnExit(BaseScreenDelegate::ENTERPRISE_ENROLLMENT_COMPLETED);
1071 1070
1072 EXPECT_TRUE(StartupUtils::IsOobeCompleted()); 1071 EXPECT_TRUE(StartupUtils::IsOobeCompleted());
1073 } 1072 }
1074 1073
1075 1074
1076 IN_PROC_BROWSER_TEST_F(WizardControllerKioskFlowTest, 1075 IN_PROC_BROWSER_TEST_F(WizardControllerKioskFlowTest,
1077 ControlFlowEnrollmentBack) { 1076 ControlFlowEnrollmentBack) {
1078 EXPECT_CALL(*mock_enrollment_screen_->actor(), 1077 EXPECT_CALL(*mock_enrollment_screen_->actor(),
1079 SetParameters(mock_enrollment_screen_, 1078 SetParameters(mock_enrollment_screen_,
1080 EnrollmentScreenActor::ENROLLMENT_MODE_FORCED, 1079 EnrollmentScreenActor::ENROLLMENT_MODE_FORCED,
1081 "")) 1080 ""))
1082 .Times(1); 1081 .Times(1);
1083 1082
1084 EXPECT_TRUE(ExistingUserController::current_controller() == NULL); 1083 EXPECT_TRUE(ExistingUserController::current_controller() == NULL);
1085 CheckCurrentScreen(WizardController::kNetworkScreenName); 1084 CheckCurrentScreen(WizardController::kNetworkScreenName);
1086 EXPECT_CALL(*mock_network_screen_, Show()).Times(1); 1085 EXPECT_CALL(*mock_network_screen_, Show()).Times(1);
1087 EXPECT_CALL(*mock_network_screen_, Hide()).Times(1); 1086 EXPECT_CALL(*mock_network_screen_, Hide()).Times(1);
1088 EXPECT_CALL(*mock_eula_screen_, Show()).Times(1); 1087 EXPECT_CALL(*mock_eula_screen_, Show()).Times(1);
1089 OnExit(ScreenObserver::NETWORK_CONNECTED); 1088 OnExit(BaseScreenDelegate::NETWORK_CONNECTED);
1090 1089
1091 CheckCurrentScreen(WizardController::kEulaScreenName); 1090 CheckCurrentScreen(WizardController::kEulaScreenName);
1092 EXPECT_CALL(*mock_eula_screen_, Hide()).Times(1); 1091 EXPECT_CALL(*mock_eula_screen_, Hide()).Times(1);
1093 EXPECT_CALL(*mock_update_screen_, StartNetworkCheck()).Times(1); 1092 EXPECT_CALL(*mock_update_screen_, StartNetworkCheck()).Times(1);
1094 EXPECT_CALL(*mock_update_screen_, Show()).Times(1); 1093 EXPECT_CALL(*mock_update_screen_, Show()).Times(1);
1095 OnExit(ScreenObserver::EULA_ACCEPTED); 1094 OnExit(BaseScreenDelegate::EULA_ACCEPTED);
1096 1095
1097 // Let update screen smooth time process (time = 0ms). 1096 // Let update screen smooth time process (time = 0ms).
1098 content::RunAllPendingInMessageLoop(); 1097 content::RunAllPendingInMessageLoop();
1099 1098
1100 CheckCurrentScreen(WizardController::kUpdateScreenName); 1099 CheckCurrentScreen(WizardController::kUpdateScreenName);
1101 EXPECT_CALL(*mock_update_screen_, Hide()).Times(1); 1100 EXPECT_CALL(*mock_update_screen_, Hide()).Times(1);
1102 EXPECT_CALL(*mock_auto_enrollment_check_screen_, Show()).Times(1); 1101 EXPECT_CALL(*mock_auto_enrollment_check_screen_, Show()).Times(1);
1103 OnExit(ScreenObserver::UPDATE_INSTALLED); 1102 OnExit(BaseScreenDelegate::UPDATE_INSTALLED);
1104 1103
1105 CheckCurrentScreen(WizardController::kAutoEnrollmentCheckScreenName); 1104 CheckCurrentScreen(WizardController::kAutoEnrollmentCheckScreenName);
1106 EXPECT_CALL(*mock_auto_enrollment_check_screen_, Hide()).Times(1); 1105 EXPECT_CALL(*mock_auto_enrollment_check_screen_, Hide()).Times(1);
1107 EXPECT_CALL(*mock_enrollment_screen_, Show()).Times(1); 1106 EXPECT_CALL(*mock_enrollment_screen_, Show()).Times(1);
1108 EXPECT_CALL(*mock_enrollment_screen_, Hide()).Times(1); 1107 EXPECT_CALL(*mock_enrollment_screen_, Hide()).Times(1);
1109 OnExit(ScreenObserver::ENTERPRISE_AUTO_ENROLLMENT_CHECK_COMPLETED); 1108 OnExit(BaseScreenDelegate::ENTERPRISE_AUTO_ENROLLMENT_CHECK_COMPLETED);
1110 1109
1111 EXPECT_FALSE(StartupUtils::IsOobeCompleted()); 1110 EXPECT_FALSE(StartupUtils::IsOobeCompleted());
1112 1111
1113 // Make sure enterprise enrollment page shows up right after update screen. 1112 // Make sure enterprise enrollment page shows up right after update screen.
1114 CheckCurrentScreen(WizardController::kEnrollmentScreenName); 1113 CheckCurrentScreen(WizardController::kEnrollmentScreenName);
1115 OnExit(ScreenObserver::ENTERPRISE_ENROLLMENT_BACK); 1114 OnExit(BaseScreenDelegate::ENTERPRISE_ENROLLMENT_BACK);
1116 1115
1117 CheckCurrentScreen(WizardController::kNetworkScreenName); 1116 CheckCurrentScreen(WizardController::kNetworkScreenName);
1118 EXPECT_FALSE(StartupUtils::IsOobeCompleted()); 1117 EXPECT_FALSE(StartupUtils::IsOobeCompleted());
1119 } 1118 }
1120 1119
1121 class WizardControllerOobeResumeTest : public WizardControllerTest { 1120 class WizardControllerOobeResumeTest : public WizardControllerTest {
1122 protected: 1121 protected:
1123 WizardControllerOobeResumeTest() {} 1122 WizardControllerOobeResumeTest() {}
1124 // Overriden from InProcessBrowserTest: 1123 // Overriden from InProcessBrowserTest:
1125 virtual void SetUpOnMainThread() override { 1124 virtual void SetUpOnMainThread() override {
1126 WizardControllerTest::SetUpOnMainThread(); 1125 WizardControllerTest::SetUpOnMainThread();
1127 1126
1128 // Make sure that OOBE is run as an "official" build. 1127 // Make sure that OOBE is run as an "official" build.
1129 WizardController::default_controller()->is_official_build_ = true; 1128 WizardController::default_controller()->is_official_build_ = true;
1130 1129
1131 // Clear portal list (as it is by default in OOBE). 1130 // Clear portal list (as it is by default in OOBE).
1132 NetworkHandler::Get()->network_state_handler()->SetCheckPortalList(""); 1131 NetworkHandler::Get()->network_state_handler()->SetCheckPortalList("");
1133 1132
1134 // Set up the mocks for all screens. 1133 // Set up the mocks for all screens.
1135 MOCK(mock_network_screen_, 1134 MOCK(mock_network_screen_,
1136 kNetworkScreenName, 1135 kNetworkScreenName,
1137 MockNetworkScreen, 1136 MockNetworkScreen,
1138 MockNetworkScreenActor); 1137 MockNetworkScreenActor);
1139 MOCK(mock_enrollment_screen_, 1138 MOCK(mock_enrollment_screen_,
1140 kEnrollmentScreenName, 1139 kEnrollmentScreenName,
1141 MockEnrollmentScreen, 1140 MockEnrollmentScreen,
1142 MockEnrollmentScreenActor); 1141 MockEnrollmentScreenActor);
1143 } 1142 }
1144 1143
1145 void OnExit(ScreenObserver::ExitCodes exit_code) { 1144 void OnExit(BaseScreenDelegate::ExitCodes exit_code) {
1146 WizardController::default_controller()->OnExit(exit_code); 1145 WizardController::default_controller()->OnExit(exit_code);
1147 } 1146 }
1148 1147
1149 std::string GetFirstScreenName() { 1148 std::string GetFirstScreenName() {
1150 return WizardController::default_controller()->first_screen_name(); 1149 return WizardController::default_controller()->first_screen_name();
1151 } 1150 }
1152 1151
1153 MockOutShowHide<MockNetworkScreen, MockNetworkScreenActor>* 1152 MockOutShowHide<MockNetworkScreen, MockNetworkScreenActor>*
1154 mock_network_screen_; 1153 mock_network_screen_;
1155 MockOutShowHide<MockEnrollmentScreen, 1154 MockOutShowHide<MockEnrollmentScreen,
(...skipping 30 matching lines...) Expand all
1186 // TODO(dzhioev): Add test emaulating device with wrong HWID. 1185 // TODO(dzhioev): Add test emaulating device with wrong HWID.
1187 1186
1188 // TODO(nkostylev): Add test for WebUI accelerators http://crosbug.com/22571 1187 // TODO(nkostylev): Add test for WebUI accelerators http://crosbug.com/22571
1189 1188
1190 // TODO(merkulova): Add tests for bluetooth HID detection screen variations when 1189 // TODO(merkulova): Add tests for bluetooth HID detection screen variations when
1191 // UI and logic is ready. http://crbug.com/127016 1190 // UI and logic is ready. http://crbug.com/127016
1192 1191
1193 // TODO(dzhioev): Add tests for controller/host pairing flow. 1192 // TODO(dzhioev): Add tests for controller/host pairing flow.
1194 // http://crbug.com/375191 1193 // http://crbug.com/375191
1195 1194
1196 COMPILE_ASSERT(ScreenObserver::EXIT_CODES_COUNT == 24, 1195 COMPILE_ASSERT(BaseScreenDelegate::EXIT_CODES_COUNT == 24,
1197 add_tests_for_new_control_flow_you_just_introduced); 1196 add_tests_for_new_control_flow_you_just_introduced);
1198 1197
1199 } // namespace chromeos 1198 } // namespace chromeos
OLDNEW
« no previous file with comments | « chrome/browser/chromeos/login/wizard_controller.cc ('k') | chrome/chrome_browser_chromeos.gypi » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698