| Index: chrome/browser/chromeos/login/wizard_controller_browsertest.cc
|
| diff --git a/chrome/browser/chromeos/login/wizard_controller_browsertest.cc b/chrome/browser/chromeos/login/wizard_controller_browsertest.cc
|
| index 658a78a6965d947c9ca10b7823379c636485e5e9..3b71746928dbcf6dee190a24ac0c1e301d97be89 100644
|
| --- a/chrome/browser/chromeos/login/wizard_controller_browsertest.cc
|
| +++ b/chrome/browser/chromeos/login/wizard_controller_browsertest.cc
|
| @@ -7,6 +7,8 @@
|
| #include "base/basictypes.h"
|
| #include "base/command_line.h"
|
| #include "base/compiler_specific.h"
|
| +#include "base/json/json_file_value_serializer.h"
|
| +#include "base/path_service.h"
|
| #include "base/prefs/pref_registry_simple.h"
|
| #include "base/prefs/pref_service.h"
|
| #include "base/prefs/pref_service_factory.h"
|
| @@ -48,6 +50,7 @@
|
| #include "chrome/browser/chromeos/profiles/profile_helper.h"
|
| #include "chrome/browser/ui/webui/chromeos/login/oobe_ui.h"
|
| #include "chrome/browser/ui/webui/chromeos/login/signin_screen_handler.h"
|
| +#include "chrome/common/chrome_constants.h"
|
| #include "chrome/common/chrome_paths.h"
|
| #include "chrome/common/chrome_switches.h"
|
| #include "chrome/common/pref_names.h"
|
| @@ -965,7 +968,11 @@ IN_PROC_BROWSER_TEST_F(WizardControllerBrokenLocalStateTest,
|
| ASSERT_EQ(1, fake_session_manager_client()->start_device_wipe_call_count());
|
| }
|
|
|
| -class WizardControllerProxyAuthOnSigninTest : public WizardControllerTest {
|
| +// Boolean parameter is used to run this test for webview (true) and for
|
| +// iframe (false) GAIA sign in.
|
| +class WizardControllerProxyAuthOnSigninTest
|
| + : public WizardControllerTest,
|
| + public testing::WithParamInterface<bool> {
|
| protected:
|
| WizardControllerProxyAuthOnSigninTest()
|
| : proxy_server_(net::SpawnedTestServer::TYPE_BASIC_AUTH_PROXY,
|
| @@ -991,6 +998,32 @@ class WizardControllerProxyAuthOnSigninTest : public WizardControllerTest {
|
| proxy_server_.host_port_pair().ToString());
|
| }
|
|
|
| + bool SetUpUserDataDirectory() override {
|
| + base::FilePath user_data_dir;
|
| + CHECK(PathService::Get(chrome::DIR_USER_DATA, &user_data_dir));
|
| + base::FilePath local_state_path =
|
| + user_data_dir.Append(chrome::kLocalStateFilename);
|
| +
|
| + // Set webview disabled flag only when local state file does not exist.
|
| + // Otherwise, we break PRE tests that leave state in it.
|
| + if (!base::PathExists(local_state_path)) {
|
| + base::DictionaryValue local_state_dict;
|
| +
|
| + if (!GetParam())
|
| + local_state_dict.SetBoolean(prefs::kWebviewSigninDisabled, true);
|
| +
|
| + // TODO(paulmeyer): Re-enable webview version of this test
|
| + // (drop this condition) once http://crbug.com/452452 is fixed.
|
| + if (GetParam())
|
| + local_state_dict.SetBoolean(prefs::kWebviewSigninDisabled, true);
|
| +
|
| + CHECK(JSONFileValueSerializer(local_state_path)
|
| + .Serialize(local_state_dict));
|
| + }
|
| +
|
| + return WizardControllerTest::SetUpUserDataDirectory();
|
| + }
|
| +
|
| net::SpawnedTestServer& proxy_server() { return proxy_server_; }
|
|
|
| private:
|
| @@ -999,7 +1032,7 @@ class WizardControllerProxyAuthOnSigninTest : public WizardControllerTest {
|
| DISALLOW_COPY_AND_ASSIGN(WizardControllerProxyAuthOnSigninTest);
|
| };
|
|
|
| -IN_PROC_BROWSER_TEST_F(WizardControllerProxyAuthOnSigninTest,
|
| +IN_PROC_BROWSER_TEST_P(WizardControllerProxyAuthOnSigninTest,
|
| ProxyAuthDialogOnSigninScreen) {
|
| content::WindowedNotificationObserver auth_needed_waiter(
|
| chrome::NOTIFICATION_AUTH_NEEDED,
|
| @@ -1011,6 +1044,10 @@ IN_PROC_BROWSER_TEST_F(WizardControllerProxyAuthOnSigninTest,
|
| auth_needed_waiter.Wait();
|
| }
|
|
|
| +INSTANTIATE_TEST_CASE_P(WizardControllerProxyAuthOnSigninSuite,
|
| + WizardControllerProxyAuthOnSigninTest,
|
| + testing::Bool());
|
| +
|
| class WizardControllerKioskFlowTest : public WizardControllerFlowTest {
|
| protected:
|
| WizardControllerKioskFlowTest() {}
|
|
|