Skip to content

Commit e873c22

Browse files
alan-agius4AndrewKushnir
authored andcommitted
build: clean up language service integration tests and Bazel dependencies (angular#64271)
The legacy `workspace` integration test asset folder has been removed as it was unused and no longer representative of modern Angular CLI workspaces. In line with this cleanup, the Bazel dependency definitions for the integration tests have been reorganized. Runtime data dependencies have been moved from the `js_test` rules to the `data` attribute of their corresponding `ts_project` rules. This is a cleaner and more appropriate approach as it co-locates a test's runtime data dependencies with its source code definition, making the relationship between the code and its required assets more explicit and improving the overall maintainability of the build configuration. PR Close angular#64271
1 parent 808d6ae commit e873c22

File tree

18 files changed

+38
-144
lines changed

18 files changed

+38
-144
lines changed

.bazelignore

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,5 +73,4 @@ tools/bazel/rules_angular_store/node_modules
7373
vscode-ng-language-service/node_modules
7474
vscode-ng-language-service/server/node_modules
7575
vscode-ng-language-service/integration/pre_standalone_project/node_modules
76-
vscode-ng-language-service/integration/workspace/node_modules
7776
vscode-ng-language-service/integration/project/node_modules

MODULE.bazel

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,6 @@ npm.npm_translate_lock(
9898
"//tools/bazel/rules_angular_store:package.json",
9999
"//vscode-ng-language-service/integration/pre_standalone_project:package.json",
100100
"//vscode-ng-language-service/integration/project:package.json",
101-
"//vscode-ng-language-service/integration/workspace:package.json",
102101
],
103102
npmrc = "//:.npmrc",
104103
pnpm_lock = "//:pnpm-lock.yaml",

pnpm-lock.yaml

Lines changed: 0 additions & 22 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

pnpm-workspace.yaml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,6 @@ packages:
2929
- vscode-ng-language-service
3030
- vscode-ng-language-service/server
3131
- vscode-ng-language-service/integration/pre_standalone_project
32-
- vscode-ng-language-service/integration/workspace
3332
- vscode-ng-language-service/integration/project
3433

3534
allowedDeprecatedVersions:

vscode-ng-language-service/BUILD.bazel

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -87,6 +87,9 @@ npm_package(
8787
":vsix",
8888
":vsix_sandbox",
8989
],
90+
data = [
91+
"//vscode-ng-language-service:node_modules/@angular/language-service",
92+
],
9093
root_paths = [
9194
"vsix_sandbox",
9295
],

vscode-ng-language-service/client/BUILD.bazel

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,9 @@ esbuild(
2121
"main",
2222
],
2323
},
24+
data = [
25+
"//vscode-ng-language-service:node_modules/@angular/language-service",
26+
],
2427
entry_point = "//vscode-ng-language-service/client/src:extension.js",
2528
external = [
2629
"vscode",

vscode-ng-language-service/integration/BUILD.bazel

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,15 @@ ts_project(
1414
srcs = [
1515
"test_constants.ts",
1616
],
17+
data = [
18+
"//vscode-ng-language-service/integration/pre_standalone_project",
19+
"//vscode-ng-language-service/integration/pre_standalone_project:node_modules/@angular/common",
20+
"//vscode-ng-language-service/integration/pre_standalone_project:node_modules/@angular/core",
21+
"//vscode-ng-language-service/integration/project",
22+
"//vscode-ng-language-service/integration/project:node_modules/@angular/common",
23+
"//vscode-ng-language-service/integration/project:node_modules/@angular/core",
24+
"//vscode-ng-language-service/server:index",
25+
],
1726
declaration = True,
1827
source_map = True,
1928
tsconfig = "//vscode-ng-language-service:tsconfig",

vscode-ng-language-service/integration/e2e/BUILD.bazel

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,11 @@ ts_project(
55
name = "e2e",
66
testonly = True,
77
srcs = glob(["*.ts"]),
8+
data = [
9+
"//vscode-ng-language-service:node_modules/jasmine",
10+
"//vscode-ng-language-service:node_modules/jasmine-reporters",
11+
"//vscode-ng-language-service:node_modules/xvfb",
12+
],
813
declaration = True,
914
source_map = True,
1015
tsconfig = "//vscode-ng-language-service:tsconfig",
@@ -25,15 +30,7 @@ js_test(
2530
name = "test",
2631
data = [
2732
":e2e",
28-
"//vscode-ng-language-service:node_modules/jasmine",
29-
"//vscode-ng-language-service:node_modules/jasmine-reporters",
30-
"//vscode-ng-language-service:node_modules/xvfb",
3133
"//vscode-ng-language-service:npm",
32-
"//vscode-ng-language-service/integration/project",
33-
"//vscode-ng-language-service/integration/project:node_modules/@angular/common",
34-
"//vscode-ng-language-service/integration/project:node_modules/@angular/core",
35-
"//vscode-ng-language-service/server:node_modules/@angular/language-service",
36-
"//vscode-ng-language-service/server:node_modules/typescript",
3734
],
3835
entry_point = ":index.js",
3936
env = {
Lines changed: 13 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,30 +1,15 @@
11
load("//tools:defaults.bzl", "jasmine_test", "ts_project")
22

3-
jasmine_test(
4-
name = "test",
5-
data = [
6-
":test_lib",
7-
"//vscode-ng-language-service/integration",
8-
"//vscode-ng-language-service/integration/pre_standalone_project",
9-
"//vscode-ng-language-service/integration/pre_standalone_project:node_modules/@angular/common",
10-
"//vscode-ng-language-service/integration/pre_standalone_project:node_modules/@angular/core",
11-
"//vscode-ng-language-service/integration/project",
12-
"//vscode-ng-language-service/integration/project:node_modules/@angular/common",
13-
"//vscode-ng-language-service/integration/project:node_modules/@angular/core",
14-
"//vscode-ng-language-service/server:index",
15-
"//vscode-ng-language-service/server:node_modules/@angular/language-service",
16-
"//vscode-ng-language-service/server:node_modules/typescript",
17-
],
18-
flaky = True,
19-
shard_count = 2,
20-
)
21-
223
ts_project(
234
name = "test_lib",
245
testonly = True,
256
srcs = glob([
267
"*.ts",
278
]),
9+
data = [
10+
"//vscode-ng-language-service/integration",
11+
"//vscode-ng-language-service/server:index",
12+
],
2813
tsconfig = "//vscode-ng-language-service/integration:tsconfig-test",
2914
deps = [
3015
"//vscode-ng-language-service:node_modules/@types/jasmine",
@@ -36,3 +21,12 @@ ts_project(
3621
"//vscode-ng-language-service/integration",
3722
],
3823
)
24+
25+
jasmine_test(
26+
name = "test",
27+
data = [
28+
":test_lib",
29+
],
30+
flaky = True,
31+
shard_count = 2,
32+
)

vscode-ng-language-service/integration/pre_standalone_project/BUILD.bazel

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,6 @@ copy_to_bin(
77
name = "pre_standalone_project",
88
srcs = glob(["**"]),
99
visibility = [
10-
"//vscode-ng-language-service/integration/lsp:__pkg__",
10+
"//vscode-ng-language-service/integration:__pkg__",
1111
],
1212
)

0 commit comments

Comments
 (0)