# Copyright 2018 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.

AUTHOR = 'Chromium OS team'
NAME = 'tast.mustpass-system'
TIME = 'MEDIUM'
TEST_TYPE = 'Server'
# System tests can't be broken by Android or Chrome changes, so these tests
# don't run in the PFQs.
ATTRIBUTES = 'suite:bvt-tast-cq'
MAX_RESULT_SIZE_KB = 50 * 1024

# tast.py uses binaries installed from autotest_server_package.tar.bz2.
REQUIRE_SSP = True

DOC = '''
Run the Tast must-pass system test suite.

Tast is an integration-testing framework analagous to the test-running portion
of Autotest. See https://chromium.googlesource.com/chromiumos/platform/tast/ for
more information.

This test runs non-Chrome-dependent and non-Android-dependent Tast-based tests
that are required to pass against a remote DUT. It fails if any individual Tast
tests fail.

See http://go/tast-failures for information about investigating failures.
'''

def run(machine):
    job.run_test('tast',
                 host=hosts.create_host(machine),
                 test_exprs=['(!disabled && !"group:*" && !informational && '
                             '!"dep:android" && !"dep:android_all" && '
                             '!"dep:chrome" && !"dep:chrome_login")'],
                 ignore_test_failures=False, max_run_sec=1200)

parallel_simple(run, machines)