blob: 9d88fef8569c518fc91ce8e18da8f9c710449817 [file] [log] [blame]
Keith Haddow66659b22017-03-20 13:35:21 -07001# Copyright 2016 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
5AUTHOR = "ihf@chromium.org"
6NAME = "cts_N"
7PURPOSE = "Special suite for final CTS qualification of ARC++ on stable."
8CRITERIA = "All tests with SUITE=cts_N must pass."
9
10TIME = "LONG"
11TEST_CATEGORY = "General"
12TEST_CLASS = "suite"
13TEST_TYPE = "Server"
14
15DOC = """
16ChromeOS ARC++ tests.
17
18@param build: The name of the image to test.
19 Ex: x86-mario-release/R17-1412.33.0-a1-b29
20@param board: The board to test on. Ex: x86-mario
21@param pool: The pool of machines to utilize for scheduling. If pool=None
22 board is used.
23@param check_hosts: require appropriate live hosts to exist in the lab.
24@param SKIP_IMAGE: (optional) If present and True, don't re-image devices.
25"""
26
27import common
28from autotest_lib.server.cros import provision
29from autotest_lib.server.cros.dynamic_suite import dynamic_suite
30
Keith Haddow7e074d52017-05-23 11:51:52 -070031
32def predicate(test):
33 if not hasattr(test, 'suite') or not hasattr(test, 'name'):
34 return False
35 if not test.suite == NAME:
36 return False
37 # Strip off the cheets_CTS_N. from the test name before comparing to args
Allen Li5272c9e2017-08-23 18:42:05 -070038 name = test.name[test.name.find('.') + 1:]
Allen Li3c0d6cb2017-08-21 17:05:57 -070039 # TODO(crbug.com/758427): suite_args needed to support being run by old Autotest
40 try:
Allen Li905d6a32017-08-30 12:46:53 -070041 if suite_args and name not in suite_args:
Allen Li3c0d6cb2017-08-21 17:05:57 -070042 return False
43 except NameError:
44 pass
Allen Li905d6a32017-08-30 12:46:53 -070045 if 'tests' in args_dict and name not in args_dict['tests']:
46 return False
Keith Haddow7e074d52017-05-23 11:51:52 -070047 return True
48
Keith Haddow66659b22017-03-20 13:35:21 -070049args_dict['name'] = NAME
Keith Haddow66659b22017-03-20 13:35:21 -070050args_dict['job'] = job
Keith Haddow7e074d52017-05-23 11:51:52 -070051args_dict['file_bugs'] = False
Keith Haddow66659b22017-03-20 13:35:21 -070052args_dict['max_runtime_mins'] = 5040 # 5040 min = 3.5 days
53args_dict['timeout_mins'] = 5040 # Bump default 1 day to half a week as well.
54args_dict['add_experimental'] = True
55args_dict['version_prefix'] = provision.CROS_VERSION_PREFIX
Keith Haddow7e074d52017-05-23 11:51:52 -070056args_dict['predicate'] = predicate
Keith Haddow66659b22017-03-20 13:35:21 -070057dynamic_suite.reimage_and_run(**args_dict)
58