1# Copyright (C) 2020 The Dagger Authors. 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# Description: 15# Tests for internal code for implementing Hilt processors. 16 17load("//third_party/kotlin/build_extensions:rules.bzl", "kt_android_library") 18 19package(default_visibility = ["//:src"]) 20 21android_library( 22 name = "resources", 23 manifest = "AndroidManifest.xml", 24 resource_files = glob(["res/**"]), 25 deps = [ 26 "@maven//:androidx_navigation_navigation_common", 27 "@maven//:androidx_navigation_navigation_fragment", 28 "@maven//:androidx_navigation_navigation_runtime", 29 ], 30) 31 32# Checks that multiple test roots can be compiled together. This library 33# only compiles the sources. they are tested in the android_local_tests. 34android_library( 35 name = "multi_test_root_tests", 36 srcs = [ 37 "ActivityScenarioRuleTest.java", 38 "CustomTestApplicationTest.java", 39 "MultiTestRoot1Test.java", 40 "MultiTestRoot2Test.java", 41 "MultiTestRootExternalModules.java", 42 ], 43 exports_manifest = 1, 44 javacopts = ["-Adagger.hilt.shareTestComponents=true"], 45 manifest = "AndroidManifest.xml", 46 deps = [ 47 "//:android_local_test_exports", 48 "//:dagger_with_compiler", 49 "//java/dagger/hilt:entry_point", 50 "//java/dagger/hilt:install_in", 51 "//java/dagger/hilt/android:android_entry_point", 52 "//java/dagger/hilt/android:package_info", 53 "//java/dagger/hilt/android/testing:bind_value", 54 "//java/dagger/hilt/android/testing:custom_test_application", 55 "//java/dagger/hilt/android/testing:hilt_android_test", 56 "//java/dagger/hilt/android/testing:uninstall_modules", 57 "//third_party/java/truth", 58 "@maven//:androidx_test_core", 59 "@maven//:androidx_test_ext_junit", 60 "@maven//:junit_junit", 61 "@maven//:org_robolectric_robolectric", 62 ], 63) 64 65android_local_test( 66 name = "ActivityScenarioRuleTest", 67 manifest_values = { 68 "minSdkVersion": "14", 69 }, 70 deps = [ 71 ":multi_test_root_tests", 72 ], 73) 74 75android_local_test( 76 name = "CustomTestApplicationTest", 77 manifest_values = { 78 "minSdkVersion": "14", 79 }, 80 deps = [ 81 ":multi_test_root_tests", 82 ], 83) 84 85android_local_test( 86 name = "MultiTestRoot1Test", 87 manifest_values = { 88 "minSdkVersion": "14", 89 }, 90 deps = [ 91 ":multi_test_root_tests", 92 ], 93) 94 95android_local_test( 96 name = "MultiTestRoot2Test", 97 manifest_values = { 98 "minSdkVersion": "14", 99 }, 100 deps = [ 101 ":multi_test_root_tests", 102 ], 103) 104 105android_local_test( 106 name = "AliasOfMultipleScopesTest", 107 srcs = ["AliasOfMultipleScopesTest.java"], 108 manifest = "AndroidManifest.xml", 109 manifest_values = { 110 "minSdkVersion": "14", 111 }, 112 deps = [ 113 "//:android_local_test_exports", 114 "//java/dagger/hilt:define_component", 115 "//java/dagger/hilt:entry_point", 116 "//java/dagger/hilt:install_in", 117 "//java/dagger/hilt/android:android_entry_point", 118 "//java/dagger/hilt/android:package_info", 119 "//java/dagger/hilt/android/qualifiers", 120 "//java/dagger/hilt/android/scopes", 121 "//java/dagger/hilt/android/testing:hilt_android_rule", 122 "//java/dagger/hilt/android/testing:hilt_android_test", 123 "//java/dagger/hilt/migration:alias_of", 124 "//third_party/java/truth", 125 ], 126) 127 128android_library( 129 name = "custom_inject_classes", 130 srcs = ["CustomInjectClasses.java"], 131 deps = [ 132 "//:android_local_test_exports", 133 "//:dagger_with_compiler", 134 "//java/dagger/hilt:install_in", 135 "//java/dagger/hilt/android:hilt_android_app", 136 "//java/dagger/hilt/android:package_info", 137 "//java/dagger/hilt/android/migration:custom_inject", 138 "//third_party/java/jsr330_inject", 139 ], 140) 141 142android_local_test( 143 name = "CustomInjectTest", 144 size = "small", 145 srcs = ["CustomInjectTest.java"], 146 manifest_values = { 147 "minSdkVersion": "14", 148 }, 149 deps = [ 150 ":custom_inject_classes", 151 "//:android_local_test_exports", 152 "//java/dagger/hilt/android:package_info", 153 "//third_party/java/truth", 154 ], 155) 156 157android_local_test( 158 name = "EarlyEntryPointHiltAndroidAppRuntimeTest", 159 size = "small", 160 srcs = ["EarlyEntryPointHiltAndroidAppRuntimeTest.java"], 161 manifest_values = { 162 "minSdkVersion": "14", 163 }, 164 deps = [ 165 ":EarlyEntryPointHiltAndroidAppRuntimeClasses", 166 "//:android_local_test_exports", 167 "//java/dagger/hilt:entry_point", 168 "//java/dagger/hilt/android:early_entry_point", 169 "//java/dagger/hilt/android:package_info", 170 "//third_party/java/truth", 171 "@maven//:junit_junit", 172 ], 173) 174 175android_library( 176 name = "EarlyEntryPointHiltAndroidAppRuntimeClasses", 177 srcs = ["EarlyEntryPointHiltAndroidAppRuntimeClasses.java"], 178 deps = [ 179 "//:android_local_test_exports", 180 "//java/dagger/hilt:entry_point", 181 "//java/dagger/hilt/android:early_entry_point", 182 "//java/dagger/hilt/android:hilt_android_app", 183 "//java/dagger/hilt/android:package_info", 184 ], 185) 186 187android_local_test( 188 name = "EarlyEntryPointHiltAndroidTestRuntimeTest", 189 size = "small", 190 srcs = [ 191 "EarlyEntryPointHiltAndroidTestRuntimeClasses.java", 192 "EarlyEntryPointHiltAndroidTestRuntimeTest.java", 193 ], 194 manifest_values = { 195 "minSdkVersion": "14", 196 }, 197 deps = [ 198 "//:android_local_test_exports", 199 "//:dagger_with_compiler", 200 "//java/dagger/hilt:define_component", 201 "//java/dagger/hilt:entry_point", 202 "//java/dagger/hilt:install_in", 203 "//java/dagger/hilt/android:early_entry_point", 204 "//java/dagger/hilt/android:package_info", 205 "//java/dagger/hilt/android/testing:hilt_android_test", 206 "//third_party/java/truth", 207 ], 208) 209 210android_local_test( 211 name = "EarlyEntryPointCustomApplicationTest", 212 size = "small", 213 srcs = [ 214 "EarlyEntryPointCustomApplicationClasses.java", 215 "EarlyEntryPointCustomApplicationTest.java", 216 ], 217 manifest_values = { 218 "minSdkVersion": "14", 219 }, 220 deps = [ 221 "//:android_local_test_exports", 222 "//:dagger_with_compiler", 223 "//java/dagger/hilt:entry_point", 224 "//java/dagger/hilt:install_in", 225 "//java/dagger/hilt/android:early_entry_point", 226 "//java/dagger/hilt/android:package_info", 227 "//java/dagger/hilt/android/testing:custom_test_application", 228 "//java/dagger/hilt/android/testing:hilt_android_test", 229 "//third_party/java/truth", 230 ], 231) 232 233android_local_test( 234 name = "EarlyEntryPointNoEntryPointsDefinedTest", 235 size = "small", 236 srcs = ["EarlyEntryPointNoEntryPointsDefinedTest.java"], 237 manifest_values = { 238 "minSdkVersion": "14", 239 }, 240 deps = [ 241 "//:android_local_test_exports", 242 "//:dagger_with_compiler", 243 "//java/dagger/hilt:entry_point", 244 "//java/dagger/hilt:install_in", 245 "//java/dagger/hilt/android:early_entry_point", 246 "//java/dagger/hilt/android:package_info", 247 "//java/dagger/hilt/android/testing:hilt_android_test", 248 "//third_party/java/truth", 249 ], 250) 251 252android_local_test( 253 name = "FragmentContextOnAttachTest", 254 size = "small", 255 srcs = ["FragmentContextOnAttachTest.java"], 256 manifest_values = { 257 "minSdkVersion": "14", 258 }, 259 deps = [ 260 "//:android_local_test_exports", 261 "//:dagger_with_compiler", 262 "//java/dagger/hilt:install_in", 263 "//java/dagger/hilt/android:android_entry_point", 264 "//java/dagger/hilt/android:package_info", 265 "//java/dagger/hilt/android/flags:fragment_get_context_fix", 266 "//java/dagger/hilt/android/testing:bind_value", 267 "//java/dagger/hilt/android/testing:hilt_android_test", 268 "//third_party/java/truth", 269 ], 270) 271 272android_local_test( 273 name = "AndroidEntryPointBaseClassTest", 274 size = "small", 275 srcs = [ 276 "AndroidEntryPointBaseClassOtherPkg.java", 277 "AndroidEntryPointBaseClassTest.java", 278 ], 279 javacopts = [ 280 # Note: Hilt's bytecode injection doesn't work in Blaze but we disable 281 # superclass validation in this test just to verify everything builds. 282 "-Adagger.hilt.android.internal.disableAndroidSuperclassValidation=true", 283 ], 284 manifest_values = { 285 "minSdkVersion": "14", 286 }, 287 deps = [ 288 "//:android_local_test_exports", 289 "//java/dagger/hilt:install_in", 290 "//java/dagger/hilt/android:android_entry_point", 291 "//java/dagger/hilt/android:package_info", 292 "//third_party/java/truth", 293 ], 294) 295 296android_local_test( 297 name = "ModuleTest", 298 srcs = ["ModuleTest.java"], 299 manifest_values = { 300 "minSdkVersion": "14", 301 }, 302 deps = [ 303 "//:android_local_test_exports", 304 "//:dagger_with_compiler", 305 "//java/dagger/hilt:install_in", 306 "//java/dagger/hilt/android:package_info", 307 "//java/dagger/hilt/android/testing:hilt_android_test", 308 "//third_party/java/jsr330_inject", 309 "//third_party/java/truth", 310 ], 311) 312 313android_local_test( 314 name = "InjectionTest", 315 size = "small", 316 srcs = ["InjectionTest.java"], 317 manifest_values = { 318 "minSdkVersion": "14", 319 }, 320 deps = [ 321 "//:android_local_test_exports", 322 "//:dagger_with_compiler", 323 "//java/dagger/hilt:install_in", 324 "//java/dagger/hilt/android:android_entry_point", 325 "//java/dagger/hilt/android:package_info", 326 "//java/dagger/hilt/android/testing:hilt_android_test", 327 "//third_party/java/jsr330_inject", 328 "//third_party/java/truth", 329 ], 330) 331 332# InstallInObjectModuleTest and InternalKtModuleTest are excluded because they don't build 333# due to https://github.com/bazelbuild/bazel/issues/16087 334 335android_local_test( 336 name = "DefaultViewModelFactoryTest", 337 srcs = ["DefaultViewModelFactoryTest.java"], 338 manifest = "AndroidManifest.xml", 339 manifest_values = { 340 "minSdkVersion": "14", 341 }, 342 deps = [ 343 "//:android_local_test_exports", 344 "//:dagger_with_compiler", 345 "//java/dagger/hilt:install_in", 346 "//java/dagger/hilt/android:android_entry_point", 347 "//java/dagger/hilt/android:package_info", 348 "//java/dagger/hilt/android/lifecycle:hilt_view_model", 349 "//java/dagger/hilt/android/testing:bind_value", 350 "//java/dagger/hilt/android/testing:hilt_android_test", 351 "//third_party/java/jsr330_inject", 352 "//third_party/java/truth", 353 "@maven//:androidx_activity_activity", 354 "@maven//:androidx_fragment_fragment", 355 "@maven//:androidx_lifecycle_lifecycle_common", 356 "@maven//:androidx_lifecycle_lifecycle_viewmodel", 357 "@maven//:androidx_lifecycle_lifecycle_viewmodel_savedstate", 358 "@maven//:junit_junit", 359 ], 360) 361 362android_local_test( 363 name = "PackagePrivateConstructorTest", 364 srcs = ["PackagePrivateConstructorTest.java"], 365 manifest = "AndroidManifest.xml", 366 manifest_values = { 367 "minSdkVersion": "14", 368 }, 369 deps = [ 370 "//:android_local_test_exports", 371 "//java/dagger/hilt/android:android_entry_point", 372 "//java/dagger/hilt/android:package_info", 373 "//java/dagger/hilt/android/testing:hilt_android_test", 374 "//javatests/dagger/hilt/android/testsubpackage:PackagePrivateConstructorTestClasses", 375 ], 376) 377 378android_local_test( 379 name = "QualifierInKotlinFieldsTest", 380 srcs = ["QualifierInKotlinFieldsTest.java"], 381 manifest = "AndroidManifest.xml", 382 manifest_values = { 383 "minSdkVersion": "14", 384 }, 385 deps = [ 386 ":QualifierInFieldsClass", 387 "//:android_local_test_exports", 388 "//:dagger_with_compiler", 389 "//java/dagger/hilt/android:android_entry_point", 390 "//java/dagger/hilt/android:package_info", 391 "//java/dagger/hilt/android/testing:hilt_android_test", 392 "//third_party/java/jsr330_inject", 393 "//third_party/java/truth", 394 "@maven//:androidx_activity_activity", 395 "@maven//:androidx_fragment_fragment", 396 "@maven//:androidx_lifecycle_lifecycle_common", 397 "@maven//:androidx_lifecycle_lifecycle_viewmodel", 398 "@maven//:androidx_lifecycle_lifecycle_viewmodel_savedstate", 399 "@maven//:junit_junit", 400 ], 401) 402 403kt_android_library( 404 name = "QualifierInFieldsClass", 405 testonly = True, 406 srcs = ["QualifierInFieldsClass.kt"], 407 deps = [ 408 "//:dagger_with_compiler", 409 "//java/dagger/hilt/android/qualifiers", 410 ], 411) 412 413android_local_test( 414 name = "OptionalInjectWithHiltTest", 415 size = "small", 416 srcs = [ 417 "OptionalInjectWithHiltTest.java", 418 ], 419 manifest = "AndroidManifest.xml", 420 manifest_values = { 421 "minSdkVersion": "14", 422 }, 423 deps = [ 424 ":OptionalInjectTestClasses", 425 "//:android_local_test_exports", 426 "//java/dagger/hilt/android:android_entry_point", 427 "//java/dagger/hilt/android:package_info", 428 "//java/dagger/hilt/android/migration:optional_inject", 429 "//java/dagger/hilt/android/testing:hilt_android_test", 430 "//third_party/java/truth", 431 "@maven//:androidx_activity_activity", 432 "@maven//:androidx_fragment_fragment", 433 "@maven//:androidx_lifecycle_lifecycle_common", 434 "@maven//:androidx_lifecycle_lifecycle_viewmodel", 435 "@maven//:androidx_lifecycle_lifecycle_viewmodel_savedstate", 436 ], 437) 438 439android_local_test( 440 name = "OptionalInjectWithoutHiltTest", 441 size = "small", 442 srcs = [ 443 "OptionalInjectWithoutHiltTest.java", 444 ], 445 manifest = "AndroidManifest.xml", 446 manifest_values = { 447 "minSdkVersion": "14", 448 }, 449 deps = [ 450 ":OptionalInjectTestClasses", 451 "//:android_local_test_exports", 452 "//java/dagger/hilt/android:package_info", 453 "//java/dagger/hilt/android/migration:optional_inject", 454 "//third_party/java/truth", 455 "@maven//:androidx_activity_activity", 456 "@maven//:androidx_fragment_fragment", 457 "@maven//:androidx_lifecycle_lifecycle_common", 458 "@maven//:androidx_lifecycle_lifecycle_viewmodel", 459 "@maven//:androidx_lifecycle_lifecycle_viewmodel_savedstate", 460 ], 461) 462 463android_library( 464 name = "OptionalInjectTestClasses", 465 srcs = ["OptionalInjectTestClasses.java"], 466 manifest = "AndroidManifest.xml", 467 deps = [ 468 "//:dagger_with_compiler", 469 "//java/dagger/hilt:install_in", 470 "//java/dagger/hilt/android:android_entry_point", 471 "//java/dagger/hilt/android:package_info", 472 "//java/dagger/hilt/android/migration:optional_inject", 473 "//third_party/java/jsr330_inject", 474 "@maven//:androidx_activity_activity", 475 "@maven//:androidx_fragment_fragment", 476 "@maven//:androidx_lifecycle_lifecycle_common", 477 "@maven//:androidx_lifecycle_lifecycle_viewmodel", 478 "@maven//:androidx_lifecycle_lifecycle_viewmodel_savedstate", 479 ], 480) 481 482android_local_test( 483 name = "ActivityRetainedClearedListenerTest", 484 srcs = ["ActivityRetainedClearedListenerTest.java"], 485 manifest = "AndroidManifest.xml", 486 manifest_values = { 487 "minSdkVersion": "14", 488 }, 489 deps = [ 490 "//:android_local_test_exports", 491 "//:dagger_with_compiler", 492 "//java/dagger/hilt:install_in", 493 "//java/dagger/hilt/android:activity_retained_lifecycle", 494 "//java/dagger/hilt/android:android_entry_point", 495 "//java/dagger/hilt/android:package_info", 496 "//java/dagger/hilt/android/testing:hilt_android_test", 497 "//third_party/java/jsr330_inject", 498 "//third_party/java/truth", 499 "@maven//:androidx_activity_activity", 500 "@maven//:androidx_fragment_fragment", 501 "@maven//:androidx_lifecycle_lifecycle_common", 502 "@maven//:androidx_lifecycle_lifecycle_viewmodel", 503 "@maven//:androidx_lifecycle_lifecycle_viewmodel_savedstate", 504 "@maven//:junit_junit", 505 ], 506) 507 508android_local_test( 509 name = "ActivityInjectedViewModelTest", 510 srcs = ["ActivityInjectedViewModelTest.java"], 511 manifest = "AndroidManifest.xml", 512 manifest_values = { 513 "minSdkVersion": "14", 514 }, 515 deps = [ 516 "//:android_local_test_exports", 517 "//:dagger_with_compiler", 518 "//java/dagger/hilt:install_in", 519 "//java/dagger/hilt/android:android_entry_point", 520 "//java/dagger/hilt/android:package_info", 521 "//java/dagger/hilt/android/testing:hilt_android_test", 522 "//third_party/java/jsr330_inject", 523 "//third_party/java/truth", 524 "@maven//:androidx_activity_activity", 525 "@maven//:androidx_fragment_fragment", 526 "@maven//:androidx_lifecycle_lifecycle_common", 527 "@maven//:androidx_lifecycle_lifecycle_viewmodel", 528 "@maven//:androidx_lifecycle_lifecycle_viewmodel_savedstate", 529 "@maven//:junit_junit", 530 ], 531) 532 533android_local_test( 534 name = "ViewModelScopedTest", 535 srcs = ["ViewModelScopedTest.java"], 536 manifest = "AndroidManifest.xml", 537 manifest_values = { 538 "minSdkVersion": "14", 539 }, 540 deps = [ 541 "//:android_local_test_exports", 542 "//:dagger_with_compiler", 543 "//java/dagger/hilt:install_in", 544 "//java/dagger/hilt/android:android_entry_point", 545 "//java/dagger/hilt/android:package_info", 546 "//java/dagger/hilt/android:view_model_lifecycle", 547 "//java/dagger/hilt/android/lifecycle:hilt_view_model", 548 "//java/dagger/hilt/android/scopes", 549 "//java/dagger/hilt/android/testing:hilt_android_test", 550 "//third_party/java/jsr330_inject", 551 "//third_party/java/truth", 552 "@maven//:androidx_activity_activity", 553 "@maven//:androidx_fragment_fragment", 554 "@maven//:androidx_lifecycle_lifecycle_common", 555 "@maven//:androidx_lifecycle_lifecycle_viewmodel", 556 "@maven//:androidx_lifecycle_lifecycle_viewmodel_savedstate", 557 "@maven//:junit_junit", 558 ], 559) 560 561android_local_test( 562 name = "ViewModelAssistedTest", 563 srcs = ["ViewModelAssistedTest.java"], 564 javacopts = ["-Adagger.hilt.enableAssistedInjectViewModels=true"], 565 manifest = "AndroidManifest.xml", 566 manifest_values = { 567 "minSdkVersion": "14", 568 }, 569 deps = [ 570 "//:android_local_test_exports", 571 "//:dagger_with_compiler", 572 "//java/dagger/hilt:install_in", 573 "//java/dagger/hilt/android:android_entry_point", 574 "//java/dagger/hilt/android:package_info", 575 "//java/dagger/hilt/android:view_model_lifecycle", 576 "//java/dagger/hilt/android/internal/lifecycle", 577 "//java/dagger/hilt/android/lifecycle:hilt_view_model", 578 "//java/dagger/hilt/android/lifecycle:hilt_view_model_extensions", 579 "//java/dagger/hilt/android/scopes", 580 "//java/dagger/hilt/android/testing:hilt_android_test", 581 "//third_party/java/jsr330_inject", 582 "//third_party/java/truth", 583 "@maven//:androidx_activity_activity", 584 "@maven//:androidx_fragment_fragment", 585 "@maven//:androidx_lifecycle_lifecycle_common", 586 "@maven//:androidx_lifecycle_lifecycle_viewmodel", 587 "@maven//:androidx_lifecycle_lifecycle_viewmodel_savedstate", 588 "@maven//:androidx_test_core", 589 "@maven//:junit_junit", 590 "@maven//:org_jetbrains_kotlin_kotlin_stdlib", 591 ], 592) 593 594android_local_test( 595 name = "ViewModelSavedStateOwnerTest", 596 srcs = ["ViewModelSavedStateOwnerTest.java"], 597 manifest = "AndroidManifest.xml", 598 manifest_values = { 599 "minSdkVersion": "14", 600 }, 601 deps = [ 602 ":resources", 603 "//:android_local_test_exports", 604 "//:dagger_with_compiler", 605 "//java/dagger/hilt:install_in", 606 "//java/dagger/hilt/android:android_entry_point", 607 "//java/dagger/hilt/android:package_info", 608 "//java/dagger/hilt/android:unstable_api", 609 "//java/dagger/hilt/android/lifecycle:activity_retained_saved_state", 610 "//java/dagger/hilt/android/lifecycle:hilt_view_model", 611 "//java/dagger/hilt/android/scopes", 612 "//java/dagger/hilt/android/testing:hilt_android_test", 613 "//third_party/java/jsr330_inject", 614 "//third_party/java/truth", 615 "@maven//:androidx_activity_activity", 616 "@maven//:androidx_annotation_annotation_experimental", 617 "@maven//:androidx_fragment_fragment", 618 "@maven//:androidx_lifecycle_lifecycle_common", 619 "@maven//:androidx_lifecycle_lifecycle_viewmodel", 620 "@maven//:androidx_lifecycle_lifecycle_viewmodel_savedstate", 621 "@maven//:androidx_navigation_navigation_common", 622 "@maven//:androidx_navigation_navigation_fragment", 623 "@maven//:androidx_navigation_navigation_runtime", 624 "@maven//:junit_junit", 625 ], 626) 627 628android_local_test( 629 name = "ViewModelWithBaseTest", 630 srcs = ["ViewModelWithBaseTest.java"], 631 manifest = "AndroidManifest.xml", 632 manifest_values = { 633 "minSdkVersion": "14", 634 }, 635 deps = [ 636 "//:android_local_test_exports", 637 "//:dagger_with_compiler", 638 "//java/dagger/hilt:install_in", 639 "//java/dagger/hilt/android:android_entry_point", 640 "//java/dagger/hilt/android:package_info", 641 "//java/dagger/hilt/android/lifecycle:hilt_view_model", 642 "//java/dagger/hilt/android/testing:hilt_android_test", 643 "//third_party/java/jsr330_inject", 644 "//third_party/java/truth", 645 "@maven//:androidx_activity_activity", 646 "@maven//:androidx_fragment_fragment", 647 "@maven//:androidx_lifecycle_lifecycle_common", 648 "@maven//:androidx_lifecycle_lifecycle_viewmodel", 649 "@maven//:androidx_lifecycle_lifecycle_viewmodel_savedstate", 650 "@maven//:junit_junit", 651 ], 652) 653 654android_local_test( 655 name = "ActivityInjectedSavedStateViewModelTest", 656 srcs = ["ActivityInjectedSavedStateViewModelTest.java"], 657 manifest = "AndroidManifest.xml", 658 manifest_values = { 659 "minSdkVersion": "14", 660 }, 661 deps = [ 662 "//:android_local_test_exports", 663 "//:dagger_with_compiler", 664 "//java/dagger/hilt:install_in", 665 "//java/dagger/hilt/android:android_entry_point", 666 "//java/dagger/hilt/android:package_info", 667 "//java/dagger/hilt/android/testing:hilt_android_test", 668 "//third_party/java/jsr330_inject", 669 "//third_party/java/truth", 670 "@maven//:junit_junit", 671 ], 672) 673 674android_library( 675 name = "uses_component_common", 676 srcs = [ 677 "UsesComponentHelper.java", 678 "UsesComponentTestClasses.java", 679 ], 680 deps = [ 681 "//:dagger_with_compiler", 682 "//java/dagger/hilt:define_component", 683 "//java/dagger/hilt:entry_point", 684 "//java/dagger/hilt:install_in", 685 "//java/dagger/hilt/android/components", 686 "//third_party/java/jsr330_inject", 687 ], 688) 689 690# This has to be split into a separate target in order to avoid 691# being compiled as "test bindings" in the compilation unit of 692# the test class itself. 693android_library( 694 name = "uses_component_test_module", 695 srcs = ["UsesComponentTestModule.java"], 696 deps = [ 697 ":uses_component_common", 698 "//:dagger_with_compiler", 699 "//java/dagger/hilt:install_in", 700 "//java/dagger/hilt/android/components", 701 ], 702) 703 704android_library( 705 name = "shared_component_test_classes", 706 srcs = [ 707 "UsesLocalComponentTestBindingsTest.java", 708 "UsesLocalComponentUninstallModuleTest.java", 709 "UsesSharedComponent1Test.java", 710 "UsesSharedComponent2Test.java", 711 "UsesSharedComponentEnclosedTest.java", 712 "//javatests/dagger/hilt/android/testsubpackage:UsesLocalComponentTestBindingsTest.java", 713 "//javatests/dagger/hilt/android/testsubpackage:UsesSharedComponent1Test.java", 714 ], 715 exports_manifest = 1, 716 javacopts = ["-Adagger.hilt.shareTestComponents=true"], 717 manifest = "AndroidManifest.xml", 718 deps = [ 719 ":uses_component_common", 720 ":uses_component_test_module", 721 "//:android_local_test_exports", 722 "//:dagger_with_compiler", 723 "//java/dagger/hilt:entry_point", 724 "//java/dagger/hilt:install_in", 725 "//java/dagger/hilt/android:android_entry_point", 726 "//java/dagger/hilt/android:hilt_android_app", 727 "//java/dagger/hilt/android:package_info", 728 "//java/dagger/hilt/android/testing:bind_value", 729 "//java/dagger/hilt/android/testing:custom_test_application", 730 "//java/dagger/hilt/android/testing:hilt_android_test", 731 "//java/dagger/hilt/android/testing:uninstall_modules", 732 "//third_party/java/jsr330_inject", 733 "//third_party/java/truth", 734 "@maven//:androidx_test_core", 735 "@maven//:androidx_test_ext_junit", 736 "@maven//:junit_junit", 737 "@maven//:org_robolectric_annotations", 738 "@maven//:org_robolectric_robolectric", 739 ], 740) 741 742# Separate target that uses @TestInstallIn to replace the global binding 743android_library( 744 name = "test_install_in_test_classes", 745 srcs = [ 746 "TestInstallInModules.java", 747 "UsesSharedComponentTestInstallInTest.java", 748 ], 749 javacopts = ["-Adagger.hilt.shareTestComponents=true"], 750 deps = [ 751 ":uses_component_common", 752 ":uses_component_test_module", 753 "//:android_local_test_exports", 754 "//:dagger_with_compiler", 755 "//java/dagger/hilt:install_in", 756 "//java/dagger/hilt/android:hilt_android_app", 757 "//java/dagger/hilt/android:package_info", 758 "//java/dagger/hilt/android/components", 759 "//java/dagger/hilt/android/internal/lifecycle", # b/247145646 760 "//java/dagger/hilt/android/testing:bind_value", 761 "//java/dagger/hilt/android/testing:hilt_android_test", 762 "//java/dagger/hilt/testing:test_install_in", 763 "//third_party/java/jsr330_inject", 764 "//third_party/java/truth", 765 "@maven//:androidx_test_core", 766 "@maven//:androidx_test_ext_junit", 767 "@maven//:junit_junit", 768 "@maven//:org_robolectric_annotations", 769 "@maven//:org_robolectric_robolectric", 770 ], 771) 772 773android_local_test( 774 name = "UsesLocalComponentTestBindingsTest", 775 manifest_values = { 776 "minSdkVersion": "14", 777 }, 778 deps = [ 779 ":shared_component_test_classes", 780 ], 781) 782 783android_local_test( 784 name = "UsesLocalComponentUninstallModuleTest", 785 manifest_values = { 786 "minSdkVersion": "14", 787 }, 788 deps = [ 789 ":shared_component_test_classes", 790 ], 791) 792 793android_local_test( 794 name = "UsesSharedComponent1Test", 795 manifest_values = { 796 "minSdkVersion": "14", 797 }, 798 deps = [ 799 ":shared_component_test_classes", 800 ], 801) 802 803android_local_test( 804 name = "UsesSharedComponent2Test", 805 manifest_values = { 806 "minSdkVersion": "14", 807 }, 808 deps = [ 809 ":shared_component_test_classes", 810 ], 811) 812 813android_local_test( 814 name = "UsesSharedComponentEnclosedTest", 815 manifest_values = { 816 "minSdkVersion": "14", 817 }, 818 deps = [ 819 ":shared_component_test_classes", 820 ], 821) 822 823android_local_test( 824 name = "UsesSharedComponentTestInstallInTest", 825 manifest_values = { 826 "minSdkVersion": "14", 827 }, 828 deps = [ 829 ":test_install_in_test_classes", 830 ], 831) 832