| 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(["**"]) + ["//src/test/java/com/google/devtools/build/lib/skyframe/trimming:srcs"], |
| visibility = ["//src/test/java/com/google/devtools/build/lib:__pkg__"], |
| ) |
| |
| # Tests for Windows-specific functionality that can run cross-platform. |
| # These don't need to run on Windows, they merely use Windows- and case-insensitive path semantics. |
| CROSS_PLATFORM_WINDOWS_TESTS = [ |
| "PathCasingLookupFunctionTest.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: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/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: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", |
| ], |
| ) |
| |
| java_test( |
| name = "SkyframeTests", |
| srcs = select({ |
| "//src/conditions:darwin": glob( |
| ["*.java"], |
| exclude = CROSS_PLATFORM_WINDOWS_TESTS, |
| ), |
| "//src/conditions:darwin_x86_64": glob( |
| ["*.java"], |
| exclude = CROSS_PLATFORM_WINDOWS_TESTS, |
| ), |
| "//conditions:default": glob( |
| ["*.java"], |
| exclude = ["MacOSXFsEventsDiffAwarenessTest.java"] + CROSS_PLATFORM_WINDOWS_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:incompatible_view_exception", |
| "//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/conditions:darwin_x86_64": [ |
| "//src/main/java/com/google/devtools/build/lib/skyframe:incompatible_view_exception", |
| "//src/main/java/com/google/devtools/build/lib/skyframe:local_diff_awareness", |
| "//src/main/java/com/google/devtools/build/lib/testing/common:fake-options", |
| ], |
| "//conditions:default": [], |
| }) + [ |
| ":testutil", |
| "//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_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/actionsketch:action_sketch", |
| "//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/config_matching_provider", |
| "//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_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:dependency", |
| "//src/main/java/com/google/devtools/build/lib/analysis:dependency_kind", |
| "//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:test/test_configuration", |
| "//src/main/java/com/google/devtools/build/lib/analysis:toolchain_collection", |
| "//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/causes", |
| "//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:single_build_file_cache", |
| "//src/main/java/com/google/devtools/build/lib/packages", |
| "//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/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:repository/repository_loader_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_sketch_function", |
| "//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:aggregating_artifact_value", |
| "//src/main/java/com/google/devtools/build/lib/skyframe:artifact_function", |
| "//src/main/java/com/google/devtools/build/lib/skyframe:aspect_value_key", |
| "//src/main/java/com/google/devtools/build/lib/skyframe:ast_file_lookup_value", |
| "//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_value", |
| "//src/main/java/com/google/devtools/build/lib/skyframe:builder", |
| "//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:file_symlink_cycle_exception", |
| "//src/main/java/com/google/devtools/build/lib/skyframe:file_symlink_cycle_uniqueness_function", |
| "//src/main/java/com/google/devtools/build/lib/skyframe:file_symlink_infinite_expansion_exception", |
| "//src/main/java/com/google/devtools/build/lib/skyframe: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: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: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:sky_functions", |
| "//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:bzl_load_value", |
| "//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:top_down_action_cache", |
| "//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:toolchain_context_key", |
| "//src/main/java/com/google/devtools/build/lib/skyframe:workspace_ast_value", |
| "//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/testutils", |
| "//src/main/java/com/google/devtools/build/lib/skyframe/serialization/testutils:depsutils", |
| "//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: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_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/analysis/util:test-build-options", |
| "//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/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: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", |
| ], |
| ) |
| |
| # Tests that exercise Windows-specific (or case-insensitive-filesystem specific) functionality. |
| # These don't need to run on Windows, they merely use Windows- and case-insensitive path semantics. |
| java_test( |
| name = "windows_test", |
| srcs = CROSS_PLATFORM_WINDOWS_TESTS, |
| jvm_flags = [ |
| "-Dblaze.os=Windows", |
| "-Dbazel.windows_unix_root=C:/fake/msys", |
| ], |
| tags = ["skyframe"], |
| test_class = "com.google.devtools.build.lib.AllTests", |
| deps = [ |
| ":testutil", |
| "//src/main/java/com/google/devtools/build/lib/actions", |
| "//src/main/java/com/google/devtools/build/lib/actions:artifacts", |
| "//src/main/java/com/google/devtools/build/lib/actions:file_metadata", |
| "//src/main/java/com/google/devtools/build/lib/analysis:blaze_directories", |
| "//src/main/java/com/google/devtools/build/lib/analysis:server_directories", |
| "//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/pkgcache", |
| "//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:path_casing_lookup_function", |
| "//src/main/java/com/google/devtools/build/lib/skyframe:path_casing_lookup_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", |
| "//src/main/java/com/google/devtools/build/lib/skyframe/serialization/autocodec", |
| "//src/main/java/com/google/devtools/build/lib/skyframe/serialization/testutils", |
| "//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/lib/vfs/inmemoryfs", |
| "//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:test_runner", |
| "//src/test/java/com/google/devtools/build/lib/analysis/util", |
| "//src/test/java/com/google/devtools/build/lib/testutil", |
| "//third_party:guava", |
| "//third_party:guava-testlib", |
| "//third_party:jsr305", |
| "//third_party:junit4", |
| "//third_party:truth", |
| ], |
| ) |
| |
| test_suite( |
| name = "windows_tests", |
| tags = [ |
| "-no_windows", |
| "-slow", |
| ], |
| visibility = ["//visibility:private"], |
| ) |
| |
| test_suite( |
| name = "all_windows_tests", |
| tests = [ |
| ":windows_tests", |
| "//src/test/java/com/google/devtools/build/lib/skyframe/packages:all_windows_tests", |
| "//src/test/java/com/google/devtools/build/lib/skyframe/serialization:all_windows_tests", |
| ], |
| visibility = ["//src/test/java/com/google/devtools/build/lib:__pkg__"], |
| ) |