| load("@rules_java//java:defs.bzl", "java_library", "java_test") | 
 |  | 
 | package( | 
 |     default_testonly = 1, | 
 |     default_visibility = ["//src:__subpackages__"], | 
 | ) | 
 |  | 
 | filegroup( | 
 |     name = "srcs", | 
 |     testonly = 0, | 
 |     srcs = glob(["**"]), | 
 |     visibility = ["//src/test/java/com/google/devtools/build/lib:__pkg__"], | 
 | ) | 
 |  | 
 | # Tests that are broken out from the SkyframeTests target into separate targets. | 
 | EXCLUDED_FROM_SKYFRAME_TESTS = [ | 
 |     "LocalDiffAwarenessTest.java", | 
 |     "LocalDiffAwarenessIntegrationTest.java", | 
 |     "PrepareDepsOfTargetsUnderDirectoryFunctionTest.java",  # b/179148968 | 
 |     "SkyframeErrorProcessorTest.java", | 
 |     "BuildDriverFunctionTest.java", | 
 | ] | 
 |  | 
 | java_library( | 
 |     name = "testutil", | 
 |     srcs = glob([ | 
 |         "util/*.java", | 
 |     ]), | 
 |     tags = ["skyframe"], | 
 |     visibility = ["//src/test/java/com/google/devtools/build/lib:__subpackages__"], | 
 |     deps = [ | 
 |         "//src/main/java/com/google/devtools/build/lib/actions", | 
 |         "//src/main/java/com/google/devtools/build/lib/actions:action_lookup_data", | 
 |         "//src/main/java/com/google/devtools/build/lib/actions:artifacts", | 
 |         "//src/main/java/com/google/devtools/build/lib/analysis:config/build_configuration", | 
 |         "//src/main/java/com/google/devtools/build/lib/analysis:configured_target", | 
 |         "//src/main/java/com/google/devtools/build/lib/analysis:configured_target_value", | 
 |         "//src/main/java/com/google/devtools/build/lib/bazel:main", | 
 |         "//src/main/java/com/google/devtools/build/lib/bazel/rules", | 
 |         "//src/main/java/com/google/devtools/build/lib/clock", | 
 |         "//src/main/java/com/google/devtools/build/lib/cmdline", | 
 |         "//src/main/java/com/google/devtools/build/lib/collect", | 
 |         "//src/main/java/com/google/devtools/build/lib/concurrent", | 
 |         "//src/main/java/com/google/devtools/build/lib/events", | 
 |         "//src/main/java/com/google/devtools/build/lib/packages", | 
 |         "//src/main/java/com/google/devtools/build/lib/rules/platform", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:configured_target_key", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:metadata_consumer_for_metrics", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:package_value", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:sky_functions", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:skyframe_cluster", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe/serialization/autocodec", | 
 |         "//src/main/java/com/google/devtools/build/lib/util:abrupt_exit_exception", | 
 |         "//src/main/java/com/google/devtools/build/lib/util/io", | 
 |         "//src/main/java/com/google/devtools/build/lib/vfs", | 
 |         "//src/main/java/com/google/devtools/build/skyframe", | 
 |         "//src/main/java/com/google/devtools/build/skyframe:skyframe-objects", | 
 |         "//src/test/java/com/google/devtools/build/lib/actions/util", | 
 |         "//src/test/java/com/google/devtools/build/lib/events:testutil", | 
 |         "//src/test/java/com/google/devtools/build/lib/packages:testutil", | 
 |         "//src/test/java/com/google/devtools/build/lib/testutil", | 
 |         "//src/test/java/com/google/devtools/build/lib/testutil:JunitUtils", | 
 |         "//src/test/java/com/google/devtools/build/lib/testutil:TestPackageFactoryBuilderFactory", | 
 |         "//src/test/java/com/google/devtools/build/lib/vfs/util", | 
 |         "//src/test/java/com/google/devtools/build/skyframe:testutil", | 
 |         "//third_party:guava", | 
 |         "//third_party:guava-testlib", | 
 |         "//third_party:jsr305", | 
 |         "//third_party:junit4", | 
 |         "//third_party:truth", | 
 |         "@com_google_testparameterinjector//:testparameterinjector", | 
 |     ], | 
 | ) | 
 |  | 
 | java_test( | 
 |     name = "SkyframeTests", | 
 |     srcs = select({ | 
 |         "//src/conditions:darwin": glob( | 
 |             ["*.java"], | 
 |             exclude = EXCLUDED_FROM_SKYFRAME_TESTS, | 
 |         ), | 
 |         "//conditions:default": glob( | 
 |             ["*.java"], | 
 |             exclude = ["MacOSXFsEventsDiffAwarenessTest.java"] + EXCLUDED_FROM_SKYFRAME_TESTS, | 
 |         ), | 
 |     }), | 
 |     exec_compatible_with = ["//:highcpu_machine"], | 
 |     shard_count = 20, | 
 |     tags = ["skyframe"], | 
 |     test_class = "com.google.devtools.build.lib.AllTests", | 
 |     runtime_deps = [ | 
 |         "//src/test/java/com/google/devtools/build/lib:test_runner", | 
 |     ], | 
 |     deps = select({ | 
 |         "//src/conditions:darwin": [ | 
 |             "//src/main/java/com/google/devtools/build/lib/skyframe:local_diff_awareness", | 
 |         ], | 
 |         "//conditions:default": [], | 
 |     }) + [ | 
 |         ":testutil", | 
 |         "//src/main/java/com/google/devtools/build/lib/analysis:config/toolchain_type_requirement", | 
 |         "//src/main/java/com/google/devtools/build/lib/analysis:file_provider", | 
 |         "//src/main/java/com/google/devtools/build/lib/bazel/bzlmod:common", | 
 |         "//src/main/java/com/google/devtools/build/lib/bazel/bzlmod:resolution_impl", | 
 |         "//src/main/java/com/google/devtools/build/lib/bazel/repository", | 
 |         "//src/main/java/com/google/devtools/build/lib/bazel/repository:repository_options", | 
 |         "//src/main/java/com/google/devtools/build/lib:build-request-options", | 
 |         "//src/main/java/com/google/devtools/build/lib:keep-going-option", | 
 |         "//src/main/java/com/google/devtools/build/lib:runtime", | 
 |         "//src/main/java/net/starlark/java/syntax", | 
 |         "//src/main/java/net/starlark/java/eval", | 
 |         "//src/main/java/com/google/devtools/build/lib/actions", | 
 |         "//src/main/java/com/google/devtools/build/lib/actions:action_lookup_data", | 
 |         "//src/main/java/com/google/devtools/build/lib/actions:package_roots", | 
 |         "//src/main/java/com/google/devtools/build/lib/actions:action_input_helper", | 
 |         "//src/main/java/com/google/devtools/build/lib/actions:action_lookup_key", | 
 |         "//src/main/java/com/google/devtools/build/lib/actions:artifacts", | 
 |         "//src/main/java/com/google/devtools/build/lib/actions:artifact_owner", | 
 |         "//src/main/java/com/google/devtools/build/lib/actions:fileset_output_symlink", | 
 |         "//src/main/java/com/google/devtools/build/lib/actions:file_metadata", | 
 |         "//src/main/java/com/google/devtools/build/lib/actions:middleman_type", | 
 |         "//src/main/java/com/google/devtools/build/lib/actions:localhost_capacity", | 
 |         "//src/main/java/com/google/devtools/build/lib/actions:resource_manager", | 
 |         "//src/main/java/com/google/devtools/build/lib/actions:thread_state_receiver", | 
 |         "//src/main/java/com/google/devtools/build/lib/analysis:actions/custom_command_line", | 
 |         "//src/main/java/com/google/devtools/build/lib/analysis:actions/spawn_action_template", | 
 |         "//src/main/java/com/google/devtools/build/lib/analysis:analysis_cluster", | 
 |         "//src/main/java/com/google/devtools/build/lib/analysis:analysis_options", | 
 |         "//src/main/java/com/google/devtools/build/lib/analysis:blaze_directories", | 
 |         "//src/main/java/com/google/devtools/build/lib/analysis:config/build_configuration", | 
 |         "//src/main/java/com/google/devtools/build/lib/analysis:config/build_options", | 
 |         "//src/main/java/com/google/devtools/build/lib/analysis:config/compilation_mode", | 
 |         "//src/main/java/com/google/devtools/build/lib/analysis:config/core_options", | 
 |         "//src/main/java/com/google/devtools/build/lib/analysis:config/fragment", | 
 |         "//src/main/java/com/google/devtools/build/lib/analysis:config/fragment_class_set", | 
 |         "//src/main/java/com/google/devtools/build/lib/analysis:config/fragment_options", | 
 |         "//src/main/java/com/google/devtools/build/lib/analysis:config/transition_factories", | 
 |         "//src/main/java/com/google/devtools/build/lib/analysis:config/transitions/composing_transition", | 
 |         "//src/main/java/com/google/devtools/build/lib/analysis:config/transitions/configuration_transition", | 
 |         "//src/main/java/com/google/devtools/build/lib/analysis:config/transitions/no_transition", | 
 |         "//src/main/java/com/google/devtools/build/lib/analysis:config/transitions/patch_transition", | 
 |         "//src/main/java/com/google/devtools/build/lib/analysis:config/transitions/split_transition", | 
 |         "//src/main/java/com/google/devtools/build/lib/analysis:config/transitions/transition_factory", | 
 |         "//src/main/java/com/google/devtools/build/lib/analysis:configured_target", | 
 |         "//src/main/java/com/google/devtools/build/lib/analysis:configured_target_value", | 
 |         "//src/main/java/com/google/devtools/build/lib/analysis:dependency", | 
 |         "//src/main/java/com/google/devtools/build/lib/analysis:dependency_kind", | 
 |         "//src/main/java/com/google/devtools/build/lib/analysis:platform_configuration", | 
 |         "//src/main/java/com/google/devtools/build/lib/analysis:platform_options", | 
 |         "//src/main/java/com/google/devtools/build/lib/analysis:server_directories", | 
 |         "//src/main/java/com/google/devtools/build/lib/analysis:target_and_configuration", | 
 |         "//src/main/java/com/google/devtools/build/lib/analysis:test/test_configuration", | 
 |         "//src/main/java/com/google/devtools/build/lib/analysis:toolchain_collection", | 
 |         "//src/main/java/com/google/devtools/build/lib/analysis:toolchain_context", | 
 |         "//src/main/java/com/google/devtools/build/lib/analysis:top_level_artifact_context", | 
 |         "//src/main/java/com/google/devtools/build/lib/analysis:transitive_info_provider", | 
 |         "//src/main/java/com/google/devtools/build/lib/analysis:view_creation_failed_exception", | 
 |         "//src/main/java/com/google/devtools/build/lib/analysis/platform", | 
 |         "//src/main/java/com/google/devtools/build/lib/bazel:main", | 
 |         "//src/main/java/com/google/devtools/build/lib/bazel/rules", | 
 |         "//src/main/java/com/google/devtools/build/lib/bugreport", | 
 |         "//src/main/java/com/google/devtools/build/lib/clock", | 
 |         "//src/main/java/com/google/devtools/build/lib/cmdline", | 
 |         "//src/main/java/com/google/devtools/build/lib/collect", | 
 |         "//src/main/java/com/google/devtools/build/lib/collect/nestedset", | 
 |         "//src/main/java/com/google/devtools/build/lib/concurrent", | 
 |         "//src/main/java/com/google/devtools/build/lib/events", | 
 |         "//src/main/java/com/google/devtools/build/lib/exec:bin_tools", | 
 |         "//src/main/java/com/google/devtools/build/lib/exec:execution_options", | 
 |         "//src/main/java/com/google/devtools/build/lib/exec:single_build_file_cache", | 
 |         "//src/main/java/com/google/devtools/build/lib/io:inconsistent_filesystem_exception", | 
 |         "//src/main/java/com/google/devtools/build/lib/packages", | 
 |         "//src/main/java/com/google/devtools/build/lib/packages:globber", | 
 |         "//src/main/java/com/google/devtools/build/lib/packages/semantics", | 
 |         "//src/main/java/com/google/devtools/build/lib/pkgcache", | 
 |         "//src/main/java/com/google/devtools/build/lib/query2/common:QueryTransitivePackagePreloader", | 
 |         "//src/main/java/com/google/devtools/build/lib/remote/options", | 
 |         "//src/main/java/com/google/devtools/build/lib/rules:repository/local_repository_rule", | 
 |         "//src/main/java/com/google/devtools/build/lib/rules:repository/managed_directories_knowledge_impl", | 
 |         "//src/main/java/com/google/devtools/build/lib/rules:repository/repository_function", | 
 |         "//src/main/java/com/google/devtools/build/lib/rules/cpp", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:action_execution_inactivity_watchdog", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:action_execution_value", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:action_metadata_handler", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:action_template_expansion_function", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:action_template_expansion_value", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:artifact_conflict_finder", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:artifact_function", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:artifact_nested_set_function", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:aspect_key_creator", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:bzl_compile", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:ignored_package_prefixes_function", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:broken_diff_awareness_exception", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:build_configuration", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:builder", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:bzl_load_value", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:cached_bzl_load_value_and_deps", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:cached_bzl_load_value_and_deps_builder_factory", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:collect_packages_under_directory_value", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:configured_target_and_data", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:configured_target_key", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:configured_target_progress_receiver", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:containing_package_lookup_function", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:containing_package_lookup_value", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:detailed_exceptions", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:diff_awareness", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:diff_awareness_manager", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:directory_listing_function", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:directory_listing_state_value", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:file_function", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:per_build_syscall_cache", | 
 |         "//src/main/java/com/google/devtools/build/lib/io:file_symlink_cycle_exception", | 
 |         "//src/main/java/com/google/devtools/build/lib/io:file_symlink_cycle_uniqueness_function", | 
 |         "//src/main/java/com/google/devtools/build/lib/io:file_symlink_infinite_expansion_exception", | 
 |         "//src/main/java/com/google/devtools/build/lib/io:file_symlink_infinite_expansion_uniqueness_function", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:fileset_entry_function", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:fileset_entry_key", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:fileset_entry_value", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:filesystem_value_checker", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:glob_descriptor", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:glob_function", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:glob_value", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:incompatible_view_exception", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:incremental_artifact_conflict_finder", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:local_repository_lookup_value", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:managed_directories_knowledge", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:metadata_consumer_for_metrics", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:output_store", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:package_error_message_value", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:package_lookup_function", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:package_lookup_value", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:package_progress_receiver", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:package_value", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:precomputed_value", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:prepare_deps_of_pattern_value", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:prepare_deps_of_patterns_value", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:prepare_deps_of_targets_under_directory_value", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:recursive_filesystem_traversal", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:recursive_pkg_key", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:recursive_pkg_value", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:repository_mapping_value", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:runfiles_artifact_value", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:sky_functions", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:sky_value_dirtiness_checker", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:skyframe_aware_action", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:skyframe_cluster", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:skyframe_error_processor", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:starlark_builtins_value", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:target_cycle_reporter", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:target_pattern_phase_value", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:tests_for_target_pattern_value", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:toolchain_exception", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:transitive_base_traversal_function", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:transitive_target_key", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:transitive_traversal_function", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:transitive_traversal_value", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:tree_artifact_value", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:unloaded_toolchain_context", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:unloaded_toolchain_context_impl", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:toolchain_context_key", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:workspace_info", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:workspace_name_value", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe/serialization", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe/serialization/autocodec", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe/serialization/autocodec:serialization-constant-annotation", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe/serialization/testutils", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe/serialization/testutils:depsutils", | 
 |         "//src/main/java/com/google/devtools/build/lib/testing/common:directory_listing_helper", | 
 |         "//src/main/java/net/starlark/java/annot", | 
 |         "//src/main/java/com/google/devtools/build/lib/util", | 
 |         "//src/main/java/com/google/devtools/build/lib/util:abrupt_exit_exception", | 
 |         "//src/main/java/com/google/devtools/build/lib/util:crash_failure_details", | 
 |         "//src/main/java/com/google/devtools/build/lib/util:detailed_exit_code", | 
 |         "//src/main/java/com/google/devtools/build/lib/util:exit_code", | 
 |         "//src/main/java/com/google/devtools/build/lib/util:filetype", | 
 |         "//src/main/java/com/google/devtools/build/lib/util/io", | 
 |         "//src/main/java/com/google/devtools/build/lib/util/io:out-err", | 
 |         "//src/main/java/com/google/devtools/build/lib/vfs", | 
 |         "//src/main/java/com/google/devtools/build/lib/vfs:output_service", | 
 |         "//src/main/java/com/google/devtools/build/lib/vfs:pathfragment", | 
 |         "//src/main/java/com/google/devtools/build/lib/vfs/inmemoryfs", | 
 |         "//src/main/java/com/google/devtools/build/skyframe", | 
 |         "//src/main/java/com/google/devtools/build/skyframe:skyframe-objects", | 
 |         "//src/main/java/com/google/devtools/common/options", | 
 |         "//src/main/protobuf:action_cache_java_proto", | 
 |         "//src/main/protobuf:analysis_v2_java_proto", | 
 |         "//src/main/protobuf:failure_details_java_proto", | 
 |         "//src/test/java/com/google/devtools/build/lib/actions/util", | 
 |         "//src/test/java/com/google/devtools/build/lib/analysis/testing", | 
 |         "//src/test/java/com/google/devtools/build/lib/analysis/util", | 
 |         "//src/test/java/com/google/devtools/build/lib/bazel/bzlmod:util", | 
 |         "//src/test/java/com/google/devtools/build/lib/buildtool/util", | 
 |         "//src/test/java/com/google/devtools/build/lib/events:testutil", | 
 |         "//src/test/java/com/google/devtools/build/lib/packages:testutil", | 
 |         "//src/test/java/com/google/devtools/build/lib/rules/platform:testutil", | 
 |         "//src/main/java/com/google/devtools/build/lib/testing/common:fake-options", | 
 |         "//src/test/java/com/google/devtools/build/lib/testutil", | 
 |         "//src/test/java/com/google/devtools/build/lib/testutil:JunitUtils", | 
 |         "//src/test/java/com/google/devtools/build/lib/testutil:SkyframeExecutorTestHelper", | 
 |         "//src/test/java/com/google/devtools/build/lib/testutil:TestConstants", | 
 |         "//src/test/java/com/google/devtools/build/lib/testutil:TestPackageFactoryBuilderFactory", | 
 |         "//src/test/java/com/google/devtools/build/lib/testutil:TestUtils", | 
 |         "//src/test/java/com/google/devtools/build/lib/vfs/util", | 
 |         "//src/test/java/com/google/devtools/build/skyframe:testutil", | 
 |         "//third_party:auto_value", | 
 |         "//third_party:caffeine", | 
 |         "//third_party:flogger", | 
 |         "//third_party:guava", | 
 |         "//third_party:guava-testlib", | 
 |         "//third_party:jsr305", | 
 |         "//third_party:junit4", | 
 |         "//third_party:mockito", | 
 |         "//third_party:truth", | 
 |         "//third_party/protobuf:protobuf_java", | 
 |         "@com_google_testparameterinjector//:testparameterinjector", | 
 |     ], | 
 | ) | 
 |  | 
 | # TODO(b/179148968): This used to be part of SkyframeTests but was broken off because it has some | 
 | # non-hermetic interaction with another test, depending on how the tests get sharded. | 
 | java_test( | 
 |     name = "PrepareDepsOfTargetsUnderDirectoryFunctionTest", | 
 |     srcs = ["PrepareDepsOfTargetsUnderDirectoryFunctionTest.java"], | 
 |     deps = [ | 
 |         "//src/main/java/com/google/devtools/build/lib/cmdline", | 
 |         "//src/main/java/com/google/devtools/build/lib/io:inconsistent_filesystem_exception", | 
 |         "//src/main/java/com/google/devtools/build/lib/io:process_package_directory_exception", | 
 |         "//src/main/java/com/google/devtools/build/lib/pkgcache", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:collect_packages_under_directory_value", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:prepare_deps_of_targets_under_directory_value", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:skyframe_cluster", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:transitive_traversal_value", | 
 |         "//src/main/java/com/google/devtools/build/lib/vfs", | 
 |         "//src/main/java/com/google/devtools/build/lib/vfs:pathfragment", | 
 |         "//src/main/java/com/google/devtools/build/skyframe", | 
 |         "//src/main/java/com/google/devtools/build/skyframe:skyframe-objects", | 
 |         "//src/test/java/com/google/devtools/build/lib/analysis/util", | 
 |         "//src/test/java/com/google/devtools/build/skyframe:testutil", | 
 |         "//third_party:guava", | 
 |         "//third_party:junit4", | 
 |         "//third_party:truth", | 
 |     ], | 
 | ) | 
 |  | 
 | java_test( | 
 |     name = "LocalDiffAwarenessTest", | 
 |     srcs = ["LocalDiffAwarenessTest.java"], | 
 |     # There are two issues with this test on Windows: | 
 |     #   (1) [easy] The assertion in #modifiedPathIsntUnderWatchRoot needs to be | 
 |     #       rewritten to handle Windows-style absolute paths. | 
 |     #   (2) [hard] Watch events seem to be non-deterministically missing or | 
 |     #       spurious. Maybe there was a bug in PR 11334? | 
 |     # If you want to try to fix these, first put a statement like | 
 |     # `localDiffOptions.windowsWatchFS = true;` in #initializeSettings. That | 
 |     # flag is off by default, due to the instability of the --watchfs feature on | 
 |     # Windows. | 
 |     tags = ["no_windows"], | 
 |     deps = [ | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:broken_diff_awareness_exception", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:diff_awareness", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:local_diff_awareness", | 
 |         "//src/main/java/com/google/devtools/build/lib/testing/common:fake-options", | 
 |         "//src/main/java/com/google/devtools/build/lib/util:os", | 
 |         "//src/main/java/com/google/devtools/build/lib/vfs", | 
 |         "//src/main/java/com/google/devtools/build/lib/vfs:pathfragment", | 
 |         "//src/main/java/com/google/devtools/common/options", | 
 |         "//src/test/java/com/google/devtools/build/lib/buildtool/util", | 
 |         "//third_party:guava", | 
 |         "//third_party:junit4", | 
 |         "//third_party:truth", | 
 |     ], | 
 | ) | 
 |  | 
 | java_test( | 
 |     name = "LocalDiffAwarenessIntegrationTest", | 
 |     srcs = ["LocalDiffAwarenessIntegrationTest.java"], | 
 |     # TODO(pcloudy): Even with --experimental_windows_watchfs, there's an extra | 
 |     #  getValues() on the second build in | 
 |     #  externalSymlink_doesNotTriggerFullGraphTraversal with Windows, and | 
 |     #  non-deterministic failure to detect changes (watchfs bug?). | 
 |     tags = ["no_windows"], | 
 |     deps = [ | 
 |         "//src/main/java/com/google/devtools/build/lib:runtime", | 
 |         "//src/main/java/com/google/devtools/build/lib/analysis:blaze_directories", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:local_diff_awareness", | 
 |         "//src/main/java/com/google/devtools/build/lib/util:abrupt_exit_exception", | 
 |         "//src/main/java/com/google/devtools/build/lib/util:os", | 
 |         "//src/main/java/com/google/devtools/build/lib/vfs", | 
 |         "//src/main/java/com/google/devtools/build/lib/vfs:pathfragment", | 
 |         "//src/main/java/com/google/devtools/common/options", | 
 |         "//src/test/java/com/google/devtools/build/lib/buildtool/util", | 
 |         "//src/test/java/com/google/devtools/build/skyframe:testutil", | 
 |         "//third_party:guava", | 
 |         "//third_party:junit4", | 
 |         "//third_party:truth", | 
 |     ], | 
 | ) | 
 |  | 
 | java_test( | 
 |     name = "SkyframeErrorProcessorTest", | 
 |     srcs = ["SkyframeErrorProcessorTest.java"], | 
 |     deps = [ | 
 |         "//src/main/java/com/google/devtools/build/lib/analysis:config/build_configuration", | 
 |         "//src/main/java/com/google/devtools/build/lib/analysis:target_and_configuration", | 
 |         "//src/main/java/com/google/devtools/build/lib/analysis:view_creation_failed_exception", | 
 |         "//src/main/java/com/google/devtools/build/lib/cmdline", | 
 |         "//src/main/java/com/google/devtools/build/lib/events", | 
 |         "//src/main/java/com/google/devtools/build/lib/packages", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:configured_target_key", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:configured_value_creation_exception", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:skyframe_error_processor", | 
 |         "//src/main/java/com/google/devtools/build/skyframe", | 
 |         "//src/main/java/com/google/devtools/build/skyframe:skyframe-objects", | 
 |         "//third_party:junit4", | 
 |         "//third_party:mockito", | 
 |         "//third_party:truth", | 
 |         "@com_google_testparameterinjector//:testparameterinjector", | 
 |     ], | 
 | ) | 
 |  | 
 | java_test( | 
 |     name = "BuildDriverFunctionTest", | 
 |     srcs = ["BuildDriverFunctionTest.java"], | 
 |     deps = [ | 
 |         "//src/main/java/com/google/devtools/build/lib/actions", | 
 |         "//src/main/java/com/google/devtools/build/lib/actions:action_lookup_key", | 
 |         "//src/main/java/com/google/devtools/build/lib/concurrent", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:build_driver_function", | 
 |         "//src/main/java/com/google/devtools/build/lib/skyframe:incremental_artifact_conflict_finder", | 
 |         "//src/main/java/com/google/devtools/build/skyframe:skyframe-objects", | 
 |         "//third_party:guava", | 
 |         "//third_party:junit4", | 
 |         "//third_party:mockito", | 
 |         "//third_party:truth", | 
 |     ], | 
 | ) |