1# Copyright 2014 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_LidCloseOpen.extended_unplugged_combined"
9PURPOSE = "Remotely controlled close and open lid test."
10CRITERIA = "This test will fail if checks mentioned below fail."
11#ATTRIBUTES = ""
12#SUITE = ""
13TIME = "LONG"
14TEST_CATEGORY = "Functional"
15TEST_CLASS = "display"
16TEST_TYPE = "server"
17DEPENDENCIES = 'chameleon,servo'
18
19DOC = """
20This test remotely emulates external display lid close/open scenario.
21This test will fail if DUT doesn't
22 - go to docked mode
23 - return to the original mode
24 - suspend after unplug in docked mode
25 - resume after open
26 - pass image test
27"""
28
29args_dict = utils.args_to_dict(args)
30chameleon_args = hosts.CrosHost.get_chameleon_arguments(args_dict)
31servo_args = hosts.CrosHost.get_servo_arguments(args_dict)
32
33# Plugged status (before_close, after_close, before_open)
34plug_status=[(True, False, False),
35             (True, False, True),
36             (False, True, True),
37             (False, True, False)]
38
39def run(machine):
40    host = hosts.create_host(machine, chameleon_args=chameleon_args,
41                             servo_args=servo_args)
42    job.run_test("display_LidCloseOpen", host=host, plug_status=plug_status,
43                 tag="extended_unplugged_combined")
44
45parallel_simple(run, machines)
46