| Index: chrome/browser/chromeos/login/screens/network_screen_browsertest.cc
|
| diff --git a/chrome/browser/chromeos/login/screens/network_screen_browsertest.cc b/chrome/browser/chromeos/login/screens/network_screen_browsertest.cc
|
| index 3337dee077b0bfb6d908f71d2c30787508113dc1..b89fca9982459f68ee378c22ac53a36790d40e79 100644
|
| --- a/chrome/browser/chromeos/login/screens/network_screen_browsertest.cc
|
| +++ b/chrome/browser/chromeos/login/screens/network_screen_browsertest.cc
|
| @@ -8,9 +8,9 @@
|
|
|
| #include "base/command_line.h"
|
| #include "base/macros.h"
|
| -#include "base/strings/utf_string_conversions.h"
|
| #include "chrome/browser/chromeos/login/enrollment/enrollment_screen.h"
|
| #include "chrome/browser/chromeos/login/helper.h"
|
| +#include "chrome/browser/chromeos/login/mock_network_state_helper.h"
|
| #include "chrome/browser/chromeos/login/screens/base_screen.h"
|
| #include "chrome/browser/chromeos/login/screens/mock_base_screen_delegate.h"
|
| #include "chrome/browser/chromeos/login/test/oobe_screen_waiter.h"
|
| @@ -41,17 +41,6 @@ class DummyButtonListener : public views::ButtonListener {
|
| void ButtonPressed(views::Button* sender, const ui::Event& event) override {}
|
| };
|
|
|
| -namespace login {
|
| -
|
| -class MockNetworkStateHelper : public NetworkStateHelper {
|
| - public:
|
| - MOCK_CONST_METHOD0(GetCurrentNetworkName, base::string16(void));
|
| - MOCK_CONST_METHOD0(IsConnected, bool(void));
|
| - MOCK_CONST_METHOD0(IsConnecting, bool(void));
|
| -};
|
| -
|
| -} // namespace login
|
| -
|
| class NetworkScreenTest : public WizardInProcessBrowserTest {
|
| public:
|
| NetworkScreenTest()
|
| @@ -157,124 +146,4 @@ IN_PROC_BROWSER_TEST_F(NetworkScreenTest, Timeout) {
|
| // view_->ClearErrors();
|
| }
|
|
|
| -class HandsOffNetworkScreenTest : public NetworkScreenTest {
|
| - public:
|
| - HandsOffNetworkScreenTest() {}
|
| -
|
| - protected:
|
| - void SetUpOnMainThread() override {
|
| - NetworkScreenTest::SetUpOnMainThread();
|
| -
|
| - // Set up fake networks.
|
| - DBusThreadManager::Get()
|
| - ->GetShillManagerClient()
|
| - ->GetTestInterface()
|
| - ->SetupDefaultEnvironment();
|
| - }
|
| -
|
| - private:
|
| - // Overridden from InProcessBrowserTest:
|
| - void SetUpCommandLine(base::CommandLine* command_line) override {
|
| - command_line->AppendSwitchASCII(
|
| - switches::kEnterpriseEnableZeroTouchEnrollment, "hands-off");
|
| - }
|
| -
|
| - DISALLOW_COPY_AND_ASSIGN(HandsOffNetworkScreenTest);
|
| -};
|
| -
|
| -#if defined(OS_CHROMEOS)
|
| -// Flaky on ChromeOS. See https://crbug.com/674782.
|
| -#define MAYBE_RequiresNoInput DISABLED_RequiresNoInput
|
| -#else
|
| -#define MAYBE_RequiresNoInput RequiresNoInput
|
| -#endif
|
| -IN_PROC_BROWSER_TEST_F(HandsOffNetworkScreenTest, MAYBE_RequiresNoInput) {
|
| - WizardController* wizard_controller = WizardController::default_controller();
|
| -
|
| - // Allow the WizardController to advance throught the enrollment flow.
|
| - network_screen_->base_screen_delegate_ = wizard_controller;
|
| -
|
| - // Simulate a network connection.
|
| - EXPECT_CALL(*mock_network_state_helper_, IsConnected())
|
| - .Times(AnyNumber())
|
| - .WillRepeatedly((Return(true)));
|
| - network_screen_->UpdateStatus();
|
| -
|
| - // Check if NetworkScreen::OnContinueButtonPressed() is called
|
| - // Note that checking network_screen_->continue_pressed_ is not
|
| - // sufficient since there are cases where OnContinueButtonPressed()
|
| - // is called but where this variable is not set to true.
|
| - ASSERT_TRUE((!network_screen_->is_network_subscribed_) &&
|
| - network_screen_->network_state_helper_->IsConnected());
|
| -
|
| - // Check that we reach the enrollment screen.
|
| - OobeScreenWaiter(OobeScreen::SCREEN_OOBE_ENROLLMENT).Wait();
|
| -
|
| - // Check that attestation-based enrollment finishes
|
| - // with either success or error.
|
| - bool done = false;
|
| - ASSERT_TRUE(content::ExecuteScriptAndExtractBool(
|
| - LoginDisplayHost::default_host()->GetOobeUI()->web_ui()->GetWebContents(),
|
| - "var count = 0;"
|
| - "function isVisible(el) {"
|
| - " return window.getComputedStyle(document.getElementById(el)).display"
|
| - " !== 'none';"
|
| - "}"
|
| - "function SendReplyIfEnrollmentDone() {"
|
| - " if (isVisible('oauth-enroll-step-abe-success') ||"
|
| - " isVisible('oauth-enroll-step-error')) {"
|
| - " domAutomationController.send(true);"
|
| - " } else if (count > 10) {"
|
| - " domAutomationController.send(false);"
|
| - " } else {"
|
| - " count++;"
|
| - " setTimeout(SendReplyIfEnrollmentDone, 1000);"
|
| - " }"
|
| - "}"
|
| - "SendReplyIfEnrollmentDone();",
|
| - &done));
|
| -
|
| - // Reset the enrollment helper so there is no side effect with other tests.
|
| - static_cast<EnrollmentScreen*>(wizard_controller->current_screen())
|
| - ->enrollment_helper_.reset();
|
| -}
|
| -
|
| -IN_PROC_BROWSER_TEST_F(HandsOffNetworkScreenTest, ContinueClickedOnlyOnce) {
|
| - WizardController* wizard_controller = WizardController::default_controller();
|
| -
|
| - // Allow the WizardController to advance through the enrollment flow.
|
| - network_screen_->base_screen_delegate_ = wizard_controller;
|
| -
|
| - // Check that OnContinueButtonPressed has not been called yet.
|
| - ASSERT_EQ(0, network_screen_->continue_attempts_);
|
| -
|
| - // Connect to network "net0".
|
| - EXPECT_CALL(*mock_network_state_helper_, GetCurrentNetworkName())
|
| - .Times(AnyNumber())
|
| - .WillRepeatedly(Return(base::ASCIIToUTF16("net0")));
|
| - EXPECT_CALL(*mock_network_state_helper_, IsConnected())
|
| - .Times(AnyNumber())
|
| - .WillRepeatedly(Return(true));
|
| -
|
| - // Stop waiting for net0.
|
| - network_screen_->StopWaitingForConnection(base::ASCIIToUTF16("net0"));
|
| -
|
| - // Check that OnContinueButtonPressed has been called exactly once.
|
| - ASSERT_EQ(1, network_screen_->continue_attempts_);
|
| -
|
| - // Stop waiting for another network, net1.
|
| - network_screen_->StopWaitingForConnection(base::ASCIIToUTF16("net1"));
|
| -
|
| - // Check that OnContinueButtonPressed stil has been called exactly once
|
| - ASSERT_EQ(1, network_screen_->continue_attempts_);
|
| -
|
| - // Wait for the enrollment screen.
|
| - OobeScreenWaiter(OobeScreen::SCREEN_OOBE_ENROLLMENT)
|
| - .WaitNoAssertCurrentScreen();
|
| -
|
| - // Reset the enrollment helper so there is no side effect with other tests.
|
| - static_cast<EnrollmentScreen*>(wizard_controller->current_screen())
|
| - ->enrollment_helper_.reset();
|
| -}
|
| -
|
| } // namespace chromeos
|
|
|