1# Copyright (C) 2010 The Android Open Source Project
2#
3# Licensed under the Apache License, Version 2.0 (the "License");
4# you may not use this file except in compliance with the License.
5# You may obtain a copy of the License at
6#
7#      http://www.apache.org/licenses/LICENSE-2.0
8#
9# Unless required by applicable law or agreed to in writing, software
10# distributed under the License is distributed on an "AS IS" BASIS,
11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12# See the License for the specific language governing permissions and
13# limitations under the License.
14
15cts_security_apps_list := \
16    CtsAppAccessData \
17    CtsAppWithData \
18    CtsDocumentProvider \
19    CtsDocumentClient \
20    CtsExternalStorageApp \
21    CtsInstrumentationAppDiffCert \
22    CtsPermissionDeclareApp \
23    CtsPermissionDeclareAppCompat \
24    CtsReadExternalStorageApp \
25    CtsSharedUidInstall \
26    CtsSharedUidInstallDiffCert \
27    CtsSimpleAppInstall \
28    CtsSimpleAppInstallDiffCert \
29    CtsSplitApp \
30    CtsSplitApp_x86 \
31    CtsSplitApp_x86_64 \
32    CtsSplitApp_armeabi-v7a \
33    CtsSplitApp_armeabi \
34    CtsSplitApp_arm64-v8a \
35    CtsSplitApp_mips64 \
36    CtsSplitApp_mips \
37    CtsSplitAppDiffRevision \
38    CtsSplitAppDiffVersion \
39    CtsSplitAppDiffCert \
40    CtsSplitAppFeature \
41    CtsTargetInstrumentationApp \
42    CtsUsePermissionDiffCert \
43    CtsWriteExternalStorageApp \
44    CtsMultiUserStorageApp
45
46cts_security_keysets_list := \
47    CtsKeySetTestApp \
48    CtsKeySetPermDefSigningA \
49    CtsKeySetPermDefSigningB\
50    CtsKeySetPermUseSigningA \
51    CtsKeySetPermUseSigningB \
52    CtsKeySetSigningAUpgradeA \
53    CtsKeySetSigningBUpgradeA \
54    CtsKeySetSigningAUpgradeAAndB \
55    CtsKeySetSigningAUpgradeAOrB \
56    CtsKeySetSigningAUpgradeB \
57    CtsKeySetSigningBUpgradeB \
58    CtsKeySetSigningAAndBUpgradeA \
59    CtsKeySetSigningAAndCUpgradeB \
60    CtsKeySetSigningAUpgradeNone
61
62cts_support_packages := \
63    CtsAccelerationTestStubs \
64    CtsAppTestStubs \
65    CtsDeviceAdmin \
66    CtsDeviceOpenGl \
67    CtsDeviceOwnerApp \
68    CtsDeviceTaskswitchingAppA \
69    CtsDeviceTaskswitchingAppB \
70    CtsDeviceTaskswitchingControl \
71    CtsDeviceUi \
72    CtsHostsideNetworkTestsApp \
73    CtsIntentReceiverApp \
74    CtsIntentSenderApp \
75    CtsLauncherAppsTests \
76    CtsLauncherAppsTestsSupport \
77    CtsManagedProfileApp \
78    CtsMonkeyApp \
79    CtsMonkeyApp2 \
80    CtsSimpleApp \
81    CtsSomeAccessibilityServices \
82    CtsThemeDeviceApp \
83    TestDeviceSetup \
84    CtsUiAutomatorApp \
85    CtsUsbSerialTestApp \
86    $(cts_security_apps_list) \
87    $(cts_security_keysets_list)
88
89cts_external_packages := \
90    com.replica.replicaisland \
91    com.drawelements.deqp
92
93# Any APKs that need to be copied to the CTS distribution's testcases
94# directory but do not require an associated test package XML.
95CTS_TEST_CASE_LIST := \
96    $(cts_support_packages) \
97    $(cts_external_packages)
98
99# Test packages that require an associated test package XML.
100cts_test_packages := \
101    CtsDeviceFilePerf \
102    CtsDeviceUi \
103    CtsDeviceDram \
104    CtsDeviceSimpleCpu \
105    CtsDeviceBrowserBench \
106    CtsDeviceVideoPerf \
107    CtsDeviceOpenGl \
108    CtsDeviceTvProviderPerf \
109    CtsAccelerationTestCases \
110    CtsAccountManagerTestCases \
111    CtsAccessibilityServiceTestCases \
112    CtsAccessibilityTestCases \
113    CtsAdminTestCases \
114    CtsAnimationTestCases \
115    CtsAppTestCases \
116    CtsAppWidgetTestCases \
117    CtsBluetoothTestCases \
118    CtsCalendarcommon2TestCases \
119    CtsContentTestCases \
120    CtsDatabaseTestCases \
121    CtsDisplayTestCases \
122    CtsDpiTestCases \
123    CtsDpiTestCases2 \
124    CtsDreamsTestCases \
125    CtsDrmTestCases \
126    CtsEffectTestCases \
127    CtsGestureTestCases \
128    CtsGraphicsTestCases \
129    CtsGraphics2TestCases \
130    CtsHardwareTestCases \
131    CtsJobSchedulerDeviceTestCases \
132    CtsJniTestCases \
133    CtsKeystoreTestCases \
134    CtsLocationTestCases \
135    CtsLocation2TestCases \
136    CtsMediaStressTestCases \
137    CtsMediaTestCases \
138    CtsNativeOpenGLTestCases \
139    CtsNdefTestCases \
140    CtsNetTestCases \
141    CtsOpenGLTestCases \
142    CtsOpenGlPerfTestCases \
143    CtsOsTestCases \
144    CtsPermissionTestCases \
145    CtsPermission2TestCases \
146    CtsPreferenceTestCases \
147    CtsPreference2TestCases \
148    CtsPrintTestCases \
149    CtsProviderTestCases \
150    CtsRenderscriptTestCases \
151    CtsRenderscriptLegacyTestCases \
152    CtsRsCppTestCases \
153    CtsSaxTestCases \
154    CtsSecurityTestCases \
155    CtsSignatureTestCases \
156    CtsSpeechTestCases \
157    CtsTelephonyTestCases \
158    CtsTextTestCases \
159    CtsTextureViewTestCases \
160    CtsThemeTestCases \
161    CtsTvTestCases \
162    CtsUiAutomationTestCases \
163    CtsUiRenderingTestCases \
164    CtsUsageStatsTestCases \
165    CtsUtilTestCases \
166    CtsViewTestCases \
167    CtsWebkitTestCases \
168    CtsWebGLTestCases \
169    CtsWidgetTestCases
170
171# All APKs that need to be scanned by the coverage utilities.
172CTS_COVERAGE_TEST_CASE_LIST := \
173    $(cts_support_packages) \
174    $(cts_test_packages)
175
176# Host side only tests
177cts_host_libraries := \
178    CtsAdbTests \
179    CtsAppSecurityTests \
180    CtsDevicePolicyManagerTestCases \
181    CtsDumpsysHostTestCases \
182    CtsHostJank \
183    CtsHostsideNetworkTests \
184    CtsHostUi \
185    CtsMonkeyTestCases \
186    CtsThemeHostTestCases \
187    CtsSecurityHostTestCases \
188    CtsUsbTests
189
190# List of native tests. For 32 bit targets, assumes that there will be
191# one test executable, and it will end in 32. For 64 bit targets, assumes
192# that there will be two executables, one that ends in 32 for the 32
193# bit executable and one that ends in 64 for the 64 bit executable.
194cts_native_tests := \
195    NativeMediaTest_SL \
196    NativeMediaTest_XA \
197
198ifeq ($(HOST_OS)-$(HOST_ARCH),$(filter $(HOST_OS)-$(HOST_ARCH),linux-x86 linux-x86_64))
199cts_native_tests += bionic-unit-tests-cts
200endif
201
202cts_ui_tests := \
203    CtsUiAutomatorTests
204
205cts_device_jars := \
206    CtsDeviceJank \
207    CtsPrintInstrument
208
209cts_device_executables := \
210    print-instrument
211
212cts_target_junit_tests := \
213    CtsJdwp
214
215cts_deqp_test_apis := \
216    gles3 \
217    gles31
218
219# All the files that will end up under the repository/testcases
220# directory of the final CTS distribution.
221CTS_TEST_CASES := $(call cts-get-lib-paths,$(cts_host_libraries)) \
222    $(call cts-get-package-paths,$(cts_test_packages)) \
223    $(call cts-get-ui-lib-paths,$(cts_ui_tests)) \
224    $(call cts-get-ui-lib-paths,$(cts_device_jars)) \
225    $(call cts-get-ui-lib-paths,$(cts_target_junit_tests)) \
226    $(call cts-get-executable-paths,$(cts_device_executables))
227
228# NOTE: If compiling on a 64 bit target, TARGET_2ND_ARCH will be non-empty
229# and will cause the function to expand to the secondary arch object
230# directory. If compiling on a 32 bit target, TARGET_2ND_ARCH will be
231# empty and will cause the function to expand to the primary arch object
232# directory.
233CTS_TEST_CASES += $(call cts-get-native-paths,$(cts_native_tests),32,$(TARGET_2ND_ARCH))
234
235ifeq ($(TARGET_IS_64_BIT),true)
236CTS_TEST_CASES += $(call cts-get-native-paths,$(cts_native_tests),64)
237endif
238
239# All the XMLs that will end up under the repository/testcases
240# and that need to be created before making the final CTS distribution.
241CTS_TEST_XMLS := $(call cts-get-test-xmls,$(cts_host_libraries)) \
242    $(call cts-get-test-xmls,$(cts_test_packages)) \
243    $(call cts-get-test-xmls,$(cts_native_tests)) \
244    $(call cts-get-test-xmls,$(cts_target_junit_tests)) \
245    $(call cts-get-test-xmls,$(cts_ui_tests)) \
246    $(call cts-get-deqp-test-xmls,$(cts_deqp_test_apis))
247
248# The following files will be placed in the tools directory of the CTS distribution
249CTS_TOOLS_LIST :=
250