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 5from autotest_lib.server import utils 6 7AUTHOR = "chromeos-chameleon" 8NAME = "display_HotPlugAtSuspend.mirrored_unplugged" 9PURPOSE = "Remotely controlled display hot-plug and suspend test." 10CRITERIA = "This test will fail if DUT doesn't see the display after resume." 11ATTRIBUTES = "suite:chameleon_dp, suite:chameleon_hdmi, suite:chameleon_hdmi_nightly" 12SUITE = "chameleon_dp, chameleon_hdmi, chameleon_hdmi_nightly" 13TIME = "SHORT" 14TEST_CATEGORY = "Functional" 15TEST_CLASS = "display" 16TEST_TYPE = "server" 17DEPENDENCIES = 'chameleon' 18JOB_RETRIES = 2 19 20DOC = """ 21This test remotely emulates external display hot-plug and suspend/resume. 22""" 23 24args_dict = utils.args_to_dict(args) 25chameleon_args = hosts.CrosHost.get_chameleon_arguments(args_dict) 26# Plug status before and after suspend/resume 27# [(plugged_before_suspend, plugged_after_suspend, plugged_before_resume)] 28plug_status=[(True, False, False), 29 (True, False, True), 30 (False, True, True), 31 (False, True, False)] 32 33def run(machine): 34 host = hosts.create_host(machine, chameleon_args=chameleon_args) 35 job.run_test("display_HotPlugAtSuspend", host=host, 36 plug_status=plug_status, test_mirrored=True, 37 tag="mirrored_unplugged") 38 39parallel_simple(run, machines) 40