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    CtsEncryptionApp \
21    CtsExternalStorageApp \
22    CtsInstrumentationAppDiffCert \
23    CtsNetSecPolicyUsesCleartextTrafficFalse \
24    CtsNetSecPolicyUsesCleartextTrafficTrue \
25    CtsNetSecPolicyUsesCleartextTrafficUnspecified \
26    CtsNoRestartBase \
27    CtsNoRestartFeature \
28    CtsUsePermissionApp22 \
29    CtsUsePermissionApp23 \
30    CtsUsePermissionApp24 \
31    CtsPermissionDeclareApp \
32    CtsPermissionDeclareAppCompat \
33    CtsPrivilegedUpdateTests \
34    CtsReadExternalStorageApp \
35    CtsSharedUidInstall \
36    CtsSharedUidInstallDiffCert \
37    CtsShimPrivUpgradePrebuilt \
38    CtsShimPrivUpgradeWrongSHAPrebuilt \
39    CtsSimpleAppInstall \
40    CtsSimpleAppInstallDiffCert \
41    CtsSplitApp \
42    CtsSplitApp_x86 \
43    CtsSplitApp_x86_64 \
44    CtsSplitApp_armeabi-v7a \
45    CtsSplitApp_armeabi \
46    CtsSplitApp_arm64-v8a \
47    CtsSplitApp_mips64 \
48    CtsSplitApp_mips \
49    CtsSplitAppDiffRevision \
50    CtsSplitAppDiffVersion \
51    CtsSplitAppDiffCert \
52    CtsSplitAppFeature \
53    CtsTargetInstrumentationApp \
54    CtsUsePermissionDiffCert \
55    CtsUsesLibraryApp \
56    CtsWriteExternalStorageApp \
57    CtsMultiUserStorageApp
58
59cts_security_keysets_list := \
60    CtsKeySetTestApp \
61    CtsKeySetPermDefSigningA \
62    CtsKeySetPermDefSigningB\
63    CtsKeySetPermUseSigningA \
64    CtsKeySetPermUseSigningB \
65    CtsKeySetSigningAUpgradeA \
66    CtsKeySetSigningBUpgradeA \
67    CtsKeySetSigningAUpgradeAAndB \
68    CtsKeySetSigningAUpgradeAOrB \
69    CtsKeySetSigningAUpgradeB \
70    CtsKeySetSigningBUpgradeB \
71    CtsKeySetSigningAAndBUpgradeA \
72    CtsKeySetSigningAAndCUpgradeB \
73    CtsKeySetSigningAUpgradeNone \
74    CtsKeySetSharedUserSigningAUpgradeB \
75    CtsKeySetSharedUserSigningBUpgradeB \
76    CtsKeySetSigningABadUpgradeB \
77    CtsKeySetSigningCBadAUpgradeAB \
78    CtsKeySetSigningANoDefUpgradeB \
79    CtsKeySetSigningAUpgradeEcA \
80    CtsKeySetSigningEcAUpgradeA
81
82cts_account_support_packages := \
83    CtsUnaffiliatedAccountAuthenticators
84
85cts_support_packages := \
86    CtsAbiOverrideTestApp \
87    CtsAccountManagementDevicePolicyApp \
88    CtsAdminApp \
89    CtsAlarmClockService \
90    CtsAppRestrictionsManagingApp \
91    CtsAppRestrictionsTargetApp \
92    CtsAppTestStubs \
93    CtsAppUsageTestApp \
94    CtsAssistService \
95    CtsAssistApp \
96    CtsAtraceTestApp \
97    CtsBackupApp \
98    CtsCertInstallerApp \
99    CtsContactDirectoryProvider \
100    CtsCustomizationApp \
101    CtsCppToolsApp \
102    CtsDeviceAdminApp23 \
103    CtsDeviceAdminApp24 \
104    CtsDeviceAndProfileOwnerApp23 \
105    CtsDeviceAndProfileOwnerApp \
106    CtsDeviceInfo \
107    CtsDeviceOsTestApp \
108    CtsDeviceOwnerApp \
109    CtsDeviceServicesTestApp \
110    CtsDeviceTaskSwitchingAppA \
111    CtsDeviceTaskSwitchingAppB \
112    CtsDeviceTaskSwitchingControl \
113    CtsDragAndDropSourceApp \
114    CtsDragAndDropTargetApp \
115    CtsExternalServiceService \
116    CtsHostsideNetworkTestsApp \
117    CtsHostsideNetworkTestsApp2 \
118    CtsIntentReceiverApp \
119    CtsIntentSenderApp \
120    CtsLauncherAppsTests \
121    CtsLauncherAppsTestsSupport \
122    CtsLeanbackJankApp \
123    CtsManagedProfileApp \
124    CtsMonkeyApp \
125    CtsMonkeyApp2 \
126    CtsPackageInstallerApp \
127    CtsPermissionApp \
128    CtsProfileOwnerApp \
129    CtsSimpleApp \
130    CtsSimplePreMApp \
131    CtsSomeAccessibilityServices \
132    CtsSystemUiDeviceApp \
133    CtsThemeDeviceApp \
134    CtsUsbSerialTestApp \
135    CtsVoiceInteractionService \
136    CtsVoiceInteractionApp \
137    CtsVoiceSettingsService \
138    CtsVpnFirewallApp \
139    CtsWidgetProviderApp \
140    CtsWifiConfigCreator \
141    TestDeviceSetup \
142    $(cts_account_support_packages) \
143    $(cts_security_apps_list) \
144    $(cts_security_keysets_list)
145
146cts_external_packages := \
147    com.replica.replicaisland \
148    com.drawelements.deqp
149
150# Any APKs that need to be copied to the CTS distribution's testcases
151# directory but do not require an associated test package XML.
152CTS_TEST_CASE_LIST := \
153    $(cts_support_packages) \
154    $(cts_external_packages)
155
156# Test packages that require an associated test package XML.
157cts_test_packages := \
158    CtsIcuTestCases \
159    CtsAccelerationTestCases \
160    CtsAccountManagerTestCases \
161    CtsAccessibilityServiceTestCases \
162    CtsAccessibilityTestCases \
163    CtsAdminTestCases \
164    CtsAlarmClockTestCases \
165    CtsAnimationTestCases \
166    CtsAppTestCases \
167    CtsAppWidgetTestCases \
168    CtsAssistTestCases \
169    CtsBackupTestCases \
170    CtsBluetoothTestCases \
171    CtsCalendarcommon2TestCases \
172    CtsCallLogTestCases \
173    CtsCameraTestCases \
174    CtsCarTestCases \
175    CtsContentTestCases \
176    CtsDatabaseTestCases \
177    CtsDisplayTestCases \
178    CtsDpiTestCases \
179    CtsDpiTestCases2 \
180    CtsDramTestCases \
181    CtsDreamsTestCases \
182    CtsDrmTestCases \
183    CtsEffectTestCases \
184    CtsExternalServiceTestCases \
185    CtsFileSystemTestCases \
186    CtsGestureTestCases \
187    CtsGraphicsTestCases \
188    CtsGraphics2TestCases \
189    CtsHardwareTestCases \
190    CtsJankDeviceTestCases \
191    CtsLeanbackJankTestCases \
192    CtsJobSchedulerTestCases \
193    CtsJniTestCases \
194    CtsKeystoreTestCases \
195    CtsLibcoreLegacy22TestCases \
196    CtsLocationTestCases \
197    CtsLocation2TestCases \
198    CtsMediaStressTestCases \
199    CtsMediaTestCases \
200    CtsMidiTestCases \
201    CtsMultiUserTestCases \
202    CtsNdefTestCases \
203    CtsNetSecPolicyUsesCleartextTrafficFalseTestCases \
204    CtsNetSecPolicyUsesCleartextTrafficTrueTestCases \
205    CtsNetSecPolicyUsesCleartextTrafficUnspecifiedTestCases \
206    CtsNetTestCases \
207    CtsNetTestCasesLegacyApi22 \
208    CtsNetTestCasesLegacyPermission22 \
209    CtsNetSecConfigAttributeTestCases \
210    CtsNetSecConfigCleartextTrafficTestCases \
211    CtsNetSecConfigBasicDebugDisabledTestCases \
212    CtsNetSecConfigBasicDebugEnabledTestCases \
213    CtsNetSecConfigBasicDomainConfigTestCases \
214    CtsNetSecConfigInvalidPinTestCases \
215    CtsNetSecConfigNestedDomainConfigTestCases \
216    CtsNetSecConfigResourcesSrcTestCases \
217    CtsOpenGLTestCases \
218    CtsOpenGlPerfTestCases \
219    CtsOpenGlPerf2TestCases \
220    CtsOsTestCases \
221    CtsPermissionTestCases \
222    CtsPermission2TestCases \
223    CtsPreferenceTestCases \
224    CtsPreference2TestCases \
225    CtsPrintTestCases \
226    CtsProviderTestCases \
227    CtsRenderscriptTestCases \
228    CtsRenderscriptLegacyTestCases \
229    CtsRsBlasTestCases \
230    CtsRsCppTestCases \
231    CtsSaxTestCases \
232    CtsSecurityTestCases \
233    CtsSignatureTestCases \
234    CtsSimpleCpuTestCases \
235    CtsSpeechTestCases \
236    CtsSystemUiTestCases \
237    CtsTelecomTestCases \
238    CtsTelecomTestCases2 \
239    CtsTelephonyTestCases \
240    CtsTextTestCases \
241    CtsTextureViewTestCases \
242    CtsThemeDeviceTestCases \
243    CtsTransitionTestCases \
244    CtsTvProviderTestCases \
245    CtsTvTestCases \
246    CtsUiAutomationTestCases \
247    CtsUiRenderingTestCases \
248    CtsUiDeviceTestCases \
249    CtsUsageStatsTestCases \
250    CtsUtilTestCases \
251    CtsVideoTestCases \
252    CtsViewTestCases \
253    CtsVoiceInteractionTestCases \
254    CtsVoiceSettingsTestCases \
255    CtsWebkitTestCases \
256    CtsWidgetTestCases
257
258# All APKs that need to be scanned by the coverage utilities.
259CTS_COVERAGE_TEST_CASE_LIST := \
260    $(cts_support_packages) \
261    $(cts_test_packages)
262
263# Host side only tests
264cts_host_libraries := \
265    CtsAadbHostTestCases \
266    CtsAbiOverrideHostTestCases \
267    CtsAppSecurityHostTestCases \
268    CtsAppUsageHostTestCases \
269    CtsAtraceHostTestCases \
270    CtsCppToolsTestCases \
271    CtsDevicePolicyManagerTestCases \
272    CtsDragAndDropHostTestCases \
273    CtsDumpsysHostTestCases \
274    CtsHostsideNetworkTests \
275    CtsJdwpSecurityHostTestCases \
276    CtsMonkeyTestCases \
277    CtsOsHostTestCases \
278    CtsSecurityHostTestCases \
279    CtsServicesHostTestCases \
280    CtsThemeHostTestCases \
281    CtsUiHostTestCases \
282    CtsUsbTests \
283    CtsSystemUiHostTestCases
284
285# List of native tests. For 32 bit targets, assumes that there will be
286# one test executable, and it will end in 32. For 64 bit targets, assumes
287# that there will be two executables, one that ends in 32 for the 32
288# bit executable and one that ends in 64 for the 64 bit executable.
289cts_native_tests := \
290    CtsNativeMediaSlTestCases \
291    CtsNativeMediaXaTestCases \
292
293ifeq ($(HOST_OS)-$(HOST_ARCH),$(filter $(HOST_OS)-$(HOST_ARCH),linux-x86 linux-x86_64))
294cts_native_tests += CtsBionicTestCases
295cts_native_tests += CtsSimpleperfTestCases
296endif
297
298cts_device_jars := \
299    CtsJdwpApp
300
301cts_target_junit_tests := \
302    CtsJdwp \
303    CtsLibcoreOj
304
305cts_deqp_test_apis := \
306    egl \
307    gles2 \
308    gles3 \
309    gles31
310
311# All the files that will end up under the repository/testcases
312# directory of the final CTS distribution.
313CTS_TEST_CASES := $(call cts-get-lib-paths,$(cts_host_libraries)) \
314    $(call cts-get-package-paths,$(cts_test_packages)) \
315    $(call cts-get-ui-lib-paths,$(cts_device_jars)) \
316    $(call cts-get-ui-lib-paths,$(cts_target_junit_tests)) \
317    $(call cts-get-executable-paths,$(cts_device_executables)) \
318    $(call cts-get-native-paths,$(cts_native_tests),32)
319
320ifeq ($(TARGET_IS_64_BIT),true)
321CTS_TEST_CASES += $(call cts-get-native-paths,$(cts_native_tests),64)
322endif
323
324# All the XMLs that will end up under the repository/testcases
325# and that need to be created before making the final CTS distribution.
326CTS_TEST_XMLS := $(call cts-get-test-xmls,$(cts_host_libraries)) \
327    $(call cts-get-test-xmls,$(cts_test_packages)) \
328    $(call cts-get-test-xmls,$(cts_native_tests)) \
329    $(call cts-get-test-xmls,$(cts_target_junit_tests)) \
330    $(call cts-get-deqp-test-xmls,$(cts_deqp_test_apis))
331
332# The following files will be placed in the tools directory of the CTS distribution
333CTS_TOOLS_LIST :=
334