blob: efd48580145c7a3d30fe2d12cddb252eed22bafc [file] [log] [blame]
# Copyright 2019 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.
from autotest_lib.client.common_lib import error
from autotest_lib.client.cros.enterprise import enterprise_policy_base
from autotest_lib.client.common_lib import utils
KIOSK_MODE = 'Starting kiosk mode...'
class policy_KioskModeEnabled(
enterprise_policy_base.EnterprisePolicyTest):
"""Test for verifying that the DUT entered kiosk mode."""
version = 1
def run_once(self):
"""Entry point of this test."""
# ID of the kiosk app to start.
kId = 'afhcomalholahplbjhnmahkoekoijban'
self.DEVICE_POLICIES = {
'DeviceLocalAccounts':[
{'account_id': kId, 'kiosk_app':{'app_id': kId}, 'type': 1}],
'DeviceLocalAccountAutoLoginId':kId
}
self.setup_case(
device_policies=self.DEVICE_POLICIES,
enroll=True,
kiosk_mode=True,
auto_login=False)
running_apps = utils.system_output(
'cat /var/log/messages | grep kiosk')
# Currently this is the best way I can think of to check if DUT entered
# kiosk mode. This isn't ideal but it's better than what we have now.
# TODO(rzakarian): Find another way to verify that kiosk mode is up.
# crbug.com/934500.
if KIOSK_MODE not in running_apps:
raise error.TestFail(
'DUT did not enter kiosk mode. and it should have.')