# Copyright 2020 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.server import utils AUTHOR = "Chrome OS Team" NAME = "servo_Verification" PURPOSE = "Ensure a dut/servo pair provide required lab functionality." ATTRIBUTES = "suite:servo_verification" TIME = "MEDIUM" TEST_CATEGORY = "Benchmark" TEST_CLASS = "platform" TEST_TYPE = "server" DOC = """ This test is a wrapper around a few functionality tests surrounding servo, servod, and basic lab functionality. As this test is designed to test the labstation serving servod itself, instead of specific DUTs functionality, it should be independent of what DUT is on the other side. This is the dut/servo implementation of this test and this test simply runs the suite: - servo_lab This test will fail if no usb stick is attached to the servo setup. .local version assumes that there is an image already installed on the USB stick This allows the test to skip download times or avoid any devserver flakiness and can be used for local image validation. Just make sure the image on the stick is actually an image for the DUT that is connected. A note on failures: - Failures might occur if the test to install test images fails to query the right devserver. This will cause platform_InstallTestImage and the subsequent test to fail as well. This is a known issue when kicking it off from a workstation for example. (crbug.com/c/953113). Sample usage: test_that servo_Verification --args "servo_host= servo_port=" """ # Workaround to make it compatible with moblab autotest UI. global args_dict try: args_dict except NameError: args_dict = utils.args_to_dict(args) servo_args = hosts.CrosHost.get_servo_arguments(args_dict) def run(machine): host = hosts.create_host(machine, servo_args=servo_args) job.run_test("servo_Verification", host=host, disable_sysinfo=True) parallel_simple(run, machines)