aboutsummaryrefslogtreecommitdiff
path: root/client/site_tests/enterprise_PowerManagement/enterprise_PowerManagement.py
diff options
context:
space:
mode:
Diffstat (limited to 'client/site_tests/enterprise_PowerManagement/enterprise_PowerManagement.py')
-rw-r--r--client/site_tests/enterprise_PowerManagement/enterprise_PowerManagement.py150
1 files changed, 0 insertions, 150 deletions
diff --git a/client/site_tests/enterprise_PowerManagement/enterprise_PowerManagement.py b/client/site_tests/enterprise_PowerManagement/enterprise_PowerManagement.py
deleted file mode 100644
index c1ad03642f..0000000000
--- a/client/site_tests/enterprise_PowerManagement/enterprise_PowerManagement.py
+++ /dev/null
@@ -1,150 +0,0 @@
-# Copyright 2014 The Chromium OS Authors. All rights reserved.
-# Use of this source code is governed by a BSD-style license that can be
-# found in the LICENSE file.
-
-import json
-import logging
-
-from autotest_lib.client.bin import test
-from autotest_lib.client.bin import utils
-from autotest_lib.client.common_lib import error
-from autotest_lib.client.common_lib.cros import chrome
-from autotest_lib.client.common_lib.cros import policy
-from autotest_lib.client.cros import cryptohome
-from autotest_lib.client.cros.enterprise import enterprise_fake_dmserver
-from autotest_lib.client.cros.power import power_status
-
-
-class enterprise_PowerManagement(test.test):
- """Verify the power management policy setting."""
- version = 1
-
- def initialize(self, percent_initial_charge_min=10):
- """
- Setup local variables and init the fake DM server
-
- @param percent_initial_charge_min: Minimum percentage of battery
- required for the test to run.
-
- """
- # Username and password for the fake dm server can be anything
- # they are not used to authenticate against GAIA.
- self.username = 'fake-user@managedchrome.com'
- self.password = 'fakepassword'
-
- self._power_status = power_status.get_status()
- if not self._power_status.on_ac():
- # Ensure that the battery has some charge.
- self._power_status.assert_battery_state(percent_initial_charge_min)
- logging.info("Device power type is %s", self._power_type)
-
- # Note: FakeDMServer requires policy protos to be installed.
- policy.install_protobufs(self.autodir, self.job)
- self.fake_dm_server = enterprise_fake_dmserver.FakeDMServer()
- self.fake_dm_server.start(self.tmpdir, self.debugdir)
-
- def cleanup(self):
- """Close out anything used by this test."""
- self.fake_dm_server.stop()
-
- @property
- def _power_type(self):
- """
- Returns appropriate power type based on whether DUT is on AC or not.
-
- @returns string of power type.
-
- """
- if self._power_status.on_ac():
- return "AC"
-
- return "Battery"
-
- def _setup_lock_policy(self):
- """Setup policy to lock screen in 10 seconds of idle time."""
- self._screen_lock_delay = 10
- screen_lock_policy = '{ "%s": %d }' % (self._power_type,
- self._screen_lock_delay * 1000)
- policy_blob = """{
- "google/chromeos/user": {
- "mandatory": {
- "ScreenLockDelays": %s
- }
- },
- "managed_users": [ "*" ],
- "policy_user": "%s",
- "current_key_index": 0,
- "invalidation_source": 16,
- "invalidation_name": "test_policy"
- }""" % (json.dumps(screen_lock_policy), self.username)
-
- self.fake_dm_server.setup_policy(policy_blob)
-
- def _setup_logout_policy(self):
- """Setup policy to logout in 10 seconds of idle time."""
- self._screen_logout_delay = 10
- idle_settings_policy = '''{
- "%s": {
- "Delays": {
- "ScreenDim": 2000,
- "ScreenOff": 3000,
- "IdleWarning": 4000,
- "Idle": %d
- },
- "IdleAction": "Logout"
- }
- }''' % (self._power_type, self._screen_logout_delay * 1000)
-
- policy_blob = """{
- "google/chromeos/user": {
- "mandatory": {
- "PowerManagementIdleSettings": %s
- }
- },
- "managed_users": [ "*" ],
- "policy_user": "%s",
- "current_key_index": 0,
- "invalidation_source": 16,
- "invalidation_name": "test_policy"
- }""" % (json.dumps(idle_settings_policy), self.username)
-
- self.fake_dm_server.setup_policy(policy_blob)
-
- def _create_chrome(self):
- """
- Create an instance of chrome.
-
- @returns a telemetry browser instance.
-
- """
- extra_browser_args = '--device-management-url=%s ' % (
- self.fake_dm_server.server_url)
- return chrome.Chrome(
- extra_browser_args=extra_browser_args,
- autotest_ext=True,
- disable_gaia_services=False,
- gaia_login=False,
- username=self.username,
- password=self.password,
- expect_policy_fetch=True)
-
- def run_once(self):
- """Run the power management policy tests."""
- self._setup_lock_policy()
- with self._create_chrome() as cr:
- utils.poll_for_condition(
- lambda: cr.login_status['isScreenLocked'],
- exception=error.TestFail('User is not locked'),
- timeout=self._screen_lock_delay * 2,
- sleep_interval=1,
- desc='Expects to find Chrome locked.')
-
- self._setup_logout_policy()
- with self._create_chrome() as cr:
- utils.poll_for_condition(
- lambda: not cryptohome.is_vault_mounted(user=self.username,
- allow_fail=True),
- exception=error.TestFail('User is not logged out'),
- timeout=self._screen_logout_delay*2,
- sleep_interval=1,
- desc='Expects to find user logged out.')