| 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 13f35d1c7db3c7d278bef66b1c14c614f4330240..c1558cead49511d1e273de5eb167c92e2af482bb 100644
|
| --- a/chrome/browser/chromeos/login/kiosk_browsertest.cc
|
| +++ b/chrome/browser/chromeos/login/kiosk_browsertest.cc
|
| @@ -238,6 +238,7 @@ class KioskTest : public OobeBaseTest {
|
| protected:
|
| virtual void SetUp() OVERRIDE {
|
| test_app_id_ = kTestKioskApp;
|
| + needs_background_networking_ = true;
|
| mock_user_manager_.reset(new MockUserManager);
|
| AppLaunchController::SkipSplashWaitForTesting();
|
| AppLaunchController::SetNetworkWaitForTesting(kTestNetworkTimeoutSeconds);
|
| @@ -270,12 +271,24 @@ class KioskTest : public OobeBaseTest {
|
| }
|
|
|
| void ReloadKioskApps() {
|
| + SetupTestAppUpdateCheck();
|
| +
|
| // Remove then add to ensure NOTIFICATION_KIOSK_APPS_LOADED fires.
|
| KioskAppManager::Get()->RemoveApp(test_app_id_);
|
| KioskAppManager::Get()->AddApp(test_app_id_);
|
| }
|
|
|
| + void SetupTestAppUpdateCheck() {
|
| + if (!test_app_version().empty())
|
| + fake_cws_->SetUpdateCrx(
|
| + test_app_id(), test_crx_file(), test_app_version());
|
| + }
|
| +
|
| void ReloadAutolaunchKioskApps() {
|
| + set_test_app_version("1.0.0");
|
| + set_test_crx_file(test_app_id() + ".crx");
|
| + SetupTestAppUpdateCheck();
|
| +
|
| KioskAppManager::Get()->AddApp(test_app_id_);
|
| KioskAppManager::Get()->SetAutoLaunchApp(test_app_id_);
|
| }
|
| @@ -457,6 +470,8 @@ class KioskTest : public OobeBaseTest {
|
| ScopedCanConfigureNetwork can_configure_network(true, true);
|
|
|
| // Start app launch and wait for network connectivity timeout.
|
| + set_test_app_version("1.0.0");
|
| + set_test_crx_file(test_app_id() + ".crx");
|
| StartAppLaunchFromLoginScreen(SimulateNetworkOfflineClosure());
|
| OobeScreenWaiter splash_waiter(OobeDisplay::SCREEN_APP_LAUNCH_SPLASH);
|
| splash_waiter.Wait();
|
| @@ -503,10 +518,20 @@ class KioskTest : public OobeBaseTest {
|
| test_app_id_ = test_app_id;
|
| }
|
| const std::string& test_app_id() const { return test_app_id_; }
|
| + void set_test_app_version(const std::string& version) {
|
| + test_app_version_ = version;
|
| + }
|
| + const std::string& test_app_version() const { return test_app_version_; }
|
| + void set_test_crx_file(const std::string& filename) {
|
| + test_crx_file_ = filename;
|
| + }
|
| + const std::string& test_crx_file() const { return test_crx_file_; }
|
| FakeCWS* fake_cws() { return fake_cws_.get(); }
|
|
|
| private:
|
| std::string test_app_id_;
|
| + std::string test_app_version_;
|
| + std::string test_crx_file_;
|
| scoped_ptr<FakeCWS> fake_cws_;
|
| scoped_ptr<MockUserManager> mock_user_manager_;
|
|
|
| @@ -514,6 +539,8 @@ class KioskTest : public OobeBaseTest {
|
| };
|
|
|
| IN_PROC_BROWSER_TEST_F(KioskTest, InstallAndLaunchApp) {
|
| + set_test_app_version("1.0.0");
|
| + set_test_crx_file(test_app_id() + ".crx");
|
| StartAppLaunchFromLoginScreen(SimulateNetworkOnlineClosure());
|
| WaitForAppLaunchSuccess();
|
| }
|
| @@ -521,6 +548,8 @@ IN_PROC_BROWSER_TEST_F(KioskTest, InstallAndLaunchApp) {
|
| IN_PROC_BROWSER_TEST_F(KioskTest, NotSignedInWithGAIAAccount) {
|
| // Tests that the kiosk session is not considered to be logged in with a GAIA
|
| // account.
|
| + set_test_app_version("1.0.0");
|
| + set_test_crx_file(test_app_id() + ".crx");
|
| StartAppLaunchFromLoginScreen(SimulateNetworkOnlineClosure());
|
| WaitForAppLaunchSuccess();
|
|
|
| @@ -579,6 +608,8 @@ IN_PROC_BROWSER_TEST_F(KioskTest, LaunchAppNetworkDownConfigureNotAllowed) {
|
| ScopedCanConfigureNetwork can_configure_network(false, true);
|
|
|
| // Start app launch and wait for network connectivity timeout.
|
| + set_test_app_version("1.0.0");
|
| + set_test_crx_file(test_app_id() + ".crx");
|
| StartAppLaunchFromLoginScreen(SimulateNetworkOfflineClosure());
|
| OobeScreenWaiter splash_waiter(OobeDisplay::SCREEN_APP_LAUNCH_SPLASH);
|
| splash_waiter.Wait();
|
| @@ -630,6 +661,8 @@ IN_PROC_BROWSER_TEST_F(KioskTest, LaunchAppUserCancel) {
|
| }
|
|
|
| IN_PROC_BROWSER_TEST_F(KioskTest, LaunchInDiagnosticMode) {
|
| + set_test_app_version("1.0.0");
|
| + set_test_crx_file(test_app_id() + ".crx");
|
| PrepareAppLaunch();
|
| SimulateNetworkOnline();
|
|
|
| @@ -878,9 +911,6 @@ class KioskUpdateTest : public KioskTest,
|
|
|
| protected:
|
| virtual void SetUpCommandLine(CommandLine* command_line) OVERRIDE {
|
| - // Needs background networking so that ExtensionDownloader works.
|
| - needs_background_networking_ = true;
|
| -
|
| KioskTest::SetUpCommandLine(command_line);
|
| if (GetParam())
|
| command_line->AppendSwitch(::switches::kMultiProfiles);
|
| @@ -897,6 +927,8 @@ class KioskUpdateTest : public KioskTest,
|
|
|
| IN_PROC_BROWSER_TEST_P(KioskUpdateTest, LaunchOfflineEnabledAppNoNetwork) {
|
| set_test_app_id(kTestOfflineEnabledKioskApp);
|
| + set_test_app_version("1.0.0");
|
| + set_test_crx_file(test_app_id() + ".crx");
|
|
|
| PrepareAppLaunch();
|
| SimulateNetworkOffline();
|
| @@ -923,10 +955,8 @@ IN_PROC_BROWSER_TEST_P(KioskUpdateTest, LaunchOfflineEnabledAppNoUpdate) {
|
|
|
| IN_PROC_BROWSER_TEST_P(KioskUpdateTest, LaunchOfflineEnabledAppHasUpdate) {
|
| set_test_app_id(kTestOfflineEnabledKioskApp);
|
| -
|
| - fake_cws()->SetUpdateCrx(
|
| - test_app_id(), "ajoggoflpgplnnjkjamcmbepjdjdnpdp.crx", "2.0.0");
|
| -
|
| + set_test_app_version("2.0.0");
|
| + set_test_crx_file(test_app_id() + ".crx");
|
| PrepareAppLaunch();
|
| SimulateNetworkOnline();
|
| SetupAppProfile("chromeos/app_mode/offline_enabled_app_profile");
|
| @@ -939,12 +969,8 @@ IN_PROC_BROWSER_TEST_P(KioskUpdateTest, LaunchOfflineEnabledAppHasUpdate) {
|
|
|
| IN_PROC_BROWSER_TEST_P(KioskUpdateTest, PermissionChange) {
|
| set_test_app_id(kTestOfflineEnabledKioskApp);
|
| -
|
| - fake_cws()->SetUpdateCrx(
|
| - test_app_id(),
|
| - "ajoggoflpgplnnjkjamcmbepjdjdnpdp_v2_permission_change.crx",
|
| - "2.0.0");
|
| -
|
| + set_test_app_version("2.0.0");
|
| + set_test_crx_file(test_app_id() + "_v2_permission_change.crx");
|
| PrepareAppLaunch();
|
| SimulateNetworkOnline();
|
| SetupAppProfile("chromeos/app_mode/offline_enabled_app_profile");
|
| @@ -958,6 +984,8 @@ IN_PROC_BROWSER_TEST_P(KioskUpdateTest, PermissionChange) {
|
| IN_PROC_BROWSER_TEST_P(KioskUpdateTest, PRE_PreserveLocalData) {
|
| // Installs v1 app and writes some local data.
|
| set_test_app_id(kTestLocalFsKioskApp);
|
| + set_test_app_version("1.0.0");
|
| + set_test_crx_file(test_app_id() + ".crx");
|
|
|
| ResultCatcher catcher;
|
| StartAppLaunchFromLoginScreen(SimulateNetworkOnlineClosure());
|
| @@ -969,12 +997,8 @@ IN_PROC_BROWSER_TEST_P(KioskUpdateTest, PreserveLocalData) {
|
| // Update existing v1 app installed in PRE_PreserveLocalData to v2
|
| // that reads and verifies the local data.
|
| set_test_app_id(kTestLocalFsKioskApp);
|
| -
|
| - fake_cws()->SetUpdateCrx(
|
| - test_app_id(),
|
| - "bmbpicmpniaclbbpdkfglgipkkebnbjf_v2_read_and_verify_data.crx",
|
| - "2.0.0");
|
| -
|
| + set_test_app_version("2.0.0");
|
| + set_test_crx_file(test_app_id() + "_v2_read_and_verify_data.crx");
|
| ResultCatcher catcher;
|
| StartAppLaunchFromLoginScreen(SimulateNetworkOnlineClosure());
|
| WaitForAppLaunchSuccess();
|
| @@ -1000,6 +1024,11 @@ class KioskEnterpriseTest : public KioskTest {
|
| }
|
|
|
| virtual void SetUpOnMainThread() OVERRIDE {
|
| + set_test_app_id(kTestEnterpriseKioskApp);
|
| + set_test_app_version("1.0.0");
|
| + set_test_crx_file(test_app_id() + ".crx");
|
| + SetupTestAppUpdateCheck();
|
| +
|
| KioskTest::SetUpOnMainThread();
|
| // Configure kTestEnterpriseKioskApp in device policy.
|
| em::DeviceLocalAccountsProto* accounts =
|
|
|