diff options
Diffstat (limited to 'tests/jvm')
-rw-r--r-- | tests/jvm/java/functions/BUILD | 38 | ||||
-rw-r--r-- | tests/jvm/java/functions/car/BUILD | 44 |
2 files changed, 35 insertions, 47 deletions
diff --git a/tests/jvm/java/functions/BUILD b/tests/jvm/java/functions/BUILD index 67c0e9e..677869f 100644 --- a/tests/jvm/java/functions/BUILD +++ b/tests/jvm/java/functions/BUILD @@ -13,7 +13,7 @@ # limitations under the License. # This package tests importing extension functions. -load("//kotlin:rules.bzl", "kt_jvm_import", "kt_jvm_library") +load("//kotlin:rules.bzl", "kt_jvm_library") licenses(["notice"]) @@ -41,53 +41,34 @@ java_test( ], ) -java_import( - name = "car-jar", - jars = ["//tests/jvm/java/functions/car:car_lib-jar"], - tags = _NO_ZAPFHAHN_BECAUSE_LIBJARS_EXCLUDE_JACOCO, -) - kt_jvm_library( - name = "car_demo_jar_lib", + name = "car_demo_import_lib", srcs = ["CarDemo.kt"], tags = _NO_ZAPFHAHN_BECAUSE_LIBJARS_EXCLUDE_JACOCO, deps = [ - ":car-jar", + "//tests/jvm/java/functions/car:car_lib_import", ], ) # This binary includes extension functions defined in an separate jar file, which # may be problematic if the metadata is stripped by ijar. java_test( - name = "car_jar_demo", + name = "car_import_demo", main_class = "functions.CarDemo", - tags = ["darwin_x86_64_compatible"] + - _NO_ZAPFHAHN_BECAUSE_LIBJARS_EXCLUDE_JACOCO, + tags = ["darwin_x86_64_compatible"] + _NO_ZAPFHAHN_BECAUSE_LIBJARS_EXCLUDE_JACOCO, runtime_deps = [ - ":car_demo_jar_lib", + ":car_demo_import_lib", "@kotlinc//:kotlin_stdlib", ], ) -kt_jvm_import( - name = "car-inline-jar", - jars = [ - "//tests/jvm/java/functions/car:car_inline_lib-jar", - "//tests/jvm/java/functions/car:car_extra_lib-jar", - ], - tags = _NO_ZAPFHAHN_BECAUSE_LIBJARS_EXCLUDE_JACOCO, - deps = [ - ":car-jar", - ], -) - kt_jvm_library( name = "car_demo_inline_lib", srcs = ["CarInlineDemo.kt"], tags = _NO_ZAPFHAHN_BECAUSE_LIBJARS_EXCLUDE_JACOCO, deps = [ - ":car-inline-jar", - ":car-jar", + "//tests/jvm/java/functions/car:car_inline_and_extra_lib_import", + "//tests/jvm/java/functions/car:car_lib_import", ], ) @@ -96,8 +77,7 @@ kt_jvm_library( java_test( name = "car_inline_demo", main_class = "functions.CarInlineDemo", - tags = ["darwin_x86_64_compatible"] + - _NO_ZAPFHAHN_BECAUSE_LIBJARS_EXCLUDE_JACOCO, + tags = ["darwin_x86_64_compatible"] + _NO_ZAPFHAHN_BECAUSE_LIBJARS_EXCLUDE_JACOCO, runtime_deps = [ ":car_demo_inline_lib", "@kotlinc//:kotlin_stdlib", diff --git a/tests/jvm/java/functions/car/BUILD b/tests/jvm/java/functions/car/BUILD index 81f0f43..5417fd4 100644 --- a/tests/jvm/java/functions/car/BUILD +++ b/tests/jvm/java/functions/car/BUILD @@ -12,27 +12,17 @@ # See the License for the specific language governing permissions and # limitations under the License. -load("//kotlin:rules.bzl", "kt_jvm_library") +load("//kotlin:rules.bzl", "kt_jvm_import", "kt_jvm_library") package(default_visibility = ["//tests/jvm/java/functions:__subpackages__"]) licenses(["notice"]) -# Make Jar files produced by helper targets visible to tests in parent package -filegroup( - name = "car_lib-jar", - srcs = ["libcar_lib.jar"], -) - -filegroup( - name = "car_inline_lib-jar", - srcs = ["libcar_inline_lib.jar"], -) - -filegroup( - name = "car_extra_lib-jar", - srcs = ["libcar_extra_lib.jar"], -) +# During coverage builds, every library gets a dep on JaCoCo (Java Code Coverage). +# Libjars, from libraries, only include their direct sources. Together, these behaviours +# trigger an ImportDepsChecker error for :car-jar and :car-inline-jar. To prevent that, we disable +# coverage builds on all downstream targets. +_NO_ZAPFHAHN_BECAUSE_LIBJARS_EXCLUDE_JACOCO = ["nozapfhahn"] kt_jvm_library( name = "car_lib", @@ -40,8 +30,12 @@ kt_jvm_library( "Car.kt", "CarUtils.kt", ], - deps = [ - ], +) + +java_import( + name = "car_lib_import", + jars = [":libcar_lib.jar"], + tags = ["incomplete-deps"] + _NO_ZAPFHAHN_BECAUSE_LIBJARS_EXCLUDE_JACOCO, ) kt_jvm_library( @@ -49,6 +43,7 @@ kt_jvm_library( srcs = [ "CarInlineUtils.kt", ], + visibility = ["//visibility:private"], deps = [ ":car_lib", ], @@ -59,7 +54,20 @@ kt_jvm_library( srcs = [ "CarExtraUtils.kt", ], + visibility = ["//visibility:private"], deps = [ ":car_lib", ], ) + +kt_jvm_import( + name = "car_inline_and_extra_lib_import", + jars = [ + ":libcar_inline_lib.jar", + ":libcar_extra_lib.jar", + ], + tags = _NO_ZAPFHAHN_BECAUSE_LIBJARS_EXCLUDE_JACOCO, + deps = [ + ":car_lib_import", + ], +) |