Skip to content

Commit 1628c7f

Browse files
committed
build: use single Node.js toolchain to run unit tests
E2E tests are used to run tests on multiple platforms and node.js versions. (cherry picked from commit 1142066)
1 parent f82846e commit 1628c7f

File tree

14 files changed

+111
-254
lines changed

14 files changed

+111
-254
lines changed

packages/angular/cli/BUILD.bazel

Lines changed: 4 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@
66
load("@npm//@bazel/jasmine:index.bzl", "jasmine_node_test")
77
load("//tools:defaults.bzl", "pkg_npm", "ts_library")
88
load("//tools:ng_cli_schema_generator.bzl", "cli_json_schema")
9-
load("//tools:toolchain_info.bzl", "TOOLCHAINS_NAMES", "TOOLCHAINS_VERSIONS")
109
load("//tools:ts_json_schema.bzl", "ts_json_schema")
1110

1211
licenses(["notice"])
@@ -146,18 +145,10 @@ ts_library(
146145
],
147146
)
148147

149-
[
150-
jasmine_node_test(
151-
name = "angular-cli_test_" + toolchain_name,
152-
srcs = [":angular-cli_test_lib"],
153-
tags = [toolchain_name],
154-
toolchain = toolchain,
155-
)
156-
for toolchain_name, toolchain in zip(
157-
TOOLCHAINS_NAMES,
158-
TOOLCHAINS_VERSIONS,
159-
)
160-
]
148+
jasmine_node_test(
149+
name = "angular-cli_test",
150+
srcs = [":angular-cli_test_lib"],
151+
)
161152

162153
genrule(
163154
name = "license",

packages/angular/pwa/BUILD.bazel

Lines changed: 4 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@
66
load("@npm//@bazel/jasmine:index.bzl", "jasmine_node_test")
77
load("//tools:defaults.bzl", "pkg_npm", "ts_library")
88
load("//tools:ts_json_schema.bzl", "ts_json_schema")
9-
load("//tools:toolchain_info.bzl", "TOOLCHAINS_NAMES", "TOOLCHAINS_VERSIONS")
109

1110
licenses(["notice"])
1211

@@ -49,18 +48,10 @@ ts_library(
4948
],
5049
)
5150

52-
[
53-
jasmine_node_test(
54-
name = "pwa_test_" + toolchain_name,
55-
srcs = [":pwa_test_lib"],
56-
tags = [toolchain_name],
57-
toolchain = toolchain,
58-
)
59-
for toolchain_name, toolchain in zip(
60-
TOOLCHAINS_NAMES,
61-
TOOLCHAINS_VERSIONS,
62-
)
63-
]
51+
jasmine_node_test(
52+
name = "pwa_test",
53+
srcs = [":pwa_test_lib"],
54+
)
6455

