1# Copyright 2019 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 = "servo_LabstationVerification" 9PURPOSE = "Ensure labstation images can provide basic lab functionality." 10ATTRIBUTES = "suite:labstation_verification" 11TIME = "MEDIUM" 12TEST_CATEGORY = "Benchmark" 13TEST_CLASS = "platform" 14TEST_TYPE = "server" 15 16DOC = """ 17This test is a wrapper around servo_Verification 18 19This test makes the following assumptions: 201. There is a servo device attached to the labstation being tested. 211.1 There is a usb stick in the imaging slot on the servo device. 22 232. There is a DUT attached to the servo mentioned in 1. 24 253. The DUT is connected to the internet via ethernet through the servo. 263.1 The DUT is connected to the same subnet as the labstation. 27 284. The shared network supports IPv6 with IEEE EUI-64 (from EUI-48/mac) node 29addresses 30 314.1: There is also a way for local testing to specify dut_ip=${IP} in the args 32to skip IP inferring and use a known IP. 33 34Sample usage: 35test_that <labstation ip> servo_LabstationVerification 36 37test_that <labstation ip> servo_LabstationVerification --args="dut_ip=${DUT_IP}" 38// To skip DUT ip inferring and use a known DUT ip 39 40A fun note: 41If the labstation being tested is running an image that has already been 42qualified, this test can also be used to see whether a (new) DUT is likely 43to have lab deployment issues that are specific to the DUT as the test goes 44through a lot of the flow that deployment goes through, and also tests some 45basic features like console access and powerstate, which could trip up many 46tests or repairs. 47""" 48# Workaround to make it compatible with moblab autotest UI. 49global args_dict 50try: 51 args_dict 52except NameError: 53 args_dict = utils.args_to_dict(args) 54 55def run(machine): 56 host = hosts.create_host(machine) 57 job.run_test("servo_LabstationVerification", host=host, config=args_dict, 58 disable_sysinfo=True) 59 60parallel_simple(run, machines) 61