• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright (c) 2012 The Chromium OS Authors. All rights reserved.
2# Use of this source code is governed by a BSD-style license that can be
3# found in the LICENSE file.
4
5from autotest_lib.server import utils
6
7AUTHOR = "Chrome OS Team"
8NAME = "firmware_DevScreenTimeout"
9PURPOSE = "Servo based developer firmware screen timeout test"
10CRITERIA = "This test will fail if the timeout period does not match our spec."
11ATTRIBUTES = "suite:faft, suite:faft_bios, suite:faft_bios_au_1, suite:faft_bios_au_2, suite:faft_bios_au_3, suite:faft_dev, suite:faft_lv4, suite:faft_bios_ec3po, suite:faft_bios_tot"
12TIME = "SHORT"
13TEST_CATEGORY = "Functional"
14TEST_CLASS = "firmware"
15TEST_TYPE = "server"
16JOB_RETRIES = 4
17
18DOC = """
19When booting in developer mode, the firmware shows a screen to warn user
20the disk image is not secured. If a user press Ctrl-D or a timeout reaches,
21it will boot to developer mode. This test is to verify the timeout period.
22
23This test tries to boot the system in developer mode twice.
24The first one will repeatly press Ctrl-D on booting in order to reduce
25the time on developer warning screen. The second one will do nothing and
26wait the developer screen timeout. The time difference of these two boots
27is close to the developer screen timeout.
28"""
29
30args_dict = utils.args_to_dict(args)
31servo_args = hosts.CrosHost.get_servo_arguments(args_dict)
32
33def run_devscreentimeout(machine):
34    host = hosts.create_host(machine, servo_args=servo_args)
35    job.run_test("firmware_DevScreenTimeout", host=host, cmdline_args=args,
36                 disable_sysinfo=True, dev_mode=True, tag="dev")
37
38parallel_simple(run_devscreentimeout, machines)
39