6556
genrule(
6657
name = "license",

packages/angular/ssr/schematics/BUILD.bazel

Lines changed: 9 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@
66
load("@npm//@bazel/jasmine:index.bzl", "jasmine_node_test")
77
load("//tools:defaults.bzl", "pkg_npm", "ts_library")
88
load("//tools:ts_json_schema.bzl", "ts_json_schema")
9-
load("//tools:toolchain_info.bzl", "TOOLCHAINS_NAMES", "TOOLCHAINS_VERSIONS")
109

1110
licenses(["notice"])
1211

@@ -86,23 +85,15 @@ ts_library(
8685
# @external_end
8786
)
8887

89-
[
90-
jasmine_node_test(
91-
name = "ssr_schematics_test_" + toolchain_name,
92-
srcs = [":ssr_schematics_test_lib"],
93-
tags = [toolchain_name],
94-
toolchain = toolchain,
95-
deps = [
96-
"@npm//jasmine",
97-
"@npm//source-map",
98-
"@npm//typescript",
99-
],
100-
)
101-
for toolchain_name, toolchain in zip(
102-
TOOLCHAINS_NAMES,
103-
TOOLCHAINS_VERSIONS,
104-
)
105-
]
88+
jasmine_node_test(
89+
name = "ssr_schematics_test",
90+
srcs = [":ssr_schematics_test_lib"],
91+
deps = [
92+
"@npm//jasmine",
93+
"@npm//source-map",
94+
"@npm//typescript",
95+
],
96+
)
10697

10798
# This package is intended to be combined into the main @angular/ssr package as a dep.
10899
pkg_npm(

packages/angular_devkit/architect/BUILD.bazel

Lines changed: 4 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@
66
load("@npm//@angular/build-tooling/bazel/api-golden:index.bzl", "api_golden_test_npm_package")
77
load("@npm//@bazel/jasmine:index.bzl", "jasmine_node_test")
88
load("//tools:defaults.bzl", "pkg_npm", "ts_library")
9-
load("//tools:toolchain_info.bzl", "TOOLCHAINS_NAMES", "TOOLCHAINS_VERSIONS")
109
load("//tools:ts_json_schema.bzl", "ts_json_schema")
1110

1211
licenses(["notice"])
@@ -86,18 +85,10 @@ ts_library(
8685
],
8786
)
8887

89-
[
90-
jasmine_node_test(
91-
name = "architect_test_" + toolchain_name,
92-
srcs = [":architect_test_lib"],
93-
tags = [toolchain_name],
94-
toolchain = toolchain,
95-
)
96-
for toolchain_name, toolchain in zip(
97-
TOOLCHAINS_NAMES,
98-
TOOLCHAINS_VERSIONS,
99-
)
100-
]
88+
jasmine_node_test(
89+
name = "architect_test",
90+
srcs = [":architect_test_lib"],
91+
)
10192

10293
# @external_begin
10394
genrule(

packages/angular_devkit/architect/node/BUILD.bazel

Lines changed: 4 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@
55

66
load("@npm//@bazel/jasmine:index.bzl", "jasmine_node_test")
77
load("//tools:defaults.bzl", "ts_library")
8-
load("//tools:toolchain_info.bzl", "TOOLCHAINS_NAMES", "TOOLCHAINS_VERSIONS")
98

109
licenses(["notice"])
1110

@@ -44,15 +43,7 @@ ts_library(
4443
],
4544
)
4645

47-
[
48-
jasmine_node_test(
49-
name = "node_test_" + toolchain_name,
50-
srcs = [":node_test_lib"],
51-
tags = [toolchain_name],
52-
toolchain = toolchain,
53-
)
54-
for toolchain_name, toolchain in zip(
55-
TOOLCHAINS_NAMES,
56-
TOOLCHAINS_VERSIONS,
57-
)
58-
]
46+
jasmine_node_test(
47+
name = "node_test",
48+
srcs = [":node_test_lib"],
49+
)

packages/angular_devkit/build_angular/BUILD.bazel

Lines changed: 17 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@
66
load("@npm//@bazel/jasmine:index.bzl", "jasmine_node_test")
77
load("//tools:defaults.bzl", "pkg_npm", "ts_library")
88
load("//tools:ts_json_schema.bzl", "ts_json_schema")
9-
load("//tools:toolchain_info.bzl", "TOOLCHAINS_NAMES", "TOOLCHAINS_VERSIONS")
109
load("@npm//@angular/build-tooling/bazel/api-golden:index.bzl", "api_golden_test_npm_package")
1110

1211
licenses(["notice"])
@@ -234,18 +233,10 @@ ts_library(
234233
],
235234
)
236235

237-
[
238-
jasmine_node_test(
239-
name = "build_angular_test_" + toolchain_name,
240-
srcs = [":build_angular_test_lib"],
241-
tags = [toolchain_name],
242-
toolchain = toolchain,
243-
)
244-
for toolchain_name, toolchain in zip(
245-
TOOLCHAINS_NAMES,
246-
TOOLCHAINS_VERSIONS,
247-
)
248-
]
236+
jasmine_node_test(
237+
name = "build_angular_test",
238+
srcs = [":build_angular_test_lib"],
239+
)
249240

