1<?xml version="1.0" encoding="utf-8"?> 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<configuration description="Config for CTS Libcore java.util Collection test cases"> 17 <option name="test-suite-tag" value="cts" /> 18 <option name="not-shardable" value="true" /> 19 <option name="config-descriptor:metadata" key="component" value="libcore" /> 20 <target_preparer class="com.android.tradefed.targetprep.suite.SuiteApkInstaller"> 21 <option name="cleanup-apks" value="true" /> 22 <option name="test-file-name" value="CtsLibcoreJavaUtilCollectionsTestCases.apk" /> 23 </target_preparer> 24 <!-- 25 Notes as of November 2016: 26 27 1.) When the runner collects the set of tests to run, it 28 (a) attempts to directly run TestCase subclasses from guava-testlib, which they don't support, 29 (b) doesn't find classes with suite() methods. 30 (c) runs out of memory if attempting to run all of the > 220k tests in a single go 31 Breaking the tests down into chunks of ~ 40-50k tests each, and explicitly specifying the 32 suites to run, solves these problems. 33 34 2.) Due to http://b/33068110 the classes with the suite() methods (in the "suite" sub-package) 35 need to extend TestSuite, which means that they need to delegate to separate classes (in the 36 "tests" sub-package) that extend classes from guava-testlib. 37 --> 38 <test class="com.android.tradefed.testtype.AndroidJUnitTest" > 39 <option name="package" value="libcore.java.util.collectiontests" /> 40 <option name="class" value="libcore.java.util.suite.ConcurrentSkipListMapNaturalSuite" /> 41 <option name="runtime-hint" value="10m" /> 42 <option name="test-timeout" value="1200000" /> 43 <option name="shell-timeout" value="1400000" /> 44 </test> 45 <test class="com.android.tradefed.testtype.AndroidJUnitTest" > 46 <option name="package" value="libcore.java.util.collectiontests" /> 47 <option name="class" value="libcore.java.util.suite.ConcurrentSkipListMapWithComparatorSuite" /> 48 <option name="runtime-hint" value="10m" /> 49 <option name="test-timeout" value="1200000" /> 50 <option name="shell-timeout" value="1400000" /> 51 </test> 52 <test class="com.android.tradefed.testtype.AndroidJUnitTest" > 53 <option name="package" value="libcore.java.util.collectiontests" /> 54 <option name="class" value="libcore.java.util.suite.TreeMapNaturalSuite" /> 55 <option name="runtime-hint" value="10m" /> 56 <option name="test-timeout" value="1200000" /> 57 <option name="shell-timeout" value="1400000" /> 58 </test> 59 <test class="com.android.tradefed.testtype.AndroidJUnitTest" > 60 <option name="package" value="libcore.java.util.collectiontests" /> 61 <option name="class" value="libcore.java.util.suite.TreeMapWithComparatorSuite" /> 62 <option name="runtime-hint" value="10m" /> 63 <option name="test-timeout" value="1200000" /> 64 <option name="shell-timeout" value="1400000" /> 65 </test> 66 <test class="com.android.tradefed.testtype.AndroidJUnitTest" > 67 <option name="package" value="libcore.java.util.collectiontests" /> 68 <option name="class" value="libcore.java.util.suite.OtherCollectionsSuite" /> 69 <option name="runtime-hint" value="8m" /> 70 <option name="test-timeout" value="1200000" /> 71 <option name="shell-timeout" value="1400000" /> 72 </test> 73</configuration> 74