660 lines
26 KiB
Python
Executable File
660 lines
26 KiB
Python
Executable File
#!/usr/bin/env python2
|
|
# Copyright 2016 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.
|
|
|
|
import collections
|
|
|
|
|
|
CONFIG = {}
|
|
|
|
CONFIG['TEST_NAME'] = 'cheets_CTS_P'
|
|
CONFIG['DOC_TITLE'] = 'Android Compatibility Test Suite (CTS)'
|
|
CONFIG['MOBLAB_SUITE_NAME'] = 'suite:cts_P, suite:cts'
|
|
CONFIG['COPYRIGHT_YEAR'] = 2018
|
|
CONFIG['AUTHKEY'] = ''
|
|
|
|
# Both arm, x86 tests results normally is below 200MB.
|
|
# 1000MB should be sufficient for CTS tests and dump logs for android-cts.
|
|
CONFIG['LARGE_MAX_RESULT_SIZE'] = 1000 * 1024
|
|
|
|
# Individual module normal produces less results than all modules, which is
|
|
# ranging from 4MB to 50MB. 500MB should be sufficient to handle all the cases.
|
|
CONFIG['NORMAL_MAX_RESULT_SIZE'] = 500 * 1024
|
|
|
|
CONFIG['TRADEFED_CTS_COMMAND'] = 'cts'
|
|
CONFIG['TRADEFED_RETRY_COMMAND'] = 'retry'
|
|
CONFIG['TRADEFED_DISABLE_REBOOT'] = False
|
|
CONFIG['TRADEFED_DISABLE_REBOOT_ON_COLLECTION'] = True
|
|
CONFIG['TRADEFED_MAY_SKIP_DEVICE_INFO'] = False
|
|
CONFIG['TRADEFED_EXECUTABLE_PATH'] = 'android-cts/tools/cts-tradefed'
|
|
CONFIG['TRADEFED_IGNORE_BUSINESS_LOGIC_FAILURE'] = False
|
|
|
|
# module runs in suite:arc-cts on boards, and each module runs in
|
|
# suite:arc-cts-unibuild on selected models.
|
|
CONFIG['INTERNAL_SUITE_NAMES'] = ['suite:arc-cts', 'suite:arc-cts-unibuild']
|
|
CONFIG['QUAL_SUITE_NAMES'] = ['suite:arc-cts-qual']
|
|
|
|
CONFIG['CONTROLFILE_TEST_FUNCTION_NAME'] = 'run_TS'
|
|
CONFIG['CONTROLFILE_WRITE_SIMPLE_QUAL_AND_REGRESS'] = False
|
|
CONFIG['CONTROLFILE_WRITE_CAMERA'] = True
|
|
CONFIG['CONTROLFILE_WRITE_EXTRA'] = True
|
|
|
|
# The dashboard suppresses upload to APFE for GS directories (based on autotest
|
|
# tag) that contain 'tradefed-run-collect-tests'. b/119640440
|
|
# Do not change the name/tag without adjusting the dashboard.
|
|
_COLLECT = 'tradefed-run-collect-tests-only-internal'
|
|
_PUBLIC_COLLECT = 'tradefed-run-collect-tests-only'
|
|
|
|
# Test module name for WM presubmit tests.
|
|
_WM_PRESUBMIT = 'wm-presubmit'
|
|
|
|
CONFIG['LAB_DEPENDENCY'] = {
|
|
'x86': ['cts_abi_x86']
|
|
}
|
|
|
|
CONFIG['CTS_JOB_RETRIES_IN_PUBLIC'] = 1
|
|
CONFIG['CTS_QUAL_RETRIES'] = 9
|
|
CONFIG['CTS_MAX_RETRIES'] = {
|
|
'CtsDeqpTestCases': 15, # TODO(b/126787654)
|
|
'CtsGraphicsTestCases': 5, # TODO(b/155056869)
|
|
'CtsSensorTestCases': 30, # TODO(b/124528412)
|
|
}
|
|
|
|
# Timeout in hours.
|
|
CONFIG['CTS_TIMEOUT_DEFAULT'] = 1.0
|
|
CONFIG['CTS_TIMEOUT'] = {
|
|
'CtsActivityManagerDeviceTestCases': 2.0,
|
|
'CtsAppSecurityHostTestCases': 4.0, # TODO(b/172409836)
|
|
'CtsAutoFillServiceTestCases': 6.0, # TODO(b/145092442)
|
|
'CtsCameraTestCases': 2.0, # TODO(b/150657700)
|
|
'CtsDeqpTestCases': 20.0,
|
|
'CtsDeqpTestCases.dEQP-EGL': 2.0,
|
|
'CtsDeqpTestCases.dEQP-GLES2': 2.0,
|
|
'CtsDeqpTestCases.dEQP-GLES3': 6.0,
|
|
'CtsDeqpTestCases.dEQP-GLES31': 6.0,
|
|
'CtsDeqpTestCases.dEQP-VK': 15.0,
|
|
'CtsFileSystemTestCases': 3.0,
|
|
'CtsIcuTestCases': 2.0,
|
|
'CtsLibcoreOjTestCases': 2.0,
|
|
'CtsMediaStressTestCases': 5.0,
|
|
'CtsMediaTestCases': 10.0,
|
|
'CtsPrintTestCases': 1.5,
|
|
'CtsSecurityTestCases': 2.0,
|
|
'CtsVideoTestCases': 1.5,
|
|
_COLLECT: 2.5,
|
|
_PUBLIC_COLLECT: 2.5,
|
|
_WM_PRESUBMIT: 0.2,
|
|
}
|
|
|
|
# Any test that runs as part as blocking BVT needs to be stable and fast. For
|
|
# this reason we enforce a tight timeout on these modules/jobs.
|
|
# Timeout in hours. (0.2h = 12 minutes)
|
|
#
|
|
# For the test content 5 minutes are more than enough, but when some component
|
|
# (typically camera) is stuck, the CTS precondition step hits 5 minute abort.
|
|
# Since this abort doesn't affect too much for the main CTS runs (with longer
|
|
# timeouts), it's ok to let them go in. Bad state of camre should be caught by
|
|
# camera tests, not by this general test harness health check for CTS.
|
|
CONFIG['BVT_TIMEOUT'] = 0.2
|
|
|
|
CONFIG['QUAL_BOOKMARKS'] = sorted([
|
|
'A', # A bookend to simplify partition algorithm.
|
|
'CtsAccessibilityServiceTestCases', # TODO(ihf) remove when b/121291711 fixed. This module causes problems. Put it into its own control file.
|
|
'CtsAccessibilityServiceTestCasesz',
|
|
'CtsActivityManagerDevice', # Runs long enough. (3h)
|
|
'CtsActivityManagerDevicez',
|
|
'CtsDeqpTestCases',
|
|
'CtsDeqpTestCasesz', # Put Deqp in one control file. Long enough, fairly stable.
|
|
'CtsFileSystemTestCases', # Runs long enough. (3h)
|
|
'CtsFileSystemTestCasesz',
|
|
'CtsMediaBitstreamsTestCases', # Put each Media module in its own control file. Long enough.
|
|
'CtsMediaHostTestCases',
|
|
'CtsMediaStressTestCases',
|
|
'CtsMediaTestCases',
|
|
'CtsMediaTestCasesz',
|
|
'CtsJvmti',
|
|
'CtsSecurityHostTestCases', # TODO(ihf): remove when passing cleanly.
|
|
'CtsSecurityHostTestCasesz',
|
|
'CtsSensorTestCases', # TODO(ihf): Remove when not needing 30 retries.
|
|
'CtsSensorTestCasesz',
|
|
'CtsViewTestCases', # TODO(b/126741318): Fix performance regression and remove this.
|
|
'CtsViewTestCasesz',
|
|
'zzzzz' # A bookend to simplify algorithm.
|
|
])
|
|
|
|
CONFIG['SMOKE'] = [
|
|
_WM_PRESUBMIT,
|
|
]
|
|
|
|
CONFIG['BVT_ARC'] = [
|
|
'CtsAccelerationTestCases',
|
|
]
|
|
|
|
CONFIG['BVT_PERBUILD'] = [
|
|
'CtsAccountManagerTestCases',
|
|
'CtsGraphicsTestCases',
|
|
'CtsJankDeviceTestCases',
|
|
'CtsOpenGLTestCases',
|
|
'CtsOpenGlPerf2TestCases',
|
|
'CtsPermission2TestCases',
|
|
'CtsSimpleperfTestCases',
|
|
'CtsSpeechTestCases',
|
|
'CtsTelecomTestCases',
|
|
'CtsTelephonyTestCases',
|
|
'CtsThemeDeviceTestCases',
|
|
'CtsTransitionTestCases',
|
|
'CtsTvTestCases',
|
|
'CtsUsbTests',
|
|
'CtsVoiceSettingsTestCases',
|
|
]
|
|
|
|
CONFIG['NEEDS_POWER_CYCLE'] = [
|
|
'CtsBluetoothTestCases',
|
|
]
|
|
|
|
CONFIG['HARDWARE_DEPENDENT_MODULES'] = [
|
|
'CtsSensorTestCases',
|
|
'CtsCameraTestCases',
|
|
'CtsBluetoothTestCases',
|
|
]
|
|
|
|
# The suite is divided based on the run-time hint in the *.config file.
|
|
CONFIG['VMTEST_INFO_SUITES'] = collections.OrderedDict()
|
|
# This is the default suite for all the modules that are not specified below.
|
|
CONFIG['VMTEST_INFO_SUITES']['vmtest-informational1'] = []
|
|
CONFIG['VMTEST_INFO_SUITES']['vmtest-informational2'] = [
|
|
'CtsMediaTestCases', 'CtsMediaStressTestCases', 'CtsHardwareTestCases'
|
|
]
|
|
CONFIG['VMTEST_INFO_SUITES']['vmtest-informational3'] = [
|
|
'CtsThemeHostTestCases', 'CtsHardwareTestCases', 'CtsLibcoreTestCases'
|
|
]
|
|
CONFIG['VMTEST_INFO_SUITES']['vmtest-informational4'] = ['']
|
|
|
|
# Modules that are known to download and/or push media file assets.
|
|
CONFIG['MEDIA_MODULES'] = [
|
|
'CtsMediaTestCases',
|
|
'CtsMediaStressTestCases',
|
|
'CtsMediaBitstreamsTestCases',
|
|
]
|
|
|
|
CONFIG['NEEDS_PUSH_MEDIA'] = CONFIG['MEDIA_MODULES'] + [
|
|
'CtsMediaTestCases.audio',
|
|
]
|
|
|
|
# See b/149889853. Non-media test basically does not require dynamic
|
|
# config. To reduce the flakiness, let us suppress the config.
|
|
CONFIG['NEEDS_DYNAMIC_CONFIG_ON_COLLECTION'] = False
|
|
CONFIG['NEEDS_DYNAMIC_CONFIG'] = CONFIG['MEDIA_MODULES'] + [
|
|
'CtsIntentSignatureTestCases'
|
|
]
|
|
|
|
# Modules that are known to need the default apps of Chrome (eg. Files.app).
|
|
CONFIG['ENABLE_DEFAULT_APPS'] = [
|
|
'CtsAppSecurityHostTestCases',
|
|
'CtsContentTestCases',
|
|
]
|
|
|
|
# Run `eject` for (and only for) each device with RM=1 in lsblk output.
|
|
_EJECT_REMOVABLE_DISK_COMMAND = (
|
|
"\'lsblk -do NAME,RM | sed -n s/1$//p | xargs -n1 eject\'")
|
|
# Behave more like in the verififed mode.
|
|
_SECURITY_PARANOID_COMMAND = (
|
|
"\'echo 3 > /proc/sys/kernel/perf_event_paranoid\'")
|
|
# TODO(kinaba): Come up with a less hacky way to handle the situation.
|
|
# {0} is replaced with the retry count. Writes either 1 (required by
|
|
# CtsSimpleperfTestCases) or 3 (CtsSecurityHostTestCases).
|
|
_ALTERNATING_PARANOID_COMMAND = (
|
|
"\'echo $(({0} % 2 * 2 + 1)) > /proc/sys/kernel/perf_event_paranoid\'")
|
|
# Expose /proc/config.gz
|
|
_CONFIG_MODULE_COMMAND = "\'modprobe configs\'"
|
|
|
|
# TODO(b/126741318): Fix performance regression and remove this.
|
|
_SLEEP_60_COMMAND = "\'sleep 60\'"
|
|
|
|
# Preconditions applicable to public and internal tests.
|
|
CONFIG['PRECONDITION'] = {
|
|
'CtsSecurityHostTestCases': [
|
|
_SECURITY_PARANOID_COMMAND, _CONFIG_MODULE_COMMAND
|
|
],
|
|
# Tests are performance-sensitive, workaround to avoid CPU load on login.
|
|
# TODO(b/126741318): Fix performance regression and remove this.
|
|
'CtsViewTestCases': [_SLEEP_60_COMMAND],
|
|
}
|
|
CONFIG['LOGIN_PRECONDITION'] = {
|
|
'CtsAppSecurityHostTestCases': [_EJECT_REMOVABLE_DISK_COMMAND],
|
|
'CtsJobSchedulerTestCases': [_EJECT_REMOVABLE_DISK_COMMAND],
|
|
'CtsMediaTestCases': [_EJECT_REMOVABLE_DISK_COMMAND],
|
|
'CtsOsTestCases': [_EJECT_REMOVABLE_DISK_COMMAND],
|
|
'CtsProviderTestCases': [_EJECT_REMOVABLE_DISK_COMMAND],
|
|
}
|
|
|
|
_WIFI_CONNECT_COMMANDS = [
|
|
# These needs to be in order.
|
|
"'/usr/local/autotest/cros/scripts/wifi connect %s %s\' % (ssid, wifipass)",
|
|
"'/usr/local/autotest/cros/scripts/reorder-services-moblab.sh wifi'"
|
|
]
|
|
|
|
# Preconditions applicable to public tests.
|
|
CONFIG['PUBLIC_PRECONDITION'] = {
|
|
'CtsSecurityHostTestCases': [
|
|
_SECURITY_PARANOID_COMMAND, _CONFIG_MODULE_COMMAND
|
|
],
|
|
'CtsUsageStatsTestCases': _WIFI_CONNECT_COMMANDS,
|
|
'CtsNetTestCases': _WIFI_CONNECT_COMMANDS,
|
|
'CtsLibcoreTestCases': _WIFI_CONNECT_COMMANDS,
|
|
}
|
|
|
|
CONFIG['PUBLIC_DEPENDENCIES'] = {
|
|
'CtsCameraTestCases': ['lighting'],
|
|
'CtsMediaTestCases': ['noloopback'],
|
|
}
|
|
|
|
# This information is changed based on regular analysis of the failure rate on
|
|
# partner moblabs.
|
|
CONFIG['PUBLIC_MODULE_RETRY_COUNT'] = {
|
|
'CtsAccessibilityServiceTestCases': 12,
|
|
'CtsActivityManagerDeviceTestCases': 12,
|
|
'CtsBluetoothTestCases': 10,
|
|
'CtsDeqpTestCases': 15,
|
|
'CtsFileSystemTestCases': 10,
|
|
'CtsGraphicsTestCases': 12,
|
|
'CtsIncidentHostTestCases': 12,
|
|
'CtsNetTestCases': 10,
|
|
'CtsSecurityHostTestCases': 10,
|
|
'CtsSensorTestCases': 12,
|
|
'CtsUsageStatsTestCases': 10,
|
|
_PUBLIC_COLLECT: 0,
|
|
}
|
|
|
|
CONFIG['PUBLIC_OVERRIDE_TEST_PRIORITY'] = {
|
|
_PUBLIC_COLLECT: 70,
|
|
'CtsDeqpTestCases': 70,
|
|
}
|
|
|
|
# This information is changed based on regular analysis of the job run time on
|
|
# partner moblabs.
|
|
|
|
CONFIG['OVERRIDE_TEST_LENGTH'] = {
|
|
'CtsDeqpTestCases': 4, # LONG
|
|
'CtsMediaTestCases': 4,
|
|
'CtsMediaStressTestCases': 4,
|
|
'CtsSecurityTestCases': 4,
|
|
'CtsCameraTestCases': 4,
|
|
# Even though collect tests doesn't run very long, it must be the very first
|
|
# job executed inside of the suite. Hence it is the only 'LENGTHY' test.
|
|
_COLLECT: 5, # LENGTHY
|
|
}
|
|
|
|
# Enabling --logcat-on-failure can extend total run time significantly if
|
|
# individual tests finish in the order of 10ms or less (b/118836700). Specify
|
|
# modules here to not enable the flag.
|
|
CONFIG['DISABLE_LOGCAT_ON_FAILURE'] = set([
|
|
'all',
|
|
'CtsDeqpTestCases',
|
|
'CtsDeqpTestCases.dEQP-EGL',
|
|
'CtsDeqpTestCases.dEQP-GLES2',
|
|
'CtsDeqpTestCases.dEQP-GLES3',
|
|
'CtsDeqpTestCases.dEQP-GLES31',
|
|
'CtsDeqpTestCases.dEQP-VK',
|
|
'CtsLibcoreTestCases',
|
|
])
|
|
|
|
CONFIG['EXTRA_MODULES'] = {
|
|
'CtsDeqpTestCases': {
|
|
'SUBMODULES': set([
|
|
'CtsDeqpTestCases.dEQP-EGL',
|
|
'CtsDeqpTestCases.dEQP-GLES2',
|
|
'CtsDeqpTestCases.dEQP-GLES3',
|
|
'CtsDeqpTestCases.dEQP-GLES31',
|
|
'CtsDeqpTestCases.dEQP-VK'
|
|
]),
|
|
'SUITES': ['suite:arc-cts-deqp', 'suite:graphics_per-week'],
|
|
},
|
|
'CtsMediaTestCases': {
|
|
'SUBMODULES': set([
|
|
'CtsMediaTestCases.audio',
|
|
]),
|
|
'SUITES': ['suite:arc-cts'],
|
|
},
|
|
_WM_PRESUBMIT: {
|
|
'SUBMODULES': set([_WM_PRESUBMIT]),
|
|
'SUITES': [],
|
|
},
|
|
}
|
|
|
|
# Moblab wants to shard dEQP really finely. This isn't needed anymore as it got
|
|
# faster, but I guess better safe than sorry.
|
|
CONFIG['PUBLIC_EXTRA_MODULES'] = {
|
|
'CtsDeqpTestCases' : [
|
|
'CtsDeqpTestCases.dEQP-EGL',
|
|
'CtsDeqpTestCases.dEQP-GLES2',
|
|
'CtsDeqpTestCases.dEQP-GLES3',
|
|
'CtsDeqpTestCases.dEQP-GLES31',
|
|
'CtsDeqpTestCases.dEQP-VK.api',
|
|
'CtsDeqpTestCases.dEQP-VK.binding_model',
|
|
'CtsDeqpTestCases.dEQP-VK.clipping',
|
|
'CtsDeqpTestCases.dEQP-VK.compute',
|
|
'CtsDeqpTestCases.dEQP-VK.device_group',
|
|
'CtsDeqpTestCases.dEQP-VK.draw',
|
|
'CtsDeqpTestCases.dEQP-VK.dynamic_state',
|
|
'CtsDeqpTestCases.dEQP-VK.fragment_operations',
|
|
'CtsDeqpTestCases.dEQP-VK.geometry',
|
|
'CtsDeqpTestCases.dEQP-VK.glsl',
|
|
'CtsDeqpTestCases.dEQP-VK.image',
|
|
'CtsDeqpTestCases.dEQP-VK.info',
|
|
'CtsDeqpTestCases.dEQP-VK.memory',
|
|
'CtsDeqpTestCases.dEQP-VK.multiview',
|
|
'CtsDeqpTestCases.dEQP-VK.pipeline',
|
|
'CtsDeqpTestCases.dEQP-VK.protected_memory',
|
|
'CtsDeqpTestCases.dEQP-VK.query_pool',
|
|
'CtsDeqpTestCases.dEQP-VK.rasterization',
|
|
'CtsDeqpTestCases.dEQP-VK.renderpass',
|
|
'CtsDeqpTestCases.dEQP-VK.renderpass2',
|
|
'CtsDeqpTestCases.dEQP-VK.robustness',
|
|
'CtsDeqpTestCases.dEQP-VK.sparse_resources',
|
|
'CtsDeqpTestCases.dEQP-VK.spirv_assembly',
|
|
'CtsDeqpTestCases.dEQP-VK.ssbo',
|
|
'CtsDeqpTestCases.dEQP-VK.subgroups',
|
|
'CtsDeqpTestCases.dEQP-VK.subgroups.b',
|
|
'CtsDeqpTestCases.dEQP-VK.subgroups.s',
|
|
'CtsDeqpTestCases.dEQP-VK.subgroups.vote',
|
|
'CtsDeqpTestCases.dEQP-VK.subgroups.arithmetic',
|
|
'CtsDeqpTestCases.dEQP-VK.subgroups.clustered',
|
|
'CtsDeqpTestCases.dEQP-VK.subgroups.quad',
|
|
'CtsDeqpTestCases.dEQP-VK.synchronization',
|
|
'CtsDeqpTestCases.dEQP-VK.tessellation',
|
|
'CtsDeqpTestCases.dEQP-VK.texture',
|
|
'CtsDeqpTestCases.dEQP-VK.ubo',
|
|
'CtsDeqpTestCases.dEQP-VK.wsi',
|
|
'CtsDeqpTestCases.dEQP-VK.ycbcr'
|
|
]
|
|
}
|
|
# TODO(haddowk,kinaba): Hack for b/138622686. Clean up later.
|
|
CONFIG['EXTRA_SUBMODULE_OVERRIDE'] = {
|
|
'x86': {
|
|
'CtsDeqpTestCases.dEQP-VK.subgroups.arithmetic': [
|
|
'CtsDeqpTestCases.dEQP-VK.subgroups.arithmetic.32',
|
|
'CtsDeqpTestCases.dEQP-VK.subgroups.arithmetic.64',
|
|
]
|
|
}
|
|
}
|
|
|
|
CONFIG['EXTRA_COMMANDLINE'] = {
|
|
'CtsDeqpTestCases.dEQP-EGL': [
|
|
'--include-filter', 'CtsDeqpTestCases', '--module', 'CtsDeqpTestCases',
|
|
'--test', 'dEQP-EGL.*'
|
|
],
|
|
'CtsDeqpTestCases.dEQP-GLES2': [
|
|
'--include-filter', 'CtsDeqpTestCases', '--module', 'CtsDeqpTestCases',
|
|
'--test', 'dEQP-GLES2.*'
|
|
],
|
|
'CtsDeqpTestCases.dEQP-GLES3': [
|
|
'--include-filter', 'CtsDeqpTestCases', '--module', 'CtsDeqpTestCases',
|
|
'--test', 'dEQP-GLES3.*'
|
|
],
|
|
'CtsDeqpTestCases.dEQP-GLES31': [
|
|
'--include-filter', 'CtsDeqpTestCases', '--module', 'CtsDeqpTestCases',
|
|
'--test', 'dEQP-GLES31.*'
|
|
],
|
|
'CtsDeqpTestCases.dEQP-VK': [
|
|
'--include-filter', 'CtsDeqpTestCases', '--module', 'CtsDeqpTestCases',
|
|
'--test', 'dEQP-VK.*'
|
|
],
|
|
'CtsDeqpTestCases.dEQP-VK.api': [
|
|
'--include-filter', 'CtsDeqpTestCases', '--module', 'CtsDeqpTestCases',
|
|
'--test', 'dEQP-VK.api.*'
|
|
],
|
|
'CtsDeqpTestCases.dEQP-VK.binding_model': [
|
|
'--include-filter', 'CtsDeqpTestCases', '--module', 'CtsDeqpTestCases',
|
|
'--test', 'dEQP-VK.binding_model.*'
|
|
],
|
|
'CtsDeqpTestCases.dEQP-VK.clipping': [
|
|
'--include-filter', 'CtsDeqpTestCases', '--module', 'CtsDeqpTestCases',
|
|
'--test', 'dEQP-VK.clipping.*'
|
|
],
|
|
'CtsDeqpTestCases.dEQP-VK.compute': [
|
|
'--include-filter', 'CtsDeqpTestCases', '--module', 'CtsDeqpTestCases',
|
|
'--test', 'dEQP-VK.compute.*'
|
|
],
|
|
'CtsDeqpTestCases.dEQP-VK.device_group': [
|
|
'--include-filter', 'CtsDeqpTestCases', '--module', 'CtsDeqpTestCases',
|
|
'--test', 'dEQP-VK.device_group*' # Not ending on .* like most others!
|
|
],
|
|
'CtsDeqpTestCases.dEQP-VK.draw': [
|
|
'--include-filter', 'CtsDeqpTestCases', '--module', 'CtsDeqpTestCases',
|
|
'--test', 'dEQP-VK.draw.*'
|
|
],
|
|
'CtsDeqpTestCases.dEQP-VK.dynamic_state': [
|
|
'--include-filter', 'CtsDeqpTestCases', '--module', 'CtsDeqpTestCases',
|
|
'--test', 'dEQP-VK.dynamic_state.*'
|
|
],
|
|
'CtsDeqpTestCases.dEQP-VK.fragment_operations': [
|
|
'--include-filter', 'CtsDeqpTestCases', '--module', 'CtsDeqpTestCases',
|
|
'--test', 'dEQP-VK.fragment_operations.*'
|
|
],
|
|
'CtsDeqpTestCases.dEQP-VK.geometry': [
|
|
'--include-filter', 'CtsDeqpTestCases', '--module', 'CtsDeqpTestCases',
|
|
'--test', 'dEQP-VK.geometry.*'
|
|
],
|
|
'CtsDeqpTestCases.dEQP-VK.glsl': [
|
|
'--include-filter', 'CtsDeqpTestCases', '--module', 'CtsDeqpTestCases',
|
|
'--test', 'dEQP-VK.glsl.*'
|
|
],
|
|
'CtsDeqpTestCases.dEQP-VK.image': [
|
|
'--include-filter', 'CtsDeqpTestCases', '--module', 'CtsDeqpTestCases',
|
|
'--test', 'dEQP-VK.image.*'
|
|
],
|
|
'CtsDeqpTestCases.dEQP-VK.info': [
|
|
'--include-filter', 'CtsDeqpTestCases', '--module', 'CtsDeqpTestCases',
|
|
'--test', 'dEQP-VK.info*' # Not ending on .* like most others!
|
|
],
|
|
'CtsDeqpTestCases.dEQP-VK.memory': [
|
|
'--include-filter', 'CtsDeqpTestCases', '--module', 'CtsDeqpTestCases',
|
|
'--test', 'dEQP-VK.memory.*'
|
|
],
|
|
'CtsDeqpTestCases.dEQP-VK.multiview': [
|
|
'--include-filter', 'CtsDeqpTestCases', '--module', 'CtsDeqpTestCases',
|
|
'--test', 'dEQP-VK.multiview.*'
|
|
],
|
|
'CtsDeqpTestCases.dEQP-VK.pipeline': [
|
|
'--include-filter', 'CtsDeqpTestCases', '--module', 'CtsDeqpTestCases',
|
|
'--test', 'dEQP-VK.pipeline.*'
|
|
],
|
|
'CtsDeqpTestCases.dEQP-VK.protected_memory': [
|
|
'--include-filter', 'CtsDeqpTestCases', '--module', 'CtsDeqpTestCases',
|
|
'--test', 'dEQP-VK.protected_memory.*'
|
|
],
|
|
'CtsDeqpTestCases.dEQP-VK.query_pool': [
|
|
'--include-filter', 'CtsDeqpTestCases', '--module', 'CtsDeqpTestCases',
|
|
'--test', 'dEQP-VK.query_pool.*'
|
|
],
|
|
'CtsDeqpTestCases.dEQP-VK.rasterization': [
|
|
'--include-filter', 'CtsDeqpTestCases', '--module', 'CtsDeqpTestCases',
|
|
'--test', 'dEQP-VK.rasterization.*'
|
|
],
|
|
'CtsDeqpTestCases.dEQP-VK.renderpass': [
|
|
'--include-filter', 'CtsDeqpTestCases', '--module', 'CtsDeqpTestCases',
|
|
'--test', 'dEQP-VK.renderpass.*'
|
|
],
|
|
'CtsDeqpTestCases.dEQP-VK.renderpass2': [
|
|
'--include-filter', 'CtsDeqpTestCases', '--module', 'CtsDeqpTestCases',
|
|
'--test', 'dEQP-VK.renderpass2.*'
|
|
],
|
|
'CtsDeqpTestCases.dEQP-VK.robustness': [
|
|
'--include-filter', 'CtsDeqpTestCases', '--module', 'CtsDeqpTestCases',
|
|
'--test', 'dEQP-VK.robustness.*'
|
|
],
|
|
'CtsDeqpTestCases.dEQP-VK.sparse_resources': [
|
|
'--include-filter', 'CtsDeqpTestCases', '--module', 'CtsDeqpTestCases',
|
|
'--test', 'dEQP-VK.sparse_resources.*'
|
|
],
|
|
'CtsDeqpTestCases.dEQP-VK.spirv_assembly': [
|
|
'--include-filter', 'CtsDeqpTestCases', '--module', 'CtsDeqpTestCases',
|
|
'--test', 'dEQP-VK.spirv_assembly.*'
|
|
],
|
|
'CtsDeqpTestCases.dEQP-VK.ssbo': [
|
|
'--include-filter', 'CtsDeqpTestCases', '--module', 'CtsDeqpTestCases',
|
|
'--test', 'dEQP-VK.ssbo.*'
|
|
],
|
|
'CtsDeqpTestCases.dEQP-VK.subgroups': [
|
|
'--include-filter', 'CtsDeqpTestCases', '--module', 'CtsDeqpTestCases',
|
|
'--test', 'dEQP-VK.subgroups.*'
|
|
],
|
|
# Splitting VK.subgroups to smaller pieces to workaround b/138622686.
|
|
# TODO(kinaba,haddowk): remove them once the root cause is fixed, or
|
|
# reconsider the sharding strategy.
|
|
'CtsDeqpTestCases.dEQP-VK.subgroups.b': [
|
|
'--include-filter', 'CtsDeqpTestCases', '--module', 'CtsDeqpTestCases',
|
|
'--test', 'dEQP-VK.subgroups.b*'
|
|
],
|
|
'CtsDeqpTestCases.dEQP-VK.subgroups.s': [
|
|
'--include-filter', 'CtsDeqpTestCases', '--module', 'CtsDeqpTestCases',
|
|
'--test', 'dEQP-VK.subgroups.s*'
|
|
],
|
|
'CtsDeqpTestCases.dEQP-VK.subgroups.vote': [
|
|
'--include-filter', 'CtsDeqpTestCases', '--module', 'CtsDeqpTestCases',
|
|
'--test', 'dEQP-VK.subgroups.vote#*'
|
|
],
|
|
'CtsDeqpTestCases.dEQP-VK.subgroups.arithmetic': [
|
|
'--include-filter', 'CtsDeqpTestCases', '--module', 'CtsDeqpTestCases',
|
|
'--test', 'dEQP-VK.subgroups.arithmetic#*'
|
|
],
|
|
# TODO(haddowk,kinaba): Hack for b/138622686. Clean up later.
|
|
'CtsDeqpTestCases.dEQP-VK.subgroups.arithmetic.32': [
|
|
'--include-filter', 'CtsDeqpTestCases', '--module', 'CtsDeqpTestCases',
|
|
'--test', 'dEQP-VK.subgroups.arithmetic#*', '--abi', 'x86'
|
|
],
|
|
# TODO(haddowk,kinaba): Hack for b/138622686. Clean up later.
|
|
'CtsDeqpTestCases.dEQP-VK.subgroups.arithmetic.64': [
|
|
'--include-filter', 'CtsDeqpTestCases', '--module', 'CtsDeqpTestCases',
|
|
'--test', 'dEQP-VK.subgroups.arithmetic#*', '--abi', 'x86_64'
|
|
],
|
|
'CtsDeqpTestCases.dEQP-VK.subgroups.clustered': [
|
|
'--include-filter', 'CtsDeqpTestCases', '--module', 'CtsDeqpTestCases',
|
|
'--test', 'dEQP-VK.subgroups.clustered#*'
|
|
],
|
|
'CtsDeqpTestCases.dEQP-VK.subgroups.quad': [
|
|
'--include-filter', 'CtsDeqpTestCases', '--module', 'CtsDeqpTestCases',
|
|
'--test', 'dEQP-VK.subgroups.quad#*'
|
|
],
|
|
'CtsDeqpTestCases.dEQP-VK.synchronization': [
|
|
'--include-filter', 'CtsDeqpTestCases', '--module', 'CtsDeqpTestCases',
|
|
'--test', 'dEQP-VK.synchronization.*'
|
|
],
|
|
'CtsDeqpTestCases.dEQP-VK.tessellation': [
|
|
'--include-filter', 'CtsDeqpTestCases', '--module', 'CtsDeqpTestCases',
|
|
'--test', 'dEQP-VK.tessellation.*'
|
|
],
|
|
'CtsDeqpTestCases.dEQP-VK.texture': [
|
|
'--include-filter', 'CtsDeqpTestCases', '--module', 'CtsDeqpTestCases',
|
|
'--test', 'dEQP-VK.texture.*'
|
|
],
|
|
'CtsDeqpTestCases.dEQP-VK.ubo': [
|
|
'--include-filter', 'CtsDeqpTestCases', '--module', 'CtsDeqpTestCases',
|
|
'--test', 'dEQP-VK.ubo.*'
|
|
],
|
|
'CtsDeqpTestCases.dEQP-VK.wsi': [
|
|
'--include-filter', 'CtsDeqpTestCases', '--module', 'CtsDeqpTestCases',
|
|
'--test', 'dEQP-VK.wsi.*'
|
|
],
|
|
'CtsDeqpTestCases.dEQP-VK.ycbcr': [
|
|
'--include-filter', 'CtsDeqpTestCases', '--module', 'CtsDeqpTestCases',
|
|
'--test', 'dEQP-VK.ycbcr.*'
|
|
],
|
|
'CtsMediaTestCases.audio': [
|
|
'--include-filter', 'CtsMediaTestCases android.media.cts.AudioAttributesTest',
|
|
'--include-filter', 'CtsMediaTestCases android.media.cts.AudioEffectTest',
|
|
'--include-filter', 'CtsMediaTestCases android.media.cts.AudioFocusTest',
|
|
'--include-filter', 'CtsMediaTestCases android.media.cts.AudioFormatTest',
|
|
'--include-filter', 'CtsMediaTestCases android.media.cts.AudioManagerTest',
|
|
'--include-filter', 'CtsMediaTestCases android.media.cts.AudioNativeTest',
|
|
'--include-filter', 'CtsMediaTestCases android.media.cts.AudioPlayRoutingNative',
|
|
'--include-filter', 'CtsMediaTestCases android.media.cts.AudioPlaybackConfigurationTest',
|
|
'--include-filter', 'CtsMediaTestCases android.media.cts.AudioPreProcessingTest',
|
|
'--include-filter', 'CtsMediaTestCases android.media.cts.AudioPresentationTest',
|
|
'--include-filter', 'CtsMediaTestCases android.media.cts.AudioRecordAppOpTest',
|
|
'--include-filter', 'CtsMediaTestCases android.media.cts.AudioRecordRoutingNative',
|
|
'--include-filter', 'CtsMediaTestCases android.media.cts.AudioRecordTest',
|
|
'--include-filter', 'CtsMediaTestCases android.media.cts.AudioRecord_BufferSizeTest',
|
|
'--include-filter', 'CtsMediaTestCases android.media.cts.AudioRecordingConfigurationTest',
|
|
'--include-filter', 'CtsMediaTestCases android.media.cts.AudioTrackLatencyTest',
|
|
'--include-filter', 'CtsMediaTestCases android.media.cts.AudioTrackSurroundTest',
|
|
'--include-filter', 'CtsMediaTestCases android.media.cts.AudioTrackTest',
|
|
'--include-filter', 'CtsMediaTestCases android.media.cts.AudioTrack_ListenerTest',
|
|
'--include-filter', 'CtsMediaTestCases android.media.cts.SoundPoolAacTest',
|
|
'--include-filter', 'CtsMediaTestCases android.media.cts.SoundPoolMidiTest',
|
|
'--include-filter', 'CtsMediaTestCases android.media.cts.SoundPoolOggTest',
|
|
'--include-filter', 'CtsMediaTestCases android.media.cts.VolumeShaperTest',
|
|
],
|
|
_WM_PRESUBMIT: [
|
|
'--include-filter', 'CtsActivityManagerDeviceSdk25TestCases',
|
|
'--include-filter', 'CtsActivityManagerDeviceTestCases',
|
|
'--include-filter',
|
|
'CtsAppTestCases android.app.cts.TaskDescriptionTest',
|
|
'--include-filter', 'CtsWindowManagerDeviceTestCases',
|
|
'--test-arg', (
|
|
'com.android.compatibility.common.tradefed.testtype.JarHostTest:'
|
|
'include-annotation:android.platform.test.annotations.Presubmit'
|
|
),
|
|
'--test-arg', (
|
|
'com.android.tradefed.testtype.AndroidJUnitTest:'
|
|
'include-annotation:android.platform.test.annotations.Presubmit'
|
|
),
|
|
'--test-arg', (
|
|
'com.android.tradefed.testtype.HostTest:'
|
|
'include-annotation:android.platform.test.annotations.Presubmit'
|
|
),
|
|
'--test-arg', (
|
|
'com.android.tradefed.testtype.AndroidJUnitTest:'
|
|
'exclude-annotation:androidx.test.filters.FlakyTest'
|
|
),
|
|
],
|
|
}
|
|
|
|
CONFIG['EXTRA_ATTRIBUTES'] = {
|
|
'CtsDeqpTestCases': ['suite:arc-cts', 'suite:arc-cts-deqp'],
|
|
'CtsDeqpTestCases.dEQP-EGL': [
|
|
'suite:arc-cts-deqp', 'suite:graphics_per-week'
|
|
],
|
|
'CtsDeqpTestCases.dEQP-GLES2': [
|
|
'suite:arc-cts-deqp', 'suite:graphics_per-week'
|
|
],
|
|
'CtsDeqpTestCases.dEQP-GLES3': [
|
|
'suite:arc-cts-deqp', 'suite:graphics_per-week'
|
|
],
|
|
'CtsDeqpTestCases.dEQP-GLES31': [
|
|
'suite:arc-cts-deqp', 'suite:graphics_per-week'
|
|
],
|
|
'CtsDeqpTestCases.dEQP-VK': [
|
|
'suite:arc-cts-deqp', 'suite:graphics_per-week'
|
|
],
|
|
_COLLECT: ['suite:arc-cts-qual', 'suite:arc-cts'],
|
|
}
|
|
|
|
CONFIG['EXTRA_ARTIFACTS'] = {
|
|
'CtsViewTestCases': ["/storage/emulated/0/SurfaceViewSyncTest/"],
|
|
}
|
|
|
|
CONFIG['EXTRA_ARTIFACTS_HOST'] = {
|
|
# For fixing flakiness b/143049967.
|
|
'CtsThemeHostTestCases': ["/tmp/diff_*.png"],
|
|
}
|
|
|
|
_PREREQUISITE_BLUETOOTH = 'bluetooth'
|
|
_PREREQUISITE_REGION_US = 'region_us'
|
|
|
|
CONFIG['PREREQUISITES'] = {
|
|
'CtsBluetoothTestCases': [_PREREQUISITE_BLUETOOTH],
|
|
'CtsStatsdHostTestCases': [_PREREQUISITE_BLUETOOTH],
|
|
'CtsWebkitTestCases': [_PREREQUISITE_REGION_US],
|
|
'CtsContentTestCases': [_PREREQUISITE_REGION_US],
|
|
'CtsAppSecurityTestCases': [_PREREQUISITE_REGION_US],
|
|
'CtsThemeHostTestCases': [_PREREQUISITE_REGION_US],
|
|
}
|
|
|
|
from generate_controlfiles_common import main
|
|
|
|
if __name__ == '__main__':
|
|
main(CONFIG)
|