1{ 2 "captiveportal-networkstack-resolve-tethering-mainline-presubmit": [ 3 { 4 "name": "CtsNetTestCasesLatestSdk", 5 "options": [ 6 { 7 "exclude-annotation": "com.android.testutils.SkipPresubmit" 8 }, 9 { 10 "exclude-annotation": "com.android.testutils.SkipMainlinePresubmit" 11 }, 12 { 13 "exclude-annotation": "androidx.test.filters.RequiresDevice" 14 } 15 ] 16 }, 17 { 18 "name": "CtsNetTestCasesMaxTargetSdk30", 19 "options": [ 20 { 21 "exclude-annotation": "com.android.testutils.SkipPresubmit" 22 }, 23 { 24 "exclude-annotation": "com.android.testutils.SkipMainlinePresubmit" 25 }, 26 { 27 "exclude-annotation": "androidx.test.filters.RequiresDevice" 28 } 29 ] 30 }, 31 { 32 "name": "CtsNetTestCasesMaxTargetSdk31", 33 "options": [ 34 { 35 "exclude-annotation": "com.android.testutils.SkipPresubmit" 36 }, 37 { 38 "exclude-annotation": "com.android.testutils.SkipMainlinePresubmit" 39 }, 40 { 41 "exclude-annotation": "androidx.test.filters.RequiresDevice" 42 } 43 ] 44 }, 45 { 46 "name": "CtsNetTestCasesMaxTargetSdk33", 47 "options": [ 48 { 49 "exclude-annotation": "com.android.testutils.SkipPresubmit" 50 }, 51 { 52 "exclude-annotation": "com.android.testutils.SkipMainlinePresubmit" 53 }, 54 { 55 "exclude-annotation": "androidx.test.filters.RequiresDevice" 56 } 57 ] 58 }, 59 { 60 "name": "bpf_existence_test" 61 }, 62 { 63 "name": "connectivity_native_test" 64 }, 65 { 66 "name": "netd_updatable_unit_test" 67 }, 68 { 69 "name": "ConnectivityCoverageTests", 70 "options": [ 71 { 72 "exclude-annotation": "com.android.testutils.SkipPresubmit" 73 } 74 ] 75 }, 76 { 77 "name": "libnetworkstats_test" 78 }, 79 { 80 "name": "CtsTetheringTestLatestSdk", 81 "options": [ 82 { 83 "exclude-annotation": "com.android.testutils.NetworkStackModuleTest" 84 } 85 ] 86 } 87 ], 88 "captiveportal-networkstack-mainline-presubmit": [ 89 // Test with APK modules only, in cases where APEX is not supported, or the other modules 90 // were simply not updated 91 { 92 "name": "CtsNetTestCasesLatestSdk", 93 "options": [ 94 { 95 "exclude-annotation": "com.android.testutils.SkipPresubmit" 96 }, 97 { 98 "exclude-annotation": "com.android.testutils.SkipMainlinePresubmit" 99 }, 100 { 101 "exclude-annotation": "androidx.test.filters.RequiresDevice" 102 }, 103 { 104 "exclude-annotation": "com.android.testutils.ConnectivityModuleTest" 105 }, 106 { 107 "exclude-annotation": "com.android.testutils.DnsResolverModuleTest" 108 } 109 ] 110 } 111 ], 112 "tethering-mainline-presubmit": [ 113 // Test with connectivity/tethering module only, to catch integration issues with older versions 114 // of other modules. "new tethering + old NetworkStack" is not a configuration that should 115 // really exist in the field, but there is no strong guarantee, and it is required by MTS 116 // testing for module qualification, where modules are tested independently. 117 { 118 "name": "CtsNetTestCasesLatestSdk", 119 "options": [ 120 { 121 "exclude-annotation": "com.android.testutils.SkipPresubmit" 122 }, 123 { 124 "exclude-annotation": "com.android.testutils.SkipMainlinePresubmit" 125 }, 126 { 127 "exclude-annotation": "androidx.test.filters.RequiresDevice" 128 }, 129 { 130 "exclude-annotation": "com.android.testutils.DnsResolverModuleTest" 131 }, 132 { 133 "exclude-annotation": "com.android.testutils.NetworkStackModuleTest" 134 } 135 ] 136 } 137 ], 138 "presubmit": [ 139 { 140 "name": "ConnectivityCoverageTests", 141 "options": [ 142 { 143 "exclude-annotation": "com.android.testutils.NetworkStackModuleTest" 144 }, 145 { 146 "exclude-annotation": "com.android.testutils.SkipPresubmit" 147 } 148 ] 149 }, 150 { 151 // In addition to ConnectivityCoverageTests, runs non-connectivity-module tests 152 "name": "FrameworksNetTests", 153 "options": [ 154 { 155 "exclude-annotation": "com.android.testutils.SkipPresubmit" 156 } 157 ] 158 }, 159 // Run in addition to mainline-presubmit as mainline-presubmit is not 160 // supported in every branch. 161 // CtsNetTestCasesLatestSdk uses stable API shims, so does not exercise 162 // some latest APIs. Run CtsNetTestCases to get coverage of newer APIs. 163 { 164 "name": "CtsNetTestCases", 165 "options": [ 166 { 167 "exclude-annotation": "com.android.testutils.SkipPresubmit" 168 }, 169 { 170 "exclude-annotation": "androidx.test.filters.RequiresDevice" 171 } 172 ] 173 }, 174 // Also run CtsNetTestCasesLatestSdk to ensure tests using older shims pass. 175 { 176 "name": "CtsNetTestCasesLatestSdk", 177 "options": [ 178 { 179 "exclude-annotation": "com.android.testutils.SkipPresubmit" 180 }, 181 { 182 "exclude-annotation": "androidx.test.filters.RequiresDevice" 183 } 184 ] 185 }, 186 // CTS tests that target older SDKs. 187 { 188 "name": "CtsNetTestCasesMaxTargetSdk30", 189 "options": [ 190 { 191 "exclude-annotation": "com.android.testutils.SkipPresubmit" 192 }, 193 { 194 "exclude-annotation": "androidx.test.filters.RequiresDevice" 195 } 196 ] 197 }, 198 { 199 "name": "CtsNetTestCasesMaxTargetSdk31", 200 "options": [ 201 { 202 "exclude-annotation": "com.android.testutils.SkipPresubmit" 203 }, 204 { 205 "exclude-annotation": "androidx.test.filters.RequiresDevice" 206 } 207 ] 208 }, 209 { 210 "name": "CtsNetTestCasesMaxTargetSdk33", 211 "options": [ 212 { 213 "exclude-annotation": "com.android.testutils.SkipPresubmit" 214 }, 215 { 216 "exclude-annotation": "androidx.test.filters.RequiresDevice" 217 } 218 ] 219 }, 220 { 221 "name": "bpf_existence_test" 222 }, 223 { 224 "name": "connectivity_native_test" 225 }, 226 { 227 "name": "libclat_test" 228 }, 229 { 230 "name": "netd_updatable_unit_test" 231 }, 232 { 233 "name": "TetheringTests" 234 }, 235 { 236 "name": "TetheringIntegrationTests" 237 }, 238 { 239 "name": "libnetworkstats_test" 240 }, 241 { 242 "name": "FrameworksNetIntegrationTests" 243 } 244 ], 245 "postsubmit": [ 246 { 247 "name": "TetheringPrivilegedTests" 248 }, 249 { 250 "name": "netd_updatable_unit_test", 251 "keywords": ["netd-device-kernel-4.9", "netd-device-kernel-4.14"] 252 }, 253 { 254 "name": "dns_helper_unit_test" 255 }, 256 { 257 "name": "FrameworksNetDeflakeTest" 258 }, 259 // Postsubmit on virtual devices to monitor flakiness of @SkipPresubmit methods 260 { 261 "name": "CtsNetTestCases", 262 "options": [ 263 { 264 "exclude-annotation": "androidx.test.filters.RequiresDevice" 265 } 266 ] 267 }, 268 { 269 "name": "FrameworksNetTests" 270 } 271 ], 272 "mainline-presubmit": [ 273 { 274 "name": "CtsNetTestCasesLatestSdk[CaptivePortalLoginGoogle.apk+NetworkStackGoogle.apk+com.google.android.resolv.apex+com.google.android.tethering.apex]", 275 "options": [ 276 { 277 "exclude-annotation": "com.android.testutils.SkipPresubmit" 278 }, 279 { 280 "exclude-annotation": "com.android.testutils.SkipMainlinePresubmit" 281 }, 282 { 283 "exclude-annotation": "androidx.test.filters.RequiresDevice" 284 } 285 ] 286 }, 287 { 288 "name": "CtsNetTestCasesMaxTargetSdk30[CaptivePortalLoginGoogle.apk+NetworkStackGoogle.apk+com.google.android.resolv.apex+com.google.android.tethering.apex]", 289 "options": [ 290 { 291 "exclude-annotation": "com.android.testutils.SkipPresubmit" 292 }, 293 { 294 "exclude-annotation": "com.android.testutils.SkipMainlinePresubmit" 295 }, 296 { 297 "exclude-annotation": "androidx.test.filters.RequiresDevice" 298 } 299 ] 300 }, 301 { 302 "name": "CtsNetTestCasesMaxTargetSdk31[CaptivePortalLoginGoogle.apk+NetworkStackGoogle.apk+com.google.android.resolv.apex+com.google.android.tethering.apex]", 303 "options": [ 304 { 305 "exclude-annotation": "com.android.testutils.SkipPresubmit" 306 }, 307 { 308 "exclude-annotation": "com.android.testutils.SkipMainlinePresubmit" 309 }, 310 { 311 "exclude-annotation": "androidx.test.filters.RequiresDevice" 312 } 313 ] 314 }, 315 { 316 "name": "CtsNetTestCasesMaxTargetSdk33[CaptivePortalLoginGoogle.apk+NetworkStackGoogle.apk+com.google.android.resolv.apex+com.google.android.tethering.apex]", 317 "options": [ 318 { 319 "exclude-annotation": "com.android.testutils.SkipPresubmit" 320 }, 321 { 322 "exclude-annotation": "com.android.testutils.SkipMainlinePresubmit" 323 }, 324 { 325 "exclude-annotation": "androidx.test.filters.RequiresDevice" 326 } 327 ] 328 }, 329 // Test with APK modules only, in cases where APEX is not supported, or the other modules 330 // were simply not updated 331 { 332 "name": "CtsNetTestCasesLatestSdk[CaptivePortalLoginGoogle.apk+NetworkStackGoogle.apk]", 333 "options": [ 334 { 335 "exclude-annotation": "com.android.testutils.SkipPresubmit" 336 }, 337 { 338 "exclude-annotation": "com.android.testutils.SkipMainlinePresubmit" 339 }, 340 { 341 "exclude-annotation": "androidx.test.filters.RequiresDevice" 342 }, 343 { 344 "exclude-annotation": "com.android.testutils.ConnectivityModuleTest" 345 }, 346 { 347 "exclude-annotation": "com.android.testutils.DnsResolverModuleTest" 348 } 349 ] 350 }, 351 // Test with connectivity/tethering module only, to catch integration issues with older versions 352 // of other modules. "new tethering + old NetworkStack" is not a configuration that should 353 // really exist in the field, but there is no strong guarantee, and it is required by MTS 354 // testing for module qualification, where modules are tested independently. 355 { 356 "name": "CtsNetTestCasesLatestSdk[com.google.android.tethering.apex]", 357 "options": [ 358 { 359 "exclude-annotation": "com.android.testutils.SkipPresubmit" 360 }, 361 { 362 "exclude-annotation": "com.android.testutils.SkipMainlinePresubmit" 363 }, 364 { 365 "exclude-annotation": "androidx.test.filters.RequiresDevice" 366 }, 367 { 368 "exclude-annotation": "com.android.testutils.DnsResolverModuleTest" 369 }, 370 { 371 "exclude-annotation": "com.android.testutils.NetworkStackModuleTest" 372 } 373 ] 374 }, 375 { 376 "name": "bpf_existence_test[CaptivePortalLoginGoogle.apk+NetworkStackGoogle.apk+com.google.android.resolv.apex+com.google.android.tethering.apex]" 377 }, 378 { 379 "name": "connectivity_native_test[CaptivePortalLoginGoogle.apk+NetworkStackGoogle.apk+com.google.android.resolv.apex+com.google.android.tethering.apex]" 380 }, 381 { 382 "name": "netd_updatable_unit_test[CaptivePortalLoginGoogle.apk+NetworkStackGoogle.apk+com.google.android.resolv.apex+com.google.android.tethering.apex]" 383 }, 384 { 385 "name": "ConnectivityCoverageTests[CaptivePortalLoginGoogle.apk+NetworkStackGoogle.apk+com.google.android.resolv.apex+com.google.android.tethering.apex]", 386 "options": [ 387 { 388 "exclude-annotation": "com.android.testutils.SkipPresubmit" 389 } 390 ] 391 }, 392 { 393 "name": "libnetworkstats_test[CaptivePortalLoginGoogle.apk+NetworkStackGoogle.apk+com.google.android.resolv.apex+com.google.android.tethering.apex]" 394 }, 395 { 396 "name": "CtsTetheringTestLatestSdk[CaptivePortalLoginGoogle.apk+NetworkStackGoogle.apk+com.google.android.resolv.apex+com.google.android.tethering.apex]", 397 "options": [ 398 { 399 "exclude-annotation": "com.android.testutils.NetworkStackModuleTest" 400 } 401 ] 402 } 403 ], 404 "mainline-postsubmit": [ 405 // Tests on physical devices with SIM cards: postsubmit only for capacity constraints 406 { 407 "name": "CtsNetTestCasesLatestSdk[CaptivePortalLoginGoogle.apk+NetworkStackGoogle.apk+com.google.android.resolv.apex+com.google.android.tethering.apex]", 408 "keywords": ["sim"] 409 }, 410 { 411 "name": "CtsTetheringTestLatestSdk[CaptivePortalLoginGoogle.apk+NetworkStackGoogle.apk+com.google.android.resolv.apex+com.google.android.tethering.apex]", 412 "keywords": ["sim"], 413 "options": [ 414 { 415 "exclude-annotation": "com.android.testutils.NetworkStackModuleTest" 416 } 417 ] 418 }, 419 // Postsubmit on virtual devices to monitor flakiness of @SkipMainlinePresubmit methods 420 { 421 "name": "CtsNetTestCasesLatestSdk[CaptivePortalLoginGoogle.apk+NetworkStackGoogle.apk+com.google.android.resolv.apex+com.google.android.tethering.apex]", 422 "options": [ 423 { 424 "exclude-annotation": "androidx.test.filters.RequiresDevice" 425 } 426 ] 427 } 428 ], 429 "imports": [ 430 { 431 "path": "frameworks/base/core/java/android/net" 432 }, 433 { 434 "path": "frameworks/opt/net/ethernet" 435 }, 436 { 437 "path": "packages/modules/NetworkStack" 438 }, 439 { 440 "path": "packages/modules/CaptivePortalLogin" 441 }, 442 { 443 "path": "external/cronet" 444 }, 445 { 446 "path": "vendor/xts/gts-tests/hostsidetests/networkstack" 447 } 448 ] 449} 450