xref: /aosp_15_r20/external/autotest/autotest_lib/test_suites/control.gts (revision 9c5db1993ded3edbeafc8092d69fe5de2ee02df7)
1*9c5db199SXin Li# Copyright 2016 The Chromium OS Authors. All rights reserved.
2*9c5db199SXin Li# Use of this source code is governed by a BSD-style license that can be
3*9c5db199SXin Li# found in the LICENSE file.
4*9c5db199SXin Li
5*9c5db199SXin LiAUTHOR = "ARC++ Team"
6*9c5db199SXin LiNAME = "gts"
7*9c5db199SXin LiPURPOSE = "GTS tests for ARC++"
8*9c5db199SXin LiCRITERIA = "All tests with SUITE=gts must pass."
9*9c5db199SXin Li
10*9c5db199SXin LiTIME = "SHORT"
11*9c5db199SXin LiTEST_CATEGORY = "General"
12*9c5db199SXin LiTEST_CLASS = "suite"
13*9c5db199SXin LiTEST_TYPE = "Server"
14*9c5db199SXin Li
15*9c5db199SXin LiDOC = """
16*9c5db199SXin LiThis suite wraps the current GTS bundle for autotest.
17*9c5db199SXin Li"""
18*9c5db199SXin Li
19*9c5db199SXin Liimport common
20*9c5db199SXin Lifrom autotest_lib.server.cros.dynamic_suite import dynamic_suite
21*9c5db199SXin Li
22*9c5db199SXin Li
23*9c5db199SXin Lidef predicate(test):
24*9c5db199SXin Li  if not hasattr(test, 'suite') or not hasattr(test, 'name'):
25*9c5db199SXin Li    return False
26*9c5db199SXin Li  if not test.suite == NAME:
27*9c5db199SXin Li    return False
28*9c5db199SXin Li  # Strip off the cheets_GTS. from the test name before comparing to args
29*9c5db199SXin Li  name = test.name[test.name.find('.') + 1:]
30*9c5db199SXin Li  # Typical examples:
31*9c5db199SXin Li  #   name = 'arm.CtsDeqpTestCases.64'
32*9c5db199SXin Li  #     or
33*9c5db199SXin Li  #   name = 'x86.CtsDeqpTestCases.32'
34*9c5db199SXin Li  # and
35*9c5db199SXin Li  #   args_dict['tests'] = ['arm.CtsDeqpTestCases', 'x86.CtsDeqpTestCases']
36*9c5db199SXin Li  # So, we want to includes test with names being subpart of any arg.
37*9c5db199SXin Li  if 'tests' in args_dict and all(arg not in name for arg in args_dict['tests']):
38*9c5db199SXin Li    return False
39*9c5db199SXin Li  return True
40*9c5db199SXin Li
41*9c5db199SXin Liargs_dict['name'] = NAME
42*9c5db199SXin Liargs_dict['job'] = job
43*9c5db199SXin Liargs_dict['add_experimental'] = True
44*9c5db199SXin Liargs_dict['predicate'] = predicate
45*9c5db199SXin Lidynamic_suite.reimage_and_run(**args_dict)
46*9c5db199SXin Li
47