250241
genrule(
251242
name = "license",
@@ -426,26 +417,18 @@ LARGE_SPECS = {
426417
]
427418

428419
[
429-
[
430-
jasmine_node_test(
431-
name = "build_angular_" + spec + "_test_" + toolchain_name,
432-
size = LARGE_SPECS[spec].get("size", "medium"),
433-
flaky = LARGE_SPECS[spec].get("flaky", False),
434-
shard_count = LARGE_SPECS[spec].get("shards", 2),
435-
# These tests are resource intensive and should not be over-parallized as they will
436-
# compete for the resources of other parallel tests slowing everything down.
437-
# Ask Bazel to allocate multiple CPUs for these tests with "cpu:n" tag.
438-
tags = [
439-
"cpu:2",
440-
toolchain_name,
441-
] + LARGE_SPECS[spec].get("tags", []),
442-
toolchain = toolchain,
443-
deps = [":build_angular_" + spec + "_test_lib"],
444-
)
445-
for spec in LARGE_SPECS
446-
]
447-
for toolchain_name, toolchain in zip(
448-
TOOLCHAINS_NAMES,
449-
TOOLCHAINS_VERSIONS,
420+
jasmine_node_test(
421+
name = "build_angular_" + spec + "_test",
422+
size = LARGE_SPECS[spec].get("size", "medium"),
423+
flaky = LARGE_SPECS[spec].get("flaky", False),
424+
shard_count = LARGE_SPECS[spec].get("shards", 2),
425+
# These tests are resource intensive and should not be over-parallized as they will
426+
# compete for the resources of other parallel tests slowing everything down.
427+
# Ask Bazel to allocate multiple CPUs for these tests with "cpu:n" tag.
428+
tags = [
429+
"cpu:2",
430+
] + LARGE_SPECS[spec].get("tags", []),
431+
deps = [":build_angular_" + spec + "_test_lib"],
450432
)
433+
for spec in LARGE_SPECS
451434
]

packages/angular_devkit/build_webpack/BUILD.bazel

Lines changed: 12 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@
66
load("@npm//@bazel/jasmine:index.bzl", "jasmine_node_test")
77
load("//tools:defaults.bzl", "pkg_npm", "ts_library")
88
load("//tools:ts_json_schema.bzl", "ts_json_schema")
9-
load("//tools:toolchain_info.bzl", "TOOLCHAINS_NAMES", "TOOLCHAINS_VERSIONS")
109
load("@npm//@angular/build-tooling/bazel/api-golden:index.bzl", "api_golden_test_npm_package")
1110

1211
licenses(["notice"])
@@ -33,8 +32,8 @@ ts_library(
3332
"src/**/*_spec.ts",
3433
],
3534
) + [
36-
"//packages/angular_devkit/build_webpack:src/webpack/schema.ts",
3735
"//packages/angular_devkit/build_webpack:src/webpack-dev-server/schema.ts",
36+
"//packages/angular_devkit/build_webpack:src/webpack/schema.ts",
3837
],
3938
data = [
4039
"builders.json",
@@ -88,25 +87,17 @@ ts_library(
8887
],
8988
)
9089

91-
[
92-
jasmine_node_test(
93-
name = "build_webpack_test_" + toolchain_name,
94-
srcs = [":build_webpack_test_lib"],
95-
tags = [toolchain_name],
96-
# Turns off nodejs require patches and turns on the linker, which sets up up node_modules
97-
# so that standard node module resolution work.
98-
templated_args = ["--nobazel_patch_module_resolver"],
99-
toolchain = toolchain,
100-
deps = [
101-
"@npm//jasmine",
102-
"@npm//source-map",
103-
],
104-
)
105-
for toolchain_name, toolchain in zip(
106-
TOOLCHAINS_NAMES,
107-
TOOLCHAINS_VERSIONS,
108-
)
109-
]
90+
jasmine_node_test(
91+
name = "build_webpack_test",
92+
srcs = [":build_webpack_test_lib"],
93+
# Turns off nodejs require patches and turns on the linker, which sets up up node_modules
94+
# so that standard node module resolution work.
95+
templated_args = ["--nobazel_patch_module_resolver"],
96+
deps = [
97+
"@npm//jasmine",
98+
"@npm//source-map",
99+
],
100+
)
110101

111102
genrule(
112103
name = "license",

packages/angular_devkit/core/BUILD.bazel

Lines changed: 4 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
load("@npm//@angular/build-tooling/bazel/api-golden:index.bzl", "api_golden_test_npm_package")
22
load("@npm//@bazel/jasmine:index.bzl", "jasmine_node_test")
33
load("//tools:defaults.bzl", "pkg_npm", "ts_library")
4-
load("//tools:toolchain_info.bzl", "TOOLCHAINS_NAMES", "TOOLCHAINS_VERSIONS")
54

65
# Copyright Google Inc. All Rights Reserved.
76
#
@@ -62,18 +61,10 @@ ts_library(
6261
],
6362
)
6463

65-
[
66-
jasmine_node_test(
67-
name = "core_test_" + toolchain_name,
68-
srcs = [":core_test_lib"],
69-
tags = [toolchain_name],
70-
toolchain = toolchain,
71-
)
72-
for toolchain_name, toolchain in zip(
73-
TOOLCHAINS_NAMES,
74-
TOOLCHAINS_VERSIONS,
75-
)
76-
]
64+
jasmine_node_test(
65+
name = "core_test",
66+
srcs = [":core_test_lib"],
67+
)
7768

7869
genrule(
7970
name = "license",

packages/angular_devkit/core/node/BUILD.bazel

Lines changed: 7 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@
55

66
load("@npm//@bazel/jasmine:index.bzl", "jasmine_node_test")
77
load("//tools:defaults.bzl", "ts_library")
8-
load("//tools:toolchain_info.bzl", "TOOLCHAINS_NAMES", "TOOLCHAINS_VERSIONS")
98

109
licenses(["notice"])
1110

@@ -50,19 +49,11 @@ ts_library(
5049
],
5150
)
5251

53-
[
54-
jasmine_node_test(
55-
name = "node_test_" + toolchain_name,
56-
srcs = [":node_test_lib"],
57-
tags = [toolchain_name],
58-
toolchain = toolchain,
59-
deps = [
60-
"@npm//chokidar",
61-
],
62-
)
63-
for toolchain_name, toolchain in zip(
64-
TOOLCHAINS_NAMES,
65-
TOOLCHAINS_VERSIONS,
66-
)
67-
]
52+
jasmine_node_test(
53+
name = "node_test",
54+
srcs = [":node_test_lib"],
55+
deps = [
56+
"@npm//chokidar",
57+
],
58+
)
6859
# @external_end

packages/angular_devkit/schematics/BUILD.bazel

Lines changed: 8 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
load("@npm//@angular/build-tooling/bazel/api-golden:index.bzl", "api_golden_test_npm_package")
22
load("@npm//@bazel/jasmine:index.bzl", "jasmine_node_test")
33
load("//tools:defaults.bzl", "pkg_npm", "ts_library")
4-
load("//tools:toolchain_info.bzl", "TOOLCHAINS_NAMES", "TOOLCHAINS_VERSIONS")
54

65
# Copyright Google Inc. All Rights Reserved.
76
#
@@ -52,22 +51,14 @@ ts_library(
5251
],
5352
)
5453

55-
[
56-
jasmine_node_test(
57-
name = "schematics_test_" + toolchain_name,
58-
srcs = [":schematics_test_lib"],
59-
tags = [toolchain_name],
60-
toolchain = toolchain,
61-
deps = [
62-
"@npm//jasmine",
63-
"@npm//source-map",
64-
],
65-
)
66-
for toolchain_name, toolchain in zip(
67-
TOOLCHAINS_NAMES,
68-
TOOLCHAINS_VERSIONS,
69-
)
70-
]
54+
jasmine_node_test(
55+
name = "schematics_test",
56+
srcs = [":schematics_test_lib"],
57+
deps = [
58+
"@npm//jasmine",
59+
"@npm//source-map",
60+
],
61+
)
7162

7263
genrule(
7364
name = "license",

0 commit comments

Comments
 (0)