blob: 77c4b5e211e3d32a6cdff70a9f646575b07278fa [file] [log] [blame]
# Copyright 2018 The Bazel Authors. All rights reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
load("//kotlin:kotlin.bzl", "kt_jvm_library", "kt_jvm_binary", "kt_jvm_test")
# a test resource library.
java_library(
name = "resourcejar",
resources = glob(["resourcejar/**"]),
resource_strip_prefix = "tests/smoke/resourcejar"
)
kt_jvm_test(
name = "junittest",
srcs = glob(["junittest/JunitTest.kt"]),
test_class="tests.smoke.junittest.JunitTest",
size="small",
data=glob(["data/*"]),
deps = ["@junit_junit//jar"]
)
kt_jvm_library(
name = "test_merge_resourcesjar",
srcs = glob(["testresources/src/*.kt"]),
resource_jars = [":resourcejar"],
)
kt_jvm_library(
name = "test_embed_resources",
srcs = glob(["testresources/src/*.kt"]),
resources = glob(["testresources/resources/**/*"]),
visibility = ["//visibility:public"]
)
kt_jvm_library(
name = "test_embed_resources_strip_prefix",
srcs = glob(["testresources/src/*.kt"]),
resources = glob(["testresources/resources/**/*"]),
resource_strip_prefix = "tests/smoke/testresources/resources"
)
kt_jvm_library(
name = "conventional_strip_resources",
srcs = glob(["testresources/src/*.kt"]),
resources = glob(["conventional_strip_resources/src/main/resources/**/*", "conventional_strip_resources/src/test/resources/**/*"])
)
kt_jvm_library(
name = "propagation_test_exporter_lib",
srcs = ["propagation/Stub.kt"],
exports = ["@junit_junit//jar"]
)
kt_jvm_library(
name = "propagation_test_runtime_lib",
srcs = ["propagation/Stub.kt"],
runtime_deps = ["@junit_junit//jar"]
)
java_binary(
name = "propagation_ct_consumer",
main_class = "testing.CompileTimeDependent",
srcs = ["propagation/CompileTimeDependent.java"],
deps = [":propagation_test_exporter_lib"]
)
java_binary(
name = "propagation_ct_consumer_fail_on_runtime",
main_class = "testing.CompileTimeDependent",
srcs = ["propagation/CompileTimeDependent.java"],
deps = [":propagation_test_runtime_lib"],
tags = ["manual"]
)
java_binary(
name = "propagation_rt_via_export_consumer",
main_class = "testing.RuntimeDependent",
srcs = ["propagation/RuntimeDependent.java"],
deps = [":propagation_test_exporter_lib"]
)
java_binary(
name = "propagation_rt_via_runtime_deps_consumer",
main_class = "testing.RuntimeDependent",
srcs = ["propagation/RuntimeDependent.java"],
deps = [":propagation_test_runtime_lib"]
)
kt_jvm_binary(
name="helloworld",
srcs=glob(["helloworld/Main.kt"]),
main_class= "helloworld.Main",
data=glob(["data/*"]),
)
genrule(
name="helloworld_host_config_test",
tools=["//tests/smoke:helloworld"],
outs=["helloworld_output.txt"],
cmd = """./$(location //tests/smoke:helloworld) > "$@" """
)
kt_jvm_library(
name = "hellojava",
srcs = glob(["hellojava/*.kt", "hellojava/*.java"]),
)
kt_jvm_library(
name = "hellojava_withmerge",
resources = glob(["resourcejar/**"]),
srcs = glob(["hellojava/*.kt", "hellojava/*.java"]),
)
java_plugin(
name = "autovalue",
deps = ["@autovalue//jar"],
processor_class = "com.google.auto.value.processor.AutoValueProcessor",
generates_api = 1,
)
java_plugin(
name = "autoservice",
deps = [
"@autoservice//jar",
"@guava//jar",
"@auto_common//jar"
],
processor_class = "com.google.auto.service.processor.AutoServiceProcessor",
generates_api = 0
)
java_plugin(
name = "autovalue_no_processor_class",
deps = ["@autovalue//jar"],
generates_api = 1,
)
kt_jvm_library(
name = "ap_kotlin",
srcs = ["kapt/kotlin/TestKtValue.kt"],
deps = ["@autovalue//jar"],
plugins = [":autovalue"]
)
kt_jvm_library(
name = "ap_kotlin_mixed_no_plugin",
srcs = ["kapt/kotlin/TestKtAPNoGenReference.kt", "kapt/java/TestAPNoGenReferences.java"],
deps = ["@autovalue//jar"]
)
kt_jvm_library(
name = "ap_kotlin_mixed",
srcs = ["kapt/kotlin/TestKtValue.kt", "kapt/java/TestAutoValue.java"],
deps = ["@autovalue//jar"],
plugins = [":autovalue"]
)
kt_jvm_library(
name = "ap_kotlin_resources",
srcs = ["kapt/kotlin/TestKtService.kt"],
deps = ["@autoservice//jar"],
plugins = [":autoservice"]
)
kt_jvm_library(
name = "ap_kotlin_resources_mixed",
srcs = ["kapt/kotlin/TestKtService.kt", "kapt/java/TestJavaService.java"],
deps = ["@autoservice//jar"],
plugins = [":autoservice"]
)
kt_jvm_library(
name = "ap_kotlin_mixed_multiple_plugins",
srcs = ["kapt/kotlin/TestKtService.kt", "kapt/java/TestJavaService.java", "kapt/java/TestAutoValue.java", "kapt/kotlin/TestKtValue.kt"],
deps = ["@autoservice//jar", "@autovalue//jar"],
plugins = [":autoservice", ":autovalue"]
)
kt_jvm_library(
name = "ap_kotlin_mixed_multiple_plugins_one_without_processor_class",
srcs = ["kapt/kotlin/TestKtService.kt", "kapt/java/TestJavaService.java", "kapt/java/TestAPNoGenReferences.java", "kapt/kotlin/TestKtAPNoGenReference.kt"],
deps = ["@autoservice//jar", "@autovalue//jar"],
plugins = [":autoservice", ":autovalue_no_processor_class"]
)
java_library(
name = "library_exporting_autovalue_and_junit",
exported_plugins = [":autovalue", ":autoservice"],
)
kt_jvm_library(
name = "ap_kotlin_mixed_inherit_plugin_via_exported_deps",
srcs = ["kapt/kotlin/TestKtService.kt", "kapt/java/TestJavaService.java", "kapt/java/TestAutoValue.java", "kapt/kotlin/TestKtValue.kt"],
deps = ["@autoservice//jar", "@autovalue//jar", "library_exporting_autovalue_and_junit"],
plugins = [":autovalue"]
)