build: don't depend on npm packages from public api tests (#26602)
We need only the inputs from ng_module. PR Close #26602
This commit is contained in:
parent
95993e1dd5
commit
d4c3742e25
|
@ -1,31 +1,3 @@
|
|||
load("//tools/ts-api-guardian:index.bzl", "ts_api_guardian_test")
|
||||
load(":public_api_guard.bzl", "generate_targets")
|
||||
|
||||
[ts_api_guardian_test(
|
||||
name = "%s_%s_api" % (
|
||||
bundle[0],
|
||||
bundle[1].replace("/", "_"),
|
||||
),
|
||||
actual = "packages/%s/npm_package/%s.d.ts" % (
|
||||
bundle[0],
|
||||
bundle[1],
|
||||
),
|
||||
data = glob([
|
||||
"%s/**/*.d.ts" % bundle[0],
|
||||
]) + [
|
||||
"//packages/%s:npm_package" % bundle[0],
|
||||
],
|
||||
golden = "tools/public_api_guard/%s/%s.d.ts" % (
|
||||
bundle[0],
|
||||
bundle[1],
|
||||
),
|
||||
# https://github.com/angular/angular/pull/26602 might be enough to fix the fixme-ivy-jit and fixme-ivy-aot issues
|
||||
tags = [
|
||||
"fixme-ivy-aot",
|
||||
"fixme-ivy-jit",
|
||||
],
|
||||
) for bundle in [b[:-len(".d.ts")].split("/", 1) for b in glob(
|
||||
["**/*.d.ts"],
|
||||
# The API surface of the compiler is currently unstable - all of the important APIs are exposed
|
||||
# via @angular/core, @angular/platform-browser or @angular/platform-browser-dynamic instead.
|
||||
exclude = ["compiler/*"],
|
||||
)]]
|
||||
generate_targets(glob(["**/*.d.ts"]))
|
||||
|
|
|
@ -0,0 +1,29 @@
|
|||
# Copyright Google Inc. All Rights Reserved.
|
||||
#
|
||||
# Use of this source code is governed by an MIT-style license that can be
|
||||
# found in the LICENSE file at https://angular.io/license
|
||||
|
||||
"""public_api_guard bazel target generator
|
||||
"""
|
||||
|
||||
load("//tools/ts-api-guardian:index.bzl", "ts_api_guardian_test")
|
||||
|
||||
def generate_targets(golden_files):
|
||||
"""Generates a list of targets to check based on the golden files passed in.
|
||||
"""
|
||||
for golden_file in golden_files:
|
||||
entry_point = golden_file[:-len(".d.ts")]
|
||||
[package_name, entry_point_tail] = entry_point.split("/", 1)
|
||||
directory_name = entry_point_tail.split("/")[-1]
|
||||
target_suffix = "/" + entry_point_tail if package_name != entry_point_tail else ""
|
||||
actual_file = "packages/%s%s/%s.d.ts" % (package_name, target_suffix, directory_name)
|
||||
label_name = package_name + target_suffix.replace("/", "_")
|
||||
|
||||
ts_api_guardian_test(
|
||||
name = "%s_api" % label_name,
|
||||
actual = actual_file,
|
||||
data = [golden_file] + [
|
||||
"//packages/%s:%s" % (package_name + target_suffix, directory_name),
|
||||
],
|
||||
golden = "tools/public_api_guard/%s" % golden_file,
|
||||
)
|
Loading…
Reference in New Issue