• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1#
2# Copyright (C) 2016 The Android Open Source Project
3#
4# Licensed under the Apache License, Version 2.0 (the "License");
5# you may not use this file except in compliance with the License.
6# You may obtain a copy of the License at
7#
8#      http://www.apache.org/licenses/LICENSE-2.0
9#
10# Unless required by applicable law or agreed to in writing, software
11# distributed under the License is distributed on an "AS IS" BASIS,
12# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13# See the License for the specific language governing permissions and
14# limitations under the License.
15#
16"""This module has the global key values that are used across framework
17modules.
18"""
19
20
21class ConfigKeys(object):
22    """Enum values for test config related lookups.
23    """
24    # Keys used to look up values from test config files.
25    # These keys define the wording of test configs and their internal
26    # references.
27    KEY_LOG_PATH = "log_path"
28    KEY_TESTBED = "test_bed"
29    KEY_TESTBED_NAME = "name"
30    KEY_TEST_PATHS = "test_paths"
31    KEY_TEST_SUITE = "test_suite"
32
33    # Keys in test suite
34    KEY_INCLUDE_FILTER = "include_filter"
35    KEY_EXCLUDE_FILTER = "exclude_filter"
36
37    # Keys for binary tests
38    IKEY_BINARY_TEST_SOURCE = "binary_test_source"
39    IKEY_BINARY_TEST_WORKING_DIRECTORY = "binary_test_working_directory"
40    IKEY_BINARY_TEST_ENVP = "binary_test_envp"
41    IKEY_BINARY_TEST_ARGS = "binary_test_args"
42    IKEY_BINARY_TEST_LD_LIBRARY_PATH = "binary_test_ld_library_path"
43    IKEY_BINARY_TEST_DISABLE_FRAMEWORK = "binary_test_disable_framework"
44    IKEY_BINARY_TEST_STOP_NATIVE_SERVERS = "binary_test_stop_native_servers"
45    IKEY_NATIVE_SERVER_PROCESS_NAME = "native_server_process_name"
46
47    # Internal keys, used internally, not exposed to user's config files.
48    IKEY_USER_PARAM = "user_params"
49    IKEY_TESTBED_NAME = "testbed_name"
50    IKEY_LOG_PATH = "log_path"
51    IKEY_ABI_NAME = "abi_name"
52    IKEY_ABI_BITNESS = "abi_bitness"
53    IKEY_RUN_32BIT_ON_64BIT_ABI = "run_32bit_on_64bit_abi"
54    IKEY_SKIP_ON_32BIT_ABI = "skip_on_32bit_abi"
55    IKEY_SKIP_ON_64BIT_ABI = "skip_on_64bit_abi"
56    IKEY_SKIP_IF_THERMAL_THROTTLING = "skip_if_thermal_throttling"
57
58    IKEY_BUILD = "build"
59    IKEY_DATA_FILE_PATH = "data_file_path"
60
61    # sub fields of test_bed
62    IKEY_ANDROID_DEVICE = "AndroidDevice"
63    IKEY_PRODUCT_TYPE = "product_type"
64    IKEY_PRODUCT_VARIANT = "product_variant"
65    IKEY_BUILD_FLAVOR = "build_flavor"
66    IKEY_BUILD_ID = "build_id"
67    IKEY_BRANCH = "branch"
68    IKEY_BUILD_ALIAS = "build_alias"
69    IKEY_API_LEVEL = "api_level"
70    IKEY_SERIAL = "serial"
71
72    # Keys for web
73    IKEY_ENABLE_WEB = "enable_web"
74
75    # Keys for profiling
76    IKEY_ENABLE_PROFILING = "enable_profiling"
77    IKEY_BINARY_TEST_PROFILING_LIBRARY_PATH = "binary_test_profiling_library_path"
78    IKEY_PROFILING_TRACING_PATH = "profiling_trace_path"
79    IKEY_TRACE_FILE_TOOL_NAME = "trace_file_tool_name"
80
81    # Keys for systrace (for hal tests)
82    IKEY_ENABLE_SYSTRACE = "enable_systrace"
83    IKEY_SYSTRACE_PROCESS_NAME = "systrace_process_name"
84    IKEY_SYSTRACE_REPORT_PATH = "systrace_report_path"
85    IKEY_SYSTRACE_REPORT_URL_PREFIX = "systrace_report_url_prefix"
86    IKEY_SYSTRACE_REPORT_USE_DATE_DIRECTORY = "systrace_report_path_use_date_directory"
87    IKEY_SYSTRACE_UPLAD_TO_DASHBOARD = "systrace_upload_to_dashboard"
88
89    # Keys for coverage
90    IKEY_ENABLE_COVERAGE = "enable_coverage"
91    IKEY_MODULES = "modules"
92    IKEY_SERVICE_JSON_PATH = "service_key_json_path"
93    IKEY_DASHBOARD_POST_COMMAND = "dashboard_post_command"
94
95    # Keys for the HAL HIDL GTest type (see VtsMultiDeviceTest.java).
96    IKEY_PRECONDITION_HWBINDER_SERVICE = "precondition_hwbinder_service"
97    IKEY_PRECONDITION_FEATURE = "precondition_feature"
98    IKEY_PRECONDITION_FILE_PATH_PREFIX = "precondition_file_path_prefix"
99    IKEY_PRECONDITION_LSHAL = "precondition_lshal"
100
101    # Keys for toggle passthrough mode
102    IKEY_PASSTHROUGH_MODE = "passthrough_mode"
103
104    # Keys for the HAL HIDL Replay Test type.
105    IKEY_HAL_HIDL_REPLAY_TEST_TRACE_PATHS = "hal_hidl_replay_test_trace_paths"
106    IKEY_HAL_HIDL_PACKAGE_NAME = "hal_hidl_package_name"
107
108    # Keys for special test cases
109    IKEY_FFMPEG_BINARY_PATH = "ffmpeg_binary_path"
110
111    # Keys for log uploading
112    IKEY_ENABLE_LOG_UPLOADING = "enable_log_uploading"
113    IKEY_LOG_UPLOADING_PATH = "log_uploading_path"
114    IKEY_LOG_UPLOADING_USE_DATE_DIRECTORY = "log_uploading_use_date_directory"
115    IKEY_LOG_UPLOADING_URL_PREFIX = "log_uploading_url_prefix"
116
117    # A list of keys whose values in configs should not be passed to test
118    # classes without unpacking first.
119    RESERVED_KEYS = (KEY_TESTBED, KEY_LOG_PATH, KEY_TEST_PATHS)
120