blob: f2454f469cce0c83cb3be90ce366b57ea7cd3479 [file] [log] [blame]
# Copyright 2022 Google LLC. 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/jvm/testing:for_analysis.bzl", ktfa = "kt_for_analysis")
load("//kotlin/jvm/testing:jvm_library_analysis_test.bzl", "kt_jvm_library_analysis_test")
package(
default_applicable_licenses = ["//:license"],
default_testonly = True,
default_visibility = ["//tests/jvm/analysis/jvm_library/friends:__subpackages__"],
)
licenses(["notice"])
kt_jvm_library_analysis_test(
name = "no_kt_exported_friend_cross_package_test",
expected_friend_jar_names = [],
target_under_test = ktfa.kt_jvm_library(
name = "no_kt_exported_friend_cross_package",
srcs = ["Input.kt"],
deps = [
# Exports :friend from this package
"//tests/jvm/analysis/jvm_library/friends/sub:kt_exports_friend",
],
),
)
kt_jvm_library_analysis_test(
name = "has_java_exported_friend_in_package_test",
expected_friend_jar_names = [
"libjava_exports_friend-hjar.jar",
"libfriend-compile.jar",
],
target_under_test = ktfa.kt_jvm_library(
name = "has_java_exported_friend_in_package",
srcs = ["Input.kt"],
deps = [":java_exports_friend"],
),
)
kt_jvm_library_analysis_test(
name = "has_kt_exported_friend_in_package_test",
expected_friend_jar_names = [
"libkt_exports_friend-compile.jar",
"libfriend-compile.jar",
],
target_under_test = ktfa.kt_jvm_library(
name = "has_kt_exported_friend_in_package",
srcs = ["Input.kt"],
deps = [":kt_exports_friend"],
),
)
kt_jvm_library_analysis_test(
name = "no_direct_friend_testing_package_test",
expected_friend_jar_names = [],
target_under_test = ktfa.kt_jvm_library(
name = "no_direct_friend_testing_package",
srcs = ["Input.kt"],
deps = ["//tests/jvm/analysis/jvm_library/friends/testing:testingfriend"],
),
)
kt_jvm_library_analysis_test(
name = "no_direct_friend_subpackage_test",
expected_friend_jar_names = [],
target_under_test = ktfa.kt_jvm_library(
name = "no_direct_friend_subpackage",
srcs = ["Input.kt"],
deps = ["//tests/jvm/analysis/jvm_library/friends/sub:subfriend"],
),
)
kt_jvm_library_analysis_test(
name = "has_direct_friend_in_package_test",
expected_friend_jar_names = ["libfriend-compile.jar"],
target_under_test = ktfa.kt_jvm_library(
name = "has_direct_friend_in_package",
srcs = ["Input.kt"],
deps = [":friend"],
),
)
ktfa.java_library(
name = "java_exports_friend",
srcs = ["Input.java"],
exports = [":friend"],
)
ktfa.kt_jvm_library(
name = "kt_exports_friend",
srcs = ["Input.kt"],
exports = [":friend"],
)
ktfa.kt_jvm_library(
name = "friend",
srcs = ["Input.kt"],
)