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 5AUTHOR = "ihf@chromium.org" 6NAME = "cts_P" 7PURPOSE = "Special suite for final CTS qualification of ARC++ on stable." 8CRITERIA = "All tests with SUITE=cts_P 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.dynamic_suite import dynamic_suite 29 30 31def predicate(test): 32 if not hasattr(test, 'suite') or not hasattr(test, 'name'): 33 return False 34 if not test.suite == NAME: 35 return False 36 # Strip off the cheets_CTS_P. from the test name before comparing to args 37 name = test.name[test.name.find('.') + 1:] 38 if 'tests' in args_dict and name not in args_dict['tests']: 39 return False 40 return True 41 42args_dict['name'] = NAME 43args_dict['job'] = job 44args_dict['file_bugs'] = False 45args_dict['max_runtime_mins'] = 10080 46args_dict['timeout_mins'] = 10080 47args_dict['add_experimental'] = True 48args_dict['predicate'] = predicate 49dynamic_suite.reimage_and_run(**args_dict) 50 51