licenses(["notice"])  # Apache 2.0

load(
    "//build_defs:build_defs.bzl",
    "merged_plugin_xml",
    "stamped_plugin_xml",
    "intellij_plugin",
    "optional_plugin_xml",
)
load(
    "//testing:test_defs.bzl",
    "intellij_unit_test_suite",
    "intellij_integration_test_suite",
)

filegroup(
    name = "plugin_xml",
    srcs = ["src/META-INF/blaze-scala.xml"],
    visibility = ["//visibility:public"],
)

optional_plugin_xml(
    name = "optional_xml",
    module = "org.intellij.scala",
    plugin_xml = "src/META-INF/scala-contents.xml",
    visibility = ["//visibility:public"],
)

merged_plugin_xml(
    name = "merged_plugin_xml",
    srcs = [
        ":plugin_xml",
        "//base:plugin_xml",
        "//java:plugin_xml",
    ],
)

stamped_plugin_xml(
    name = "scala_plugin_xml",
    plugin_id = "com.google.idea.blaze.scala",
    plugin_name = "com.google.idea.blaze.scala",
    plugin_xml = "merged_plugin_xml",
)

java_library(
    name = "scala",
    srcs = glob(["src/**/*.java"]),
    visibility = ["//visibility:public"],
    deps = [
        "//base",
        "//intellij_platform_sdk:plugin_api",
        "//java",
        "//third_party/scala",
        "@jsr305_annotations//jar",
    ],
)

intellij_plugin(
    name = "scala_integration_test_plugin",
    testonly = 1,
    optional_plugin_xmls = [":optional_xml"],
    plugin_xml = ":scala_plugin_xml",
    deps = [":scala"],
)

intellij_unit_test_suite(
    name = "unit_tests",
    srcs = glob(["tests/unittests/**/*.java"]),
    test_package_root = "com.google.idea.blaze",
    deps = [
        ":scala",
        "//base",
        "//base:unit_test_utils",
        "//intellij_platform_sdk:plugin_api_for_tests",
        "//java",
        "//third_party/scala:scala_for_tests",
        "@junit//jar",
    ],
)

intellij_integration_test_suite(
    name = "integration_tests",
    srcs = glob(["tests/integrationtests/**/*.java"]),
    required_plugins = "org.intellij.scala,com.google.idea.blaze.scala",
    test_package_root = "com.google.idea.blaze.scala",
    runtime_deps = [":scala_integration_test_plugin"],
    deps = [
        ":scala",
        "//base",
        "//base:integration_test_utils",
        "//base:unit_test_utils",
        "//intellij_platform_sdk:plugin_api_for_tests",
        "//java",
        "//third_party/scala:scala_for_tests",
        "@junit//jar",
    ],
)
