xref: /aosp_15_r20/external/autotest/server/site_tests/tast/control.informational-system (revision 9c5db1993ded3edbeafc8092d69fe5de2ee02df7)
1# Copyright 2018 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.client.common_lib import utils
6
7AUTHOR = 'Chromium OS team'
8NAME = 'tast.informational'
9TIME = 'MEDIUM'
10TEST_TYPE = 'Server'
11DEPENDENCIES = 'servo_state:WORKING'
12ATTRIBUTES = 'suite:bvt-tast-informational'
13MAX_RESULT_SIZE_KB = 1024 * 1024
14PY_VERSION = 3
15JOB_RETRIES = 0  # Do not retry informational tests.
16
17# tast.py uses binaries installed from autotest_server_package.tar.bz2.
18REQUIRE_SSP = True
19
20DOC = '''
21Run the Tast informational test suite.
22
23Tast is an integration-testing framework analagous to the test-running portion
24of Autotest. See https://chromium.googlesource.com/chromiumos/platform/tast/ for
25more information.
26
27This test runs non-Chrome-dependent and non-Android-dependent Tast-based
28informational tests against a remote DUT. It only reports failure if the tast
29process itself (rather than individual Tast tests) fails.
30
31Tast tests that soft-clear the TPM require encstateful to be in a reasonable
32state beforehand. This test clears the TPM and reboots the remote DUT before
33running the Tast tests, in case the encstateful encryption key is messed up
34before this test.
35
36See http://go/tast-failures for information about investigating failures.
37'''
38
39args_dict = utils.args_to_dict(args)
40assert 'servo_state:WORKING' in DEPENDENCIES
41servo_args = hosts.CrosHost.get_servo_arguments(args_dict)
42
43def run(machine):
44    job.run_test('tast',
45                 host=hosts.create_host(machine, servo_args=servo_args),
46                 test_exprs=['('
47                             '"group:mainline" && '
48                             'informational && '
49                             '!"name:crostini.*" && '
50                             '!"dep:plugin_vm" && '
51                             '!"dep:chrome" && '
52                             '!"dep:android*"'
53                             ')'],
54                 ignore_test_failures=True,
55                 max_run_sec=3*60*60,
56                 command_args=args,
57                 clear_tpm=True)
58
59parallel_simple(run, machines)
60