| Index: chrome/browser/chromeos/login/kiosk_browsertest.cc
|
| diff --git a/chrome/browser/chromeos/login/kiosk_browsertest.cc b/chrome/browser/chromeos/login/kiosk_browsertest.cc
|
| index 54516e7139b4b7d5e88588c075f5ac7efa70c268..4886f4b56e32819207260c30a4e54396a001ab77 100644
|
| --- a/chrome/browser/chromeos/login/kiosk_browsertest.cc
|
| +++ b/chrome/browser/chromeos/login/kiosk_browsertest.cc
|
| @@ -82,6 +82,16 @@ const char kTestClientId[] = "fake-client-id";
|
| const char kTestAppScope[] =
|
| "https://www.googleapis.com/auth/userinfo.profile";
|
|
|
| +// Test JS API.
|
| +const char kLaunchAppForTestNewAPI[] =
|
| + "login.AccountPickerScreen.runAppForTesting";
|
| +const char kLaunchAppForTestOldAPI[] =
|
| + "login.AppsMenuButton.runAppForTesting";
|
| +const char kCheckDiagnosticModeNewAPI[] =
|
| + "$('oobe').confirmDiagnosticMode_";
|
| +const char kCheckDiagnosticModeOldAPI[] =
|
| + "$('show-apps-button').confirmDiagnosticMode_";
|
| +
|
| // Helper function for GetConsumerKioskAutoLaunchStatusCallback.
|
| void ConsumerKioskAutoLaunchStatusCheck(
|
| KioskAppManager::ConsumerKioskAutoLaunchStatus* out_status,
|
| @@ -299,6 +309,15 @@ class KioskTest : public OobeBaseTest {
|
| return server_url.ReplaceComponents(replace_webstore_host);
|
| }
|
|
|
| + void LaunchApp(const std::string& app_id, bool diagnostic_mode) {
|
| + bool new_kiosk_ui = !CommandLine::ForCurrentProcess()->
|
| + HasSwitch(switches::kDisableNewKioskUI);
|
| + GetLoginUI()->CallJavascriptFunction(new_kiosk_ui ?
|
| + kLaunchAppForTestNewAPI : kLaunchAppForTestOldAPI,
|
| + base::StringValue(app_id),
|
| + base::FundamentalValue(diagnostic_mode));
|
| + }
|
| +
|
| void ReloadKioskApps() {
|
| KioskAppManager::Get()->AddApp(test_app_id_);
|
| }
|
| @@ -336,9 +355,7 @@ class KioskTest : public OobeBaseTest {
|
| if (!network_setup_cb.is_null())
|
| network_setup_cb.Run();
|
|
|
| - GetLoginUI()->CallJavascriptFunction(
|
| - "login.AppsMenuButton.runAppForTesting",
|
| - base::StringValue(test_app_id_));
|
| + LaunchApp(test_app_id(), false);
|
| }
|
|
|
| const extensions::Extension* GetInstalledApp() {
|
| @@ -583,21 +600,22 @@ IN_PROC_BROWSER_TEST_F(KioskTest, LaunchInDiagnosticMode) {
|
| PrepareAppLaunch();
|
| SimulateNetworkOnline();
|
|
|
| - GetLoginUI()->CallJavascriptFunction(
|
| - "login.AppsMenuButton.runAppForTesting",
|
| - base::StringValue(kTestKioskApp),
|
| - base::FundamentalValue(true));
|
| + LaunchApp(kTestKioskApp, true);
|
|
|
| content::WebContents* login_contents = GetLoginUI()->GetWebContents();
|
|
|
| - JsConditionWaiter(login_contents,
|
| - "$('show-apps-button').confirmDiagnosticMode_").Wait();
|
| + bool new_kiosk_ui = !CommandLine::ForCurrentProcess()->
|
| + HasSwitch(switches::kDisableNewKioskUI);
|
| + JsConditionWaiter(login_contents, new_kiosk_ui ?
|
| + kCheckDiagnosticModeNewAPI : kCheckDiagnosticModeOldAPI).Wait();
|
|
|
| + std::string diagnosticMode(new_kiosk_ui ?
|
| + kCheckDiagnosticModeNewAPI : kCheckDiagnosticModeOldAPI);
|
| ASSERT_TRUE(content::ExecuteScript(
|
| login_contents,
|
| "(function() {"
|
| - "var e = new Event('click');"
|
| - "$('show-apps-button').confirmDiagnosticMode_."
|
| + "var e = new Event('click');" +
|
| + diagnosticMode + "."
|
| "okButton_.dispatchEvent(e);"
|
| "})();"));
|
|
|
| @@ -611,9 +629,7 @@ IN_PROC_BROWSER_TEST_F(KioskTest, LaunchOfflineEnabledAppNoNetwork) {
|
| PrepareAppLaunch();
|
| SimulateNetworkOffline();
|
|
|
| - GetLoginUI()->CallJavascriptFunction(
|
| - "login.AppsMenuButton.runAppForTesting",
|
| - base::StringValue(test_app_id()));
|
| + LaunchApp(test_app_id(), false);
|
| WaitForAppLaunchSuccess();
|
| }
|
|
|
| @@ -630,9 +646,7 @@ IN_PROC_BROWSER_TEST_F(KioskTest, LaunchOfflineEnabledAppNoUpdate) {
|
| PrepareAppLaunch();
|
| SimulateNetworkOnline();
|
|
|
| - GetLoginUI()->CallJavascriptFunction(
|
| - "login.AppsMenuButton.runAppForTesting",
|
| - base::StringValue(test_app_id()));
|
| + LaunchApp(test_app_id(), false);
|
| WaitForAppLaunchSuccess();
|
|
|
| EXPECT_EQ("1.0.0", GetInstalledAppVersion().GetString());
|
| @@ -651,9 +665,7 @@ IN_PROC_BROWSER_TEST_F(KioskTest, LaunchOfflineEnabledAppHasUpdate) {
|
| PrepareAppLaunch();
|
| SimulateNetworkOnline();
|
|
|
| - GetLoginUI()->CallJavascriptFunction(
|
| - "login.AppsMenuButton.runAppForTesting",
|
| - base::StringValue(test_app_id()));
|
| + LaunchApp(test_app_id(), false);
|
| WaitForAppLaunchSuccess();
|
|
|
| EXPECT_EQ("2.0.0", GetInstalledAppVersion().GetString());
|
| @@ -977,9 +989,7 @@ IN_PROC_BROWSER_TEST_F(KioskEnterpriseTest, EnterpriseKioskApp) {
|
| base::Unretained(KioskAppManager::Get()),
|
| kTestEnterpriseKioskApp, &app)).Wait();
|
|
|
| - GetLoginUI()->CallJavascriptFunction(
|
| - "login.AppsMenuButton.runAppForTesting",
|
| - base::StringValue(kTestEnterpriseKioskApp));
|
| + LaunchApp(kTestEnterpriseKioskApp, false);
|
|
|
| // Wait for the Kiosk App to launch.
|
| content::WindowedNotificationObserver(
|
|
|