Files
Kristiyan Kostadinov 204265f9a3 build: switch examples away from protractor
Reworks the `examples` tests not to depend on Protractor.
2026-08-14 08:22:34 -07:00

95 lines
2.1 KiB
Python

load("@aspect_rules_esbuild//esbuild:defs.bzl", "esbuild")
load("//tools:defaults.bzl", "angular_jasmine_test", "http_server", "ng_project", "ts_project", "webdriver_test")
package(default_visibility = ["//visibility:public"])
ng_project(
name = "core_examples",
srcs = glob(
["**/*.ts"],
exclude = [
"**/*_spec.ts",
"**/*_howto.ts",
],
),
deps = [
"//:node_modules/rxjs",
"//:node_modules/zone.js",
"//packages/animations",
"//packages/core",
"//packages/forms",
"//packages/platform-browser",
"//packages/platform-browser/animations",
"//packages/router",
],
)
ts_project(
name = "core_tests_lib",
testonly = True,
srcs = glob(
["**/*_spec.ts"],
exclude = ["**/e2e_test/*"],
),
deps = [
"//packages/core",
"//packages/core/testing",
],
)
ts_project(
name = "core_e2e_tests_lib",
testonly = True,
srcs = glob(["**/e2e_test/*_spec.ts"]),
tsconfig = "//packages/examples:tsconfig_e2e",
deps = [
"//:node_modules/@types/jasmine",
"//:node_modules/@types/selenium-webdriver",
"//:node_modules/selenium-webdriver",
"//packages/examples/test-utils",
],
)
esbuild(
name = "app_bundle",
config = {
"resolveExtensions": [".js"],
},
entry_point = ":main.ts",
tsconfig = "//packages/examples:tsconfig_build",
deps = [
":core_examples",
"//packages/examples:tsconfig_build",
],
)
http_server(
name = "devserver",
srcs = ["//packages/examples:index.html"],
additional_root_paths = ["_main/packages/examples"],
deps = [":app_bundle"],
)
webdriver_test(
name = "webdriver_tests",
server = ":devserver",
deps = [
":core_e2e_tests_lib",
],
)
angular_jasmine_test(
name = "test",
data = [
":core_tests_lib",
"//packages/examples/core/di/ts/forward_ref:forward_ref_tests_lib",
],
)
filegroup(
name = "files_for_docgen",
srcs = glob([
"**/*.ts",
]),
)