1{ 2 "presubmit": [ 3 { 4 "name": "ConnectivityCoverageTests" 5 }, 6 { 7 // In addition to ConnectivityCoverageTests, runs non-connectivity-module tests 8 "name": "FrameworksNetTests" 9 }, 10 // Run in addition to mainline-presubmit as mainline-presubmit is not 11 // supported in every branch. 12 // CtsNetTestCasesLatestSdk uses stable API shims, so does not exercise 13 // some latest APIs. Run CtsNetTestCases to get coverage of newer APIs. 14 { 15 "name": "CtsNetTestCases", 16 "options": [ 17 { 18 "exclude-annotation": "com.android.testutils.SkipPresubmit" 19 }, 20 { 21 "exclude-annotation": "androidx.test.filters.RequiresDevice" 22 } 23 ] 24 }, 25 // Also run CtsNetTestCasesLatestSdk to ensure tests using older shims pass. 26 { 27 "name": "CtsNetTestCasesLatestSdk", 28 "options": [ 29 { 30 "exclude-annotation": "com.android.testutils.SkipPresubmit" 31 }, 32 { 33 "exclude-annotation": "androidx.test.filters.RequiresDevice" 34 } 35 ] 36 }, 37 // CTS tests that target older SDKs. 38 { 39 "name": "CtsNetTestCasesMaxTargetSdk31", 40 "options": [ 41 { 42 "exclude-annotation": "com.android.testutils.SkipPresubmit" 43 }, 44 { 45 "exclude-annotation": "androidx.test.filters.RequiresDevice" 46 } 47 ] 48 }, 49 { 50 "name": "bpf_existence_test" 51 }, 52 { 53 "name": "connectivity_native_test" 54 }, 55 { 56 "name": "netd_updatable_unit_test" 57 }, 58 { 59 "name": "TetheringTests" 60 }, 61 { 62 "name": "TetheringIntegrationTests" 63 }, 64 { 65 "name": "traffic_controller_unit_test" 66 }, 67 { 68 "name": "libnetworkstats_test" 69 }, 70 { 71 "name": "FrameworksNetIntegrationTests" 72 } 73 ], 74 "postsubmit": [ 75 { 76 "name": "TetheringPrivilegedTests" 77 }, 78 { 79 "name": "netd_updatable_unit_test", 80 "keywords": ["netd-device-kernel-4.9", "netd-device-kernel-4.14"] 81 }, 82 { 83 "name": "libclat_test" 84 }, 85 { 86 "name": "traffic_controller_unit_test", 87 "keywords": ["netd-device-kernel-4.9", "netd-device-kernel-4.14"] 88 }, 89 { 90 "name": "libnetworkstats_test" 91 }, 92 { 93 "name": "FrameworksNetDeflakeTest" 94 } 95 ], 96 "mainline-presubmit": [ 97 { 98 "name": "CtsNetTestCasesLatestSdk[CaptivePortalLoginGoogle.apk+NetworkStackGoogle.apk+com.google.android.resolv.apex+com.google.android.tethering.apex]", 99 "options": [ 100 { 101 "exclude-annotation": "com.android.testutils.SkipPresubmit" 102 }, 103 { 104 "exclude-annotation": "androidx.test.filters.RequiresDevice" 105 } 106 ] 107 }, 108 { 109 "name": "CtsNetTestCasesMaxTargetSdk31[CaptivePortalLoginGoogle.apk+NetworkStackGoogle.apk+com.google.android.resolv.apex+com.google.android.tethering.apex]", 110 "options": [ 111 { 112 "exclude-annotation": "com.android.testutils.SkipPresubmit" 113 }, 114 { 115 "exclude-annotation": "androidx.test.filters.RequiresDevice" 116 } 117 ] 118 }, 119 { 120 "name": "bpf_existence_test[CaptivePortalLoginGoogle.apk+NetworkStackGoogle.apk+com.google.android.resolv.apex+com.google.android.tethering.apex]" 121 }, 122 { 123 "name": "connectivity_native_test[CaptivePortalLoginGoogle.apk+NetworkStackGoogle.apk+com.google.android.resolv.apex+com.google.android.tethering.apex]" 124 }, 125 { 126 "name": "netd_updatable_unit_test[CaptivePortalLoginGoogle.apk+NetworkStackGoogle.apk+com.google.android.resolv.apex+com.google.android.tethering.apex]" 127 }, 128 { 129 "name": "ConnectivityCoverageTests[CaptivePortalLoginGoogle.apk+NetworkStackGoogle.apk+com.google.android.resolv.apex+com.google.android.tethering.apex]" 130 }, 131 { 132 "name": "traffic_controller_unit_test[CaptivePortalLoginGoogle.apk+NetworkStackGoogle.apk+com.google.android.resolv.apex+com.google.android.tethering.apex]" 133 }, 134 { 135 "name": "libnetworkstats_test[CaptivePortalLoginGoogle.apk+NetworkStackGoogle.apk+com.google.android.resolv.apex+com.google.android.tethering.apex]" 136 } 137 ], 138 "mainline-postsubmit": [ 139 // Tests on physical devices with SIM cards: postsubmit only for capacity constraints 140 { 141 "name": "CtsNetTestCasesLatestSdk[CaptivePortalLoginGoogle.apk+NetworkStackGoogle.apk+com.google.android.resolv.apex+com.google.android.tethering.apex]", 142 "keywords": ["sim"] 143 }, 144 // TODO: move to mainline-presubmit when known green. 145 // Test with APK modules only, in cases where APEX is not supported, or the other modules were simply not updated 146 { 147 "name": "CtsNetTestCasesLatestSdk[CaptivePortalLoginGoogle.apk+NetworkStackGoogle.apk]", 148 "options": [ 149 { 150 "exclude-annotation": "com.android.testutils.SkipPresubmit" 151 }, 152 { 153 "exclude-annotation": "androidx.test.filters.RequiresDevice" 154 }, 155 { 156 "exclude-annotation": "com.android.testutils.ConnectivityModuleTest" 157 } 158 ] 159 }, 160 // TODO: move to mainline-presubmit when known green. 161 // Test with connectivity/tethering module only, to catch integration issues with older versions of other modules. 162 // "new tethering + old NetworkStack" is not a configuration that should really exist in the field, but 163 // there is no strong guarantee, and it is required by MTS testing for module qualification, where modules 164 // are tested independently. 165 { 166 "name": "CtsNetTestCasesLatestSdk[com.google.android.tethering.apex]", 167 "options": [ 168 { 169 "exclude-annotation": "com.android.testutils.SkipPresubmit" 170 }, 171 { 172 "exclude-annotation": "androidx.test.filters.RequiresDevice" 173 } 174 ] 175 } 176 ], 177 "auto-postsubmit": [ 178 // Test tag for automotive targets. These are only running in postsubmit so as to harden the 179 // automotive targets to avoid introducing additional test flake and build time. The plan for 180 // presubmit testing for auto is to augment the existing tests to cover auto use cases as well. 181 // Additionally, this tag is used in targeted test suites to limit resource usage on the test 182 // infra during the hardening phase. 183 // TODO: this tag to be removed once the above is no longer an issue. 184 { 185 "name": "FrameworksNetTests" 186 }, 187 { 188 "name": "FrameworksNetIntegrationTests" 189 }, 190 { 191 "name": "FrameworksNetDeflakeTest" 192 } 193 ], 194 "imports": [ 195 { 196 "path": "frameworks/base/core/java/android/net" 197 }, 198 { 199 "path": "frameworks/opt/net/ethernet" 200 }, 201 { 202 "path": "packages/modules/NetworkStack" 203 }, 204 { 205 "path": "packages/modules/CaptivePortalLogin" 206 } 207 ] 208} 209