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