1 # Copyright (c) 2015 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 5 from autotest_lib.server import utils 6 7 AUTHOR = "cernekee" 8 NAME = "system_ColdBoot" 9 PURPOSE = "Shut down DUT, then initiate a cold boot." 10 ATTRIBUTES = "suite:experimental" 11 SUITE = "experimental" 12 TIME = "SHORT" 13 TEST_CATEGORY = "Functional" 14 TEST_CLASS = "power" 15 TEST_TYPE = "server" 16 DEPENDENCIES = "servo" 17 DOC = """ 18 Verifies that cold boots work correctly. 19 20 This executes the following sequence: 21 - remote shutdown of DUT via Linux commands (ssh) 22 - wait for DUT to stop responding to pings 23 - simulate a power button press via servo 24 - wait for DUT to start responding to pings 25 - attempt to log into DUT 26 """ 27 28 args_dict = utils.args_to_dict(args) 29 servo_args = hosts.CrosHost.get_servo_arguments(args_dict) 30 31 def run(machine): 32 host = hosts.create_host(machine, servo_args=servo_args) 33 job.run_test("system_ColdBoot", host=host, disable_sysinfo=True) 34 35 parallel_simple(run, machines) 36