Skip to content

Commit 0351edd

Browse files
committed
test: add bazel targets to run all unit tests for each package
Adds a new `:unit_tests` target to each top-level package we publish. This target will run all unit tests under that package. Also adds a `:unit_tests` target under `//src` that runs the unit tests for all packages. Currently `blaze test //src:unit_tests` and `blaze test //src/...` should be equivalent. However, in a followup PR I plan to move the e2e tests under their respective components directories. The e2e tests will be excluded from `//src:unit_tests` so we'll be able to run `bazel test //src:unit_tests`, `bazel test //src:e2e_tests`, and `bazel test //src/...` to run all unit tests, all e2e tests, and all tests respectively.
1 parent f1bd252 commit 0351edd

File tree

25 files changed

+88
-27
lines changed

25 files changed

+88
-27
lines changed

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
"postinstall": "ngc -p angular-tsconfig.json",
1616
"build": "gulp build-release-packages",
1717
"dev-app": "gulp serve:devapp",
18-
"test": "gulp test",
18+
"test": "bazel test //src:unit_tests",
1919
"lint": "gulp lint",
2020
"e2e": "bazel test //e2e/...",
2121
"deploy": "gulp deploy:devapp",

packages.bzl

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,14 @@ MATERIAL_SCSS_LIBS = [
7979
]
8080

8181
MATERIAL_EXPERIMENTAL_PACKAGES = [
82+
"mdc-button",
83+
"mdc-card",
84+
"mdc-checkbox",
85+
"mdc-chips",
86+
"mdc-helpers",
87+
"mdc-menu",
88+
"mdc-radio",
89+
"mdc-slide-toggle",
8290
"popover-edit",
8391
]
8492

src/BUILD.bazel

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,3 +37,14 @@ dgeni_api_docs(
3737
},
3838
tags = ["docs-package"],
3939
)
40+
41+
test_suite(
42+
name = "unit_tests",
43+
tests = [
44+
"//src/cdk:unit_tests",
45+
"//src/cdk-experimental:unit_tests",
46+
"//src/material:unit_tests",
47+
"//src/material-experimental:unit_tests",
48+
"//src/material-moment-adapter:unit_tests",
49+
],
50+
)

src/cdk-experimental/BUILD.bazel

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,3 +22,8 @@ ng_package(
2222
# files.
2323
tags = ["manual"],
2424
)
25+
26+
test_suite(
27+
name = "unit_tests",
28+
tests = ["//src/cdk-experimental/%s:unit_tests" % name for name in CDK_EXPERIMENTAL_PACKAGES],
29+
)

src/cdk/BUILD.bazel

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,3 +30,8 @@ ng_package(
3030
# files.
3131
tags = ["manual"],
3232
)
33+
34+
test_suite(
35+
name = "unit_tests",
36+
tests = ["//src/cdk/%s:unit_tests" % name for name in CDK_PACKAGES],
37+
)

src/cdk/platform/BUILD.bazel

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,3 +21,6 @@ filegroup(
2121
name = "source-files",
2222
srcs = glob(["**/*.ts"]),
2323
)
24+
25+
# No-op unit tests, target must exist since it is referenced by //src/cdk:unit_tests
26+
test_suite(name = "unit_tests")

src/cdk/stepper/BUILD.bazel

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,3 +27,6 @@ filegroup(
2727
name = "source-files",
2828
srcs = glob(["**/*.ts"]),
2929
)
30+
31+
# No-op unit tests, target must exist since it is referenced by //src/cdk:unit_tests
32+
test_suite(name = "unit_tests")

src/dev-app/BUILD.bazel

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -44,13 +44,5 @@ sass_binary(
4444
],
4545
deps = [
4646
"//src/material/core:all_themes",
47-
"//src/material-experimental/mdc-helpers:mdc_scss_deps_lib",
48-
"//src/material-experimental/mdc-button:button_scss_lib",
49-
"//src/material-experimental/mdc-card:card_scss_lib",
50-
"//src/material-experimental/mdc-checkbox:checkbox_scss_lib",
51-
"//src/material-experimental/mdc-chips:chips_scss_lib",
52-
"//src/material-experimental/mdc-menu:menu_scss_lib",
53-
"//src/material-experimental/mdc-radio:radio_scss_lib",
54-
"//src/material-experimental/mdc-slide-toggle:slide_toggle_scss_lib",
5547
] + MATERIAL_EXPERIMENTAL_SCSS_LIBS
5648
)

src/e2e-app/BUILD.bazel

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -58,13 +58,13 @@ sass_binary(
5858
deps = [
5959
"//src/material/core:all_themes",
6060
"//src/material-experimental/mdc-helpers:mdc_scss_deps_lib",
61-
"//src/material-experimental/mdc-button:button_scss_lib",
62-
"//src/material-experimental/mdc-card:card_scss_lib",
63-
"//src/material-experimental/mdc-checkbox:checkbox_scss_lib",
64-
"//src/material-experimental/mdc-chips:chips_scss_lib",
65-
"//src/material-experimental/mdc-menu:menu_scss_lib",
66-
"//src/material-experimental/mdc-radio:radio_scss_lib",
67-
"//src/material-experimental/mdc-slide-toggle:slide_toggle_scss_lib",
61+
"//src/material-experimental/mdc-button:mdc_button_scss_lib",
62+
"//src/material-experimental/mdc-card:mdc_card_scss_lib",
63+
"//src/material-experimental/mdc-checkbox:mdc_checkbox_scss_lib",
64+
"//src/material-experimental/mdc-chips:mdc_chips_scss_lib",
65+
"//src/material-experimental/mdc-menu:mdc_menu_scss_lib",
66+
"//src/material-experimental/mdc-radio:mdc_radio_scss_lib",
67+
"//src/material-experimental/mdc-slide-toggle:mdc_slide_toggle_scss_lib",
6868
]
6969
)
7070

src/material-experimental/BUILD.bazel

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ package(default_visibility=["//visibility:public"])
22

33
load("@io_bazel_rules_sass//:defs.bzl", "sass_library")
44
load("//tools:defaults.bzl", "ng_module", "ng_package")
5-
load("//:packages.bzl", "ROLLUP_GLOBALS")
5+
load("//:packages.bzl", "MATERIAL_EXPERIMENTAL_PACKAGES", "ROLLUP_GLOBALS")
66

77
exports_files(["mdc_require_config.js"])
88

@@ -24,3 +24,8 @@ ng_package(
2424
# TODO(devversion): re-enable once we have set up the proper compiler for the ng_package
2525
tags = ["manual"],
2626
)
27+
28+
test_suite(
29+
name = "unit_tests",
30+
tests = ["//src/material-experimental/%s:unit_tests" % name for name in MATERIAL_EXPERIMENTAL_PACKAGES],
31+
)

src/material-experimental/mdc-button/BUILD.bazel

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ ng_module(
1717
)
1818

1919
sass_library(
20-
name = "button_scss_lib",
20+
name = "mdc_button_scss_lib",
2121
srcs = glob(["**/_*.scss"]),
2222
deps = [
2323
"//src/material/core:core_scss_lib",
@@ -64,3 +64,6 @@ sass_binary(
6464
"//src/material-experimental/mdc-helpers:mdc_scss_deps_lib",
6565
],
6666
)
67+
68+
# No-op unit tests, target must exist since it is referenced by //src/material-experimental:unit_tests
69+
test_suite(name = "unit_tests")
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,2 @@
11
// TODO: copy tests from existing mat-button, update as necessary to fix.
2+
// Once implemented, add test rule in BUILD.bazel

src/material-experimental/mdc-card/BUILD.bazel

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ ng_module(
1515
)
1616

1717
sass_library(
18-
name = "card_scss_lib",
18+
name = "mdc_card_scss_lib",
1919
srcs = glob(["**/_*.scss"]),
2020
deps = [
2121
"//src/material/core:core_scss_lib",
@@ -27,3 +27,6 @@ sass_binary(
2727
name = "card_scss",
2828
src = "card.scss",
2929
)
30+
31+
# No-op unit tests, target must exist since it is referenced by //src/material-experimental:unit_tests
32+
test_suite(name = "unit_tests")
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,2 @@
11
// TODO: copy tests from existing mat-card, update as necessary to fix.
2+
// Once implemented, add test rule in BUILD.bazel

src/material-experimental/mdc-checkbox/BUILD.bazel

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ ng_module(
2222
)
2323

2424
sass_library(
25-
name = "checkbox_scss_lib",
25+
name = "mdc_checkbox_scss_lib",
2626
srcs = glob(["**/_*.scss"]),
2727
deps = [
2828
"//src/material/core:core_scss_lib",
@@ -38,8 +38,8 @@ sass_binary(
3838
"external/npm/node_modules",
3939
],
4040
deps = [
41-
":checkbox_scss_lib",
4241
"//src/material/core:all_themes",
42+
"//src/material-experimental/mdc-helpers:mdc_helpers_scss_lib",
4343
"//src/material-experimental/mdc-helpers:mdc_scss_deps_lib",
4444
]
4545
)

src/material-experimental/mdc-chips/BUILD.bazel

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ ng_module(
1717
)
1818

1919
sass_library(
20-
name = "chips_scss_lib",
20+
name = "mdc_chips_scss_lib",
2121
srcs = glob(["**/_*.scss"]),
2222
deps = [
2323
"//src/material/core:core_scss_lib",
@@ -37,3 +37,6 @@ sass_binary(
3737
"//src/material-experimental/mdc-helpers:mdc_scss_deps_lib",
3838
]
3939
)
40+
41+
# No-op unit tests, target must exist since it is referenced by //src/material-experimental:unit_tests
42+
test_suite(name = "unit_tests")
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,2 @@
11
// TODO: copy tests from existing mat-chip-list, update as necessary to fix.
2+
// Once implemented, add test rule in BUILD.bazel

src/material-experimental/mdc-helpers/BUILD.bazel

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -131,3 +131,6 @@ sass_library(
131131
"//src/material/core:core_scss_lib",
132132
],
133133
)
134+
135+
# No-op unit tests, target must exist since it is referenced by //src/material-experimental:unit_tests
136+
test_suite(name = "unit_tests")

src/material-experimental/mdc-menu/BUILD.bazel

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ ng_module(
2020
)
2121

2222
sass_library(
23-
name = "menu_scss_lib",
23+
name = "mdc_menu_scss_lib",
2424
srcs = glob(["**/_*.scss"]),
2525
deps = [
2626
"//src/material/core:core_scss_lib",
@@ -36,7 +36,6 @@ sass_binary(
3636
"external/npm/node_modules",
3737
],
3838
deps = [
39-
":menu_scss_lib",
4039
"//src/material/core:all_themes",
4140
"//src/material-experimental/mdc-helpers:mdc_scss_deps_lib",
4241
]

src/material-experimental/mdc-radio/BUILD.bazel

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ ng_module(
1515
)
1616

1717
sass_library(
18-
name = "radio_scss_lib",
18+
name = "mdc_radio_scss_lib",
1919
srcs = glob(["**/_*.scss"]),
2020
deps = [
2121
"//src/material/core:core_scss_lib",
@@ -27,3 +27,6 @@ sass_binary(
2727
name = "radio_scss",
2828
src = "radio.scss",
2929
)
30+
31+
# No-op unit tests, target must exist since it is referenced by //src/material-experimental:unit_tests
32+
test_suite(name = "unit_tests")
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,2 @@
11
// TODO: copy tests from existing mat-radio, update as necessary to fix.
2+
// Once implemented, add test rule in BUILD.bazel

src/material-experimental/mdc-slide-toggle/BUILD.bazel

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ ng_module(
2020
)
2121

2222
sass_library(
23-
name = "slide_toggle_scss_lib",
23+
name = "mdc_slide_toggle_scss_lib",
2424
srcs = glob(["**/_*.scss"]),
2525
deps = [
2626
"//src/material/core:core_scss_lib",
@@ -36,7 +36,7 @@ sass_binary(
3636
"external/npm/node_modules",
3737
],
3838
deps = [
39-
":slide_toggle_scss_lib",
39+
"//src/material-experimental/mdc-helpers:mdc_helpers_scss_lib",
4040
"//src/material-experimental/mdc-helpers:mdc_scss_deps_lib",
4141
]
4242
)

src/material/BUILD.bazel

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,3 +53,8 @@ ng_package(
5353
# files.
5454
tags = ["manual"],
5555
)
56+
57+
test_suite(
58+
name = "unit_tests",
59+
tests = ["//src/material/%s:unit_tests" % name for name in MATERIAL_PACKAGES],
60+
)

src/material/card/BUILD.bazel

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,3 +38,6 @@ filegroup(
3838
name = "source-files",
3939
srcs = glob(["**/*.ts"]),
4040
)
41+
42+
# No-op unit tests, target must exist since it is referenced by //src/material:unit_tests
43+
test_suite(name = "unit_tests")

src/material/form-field/BUILD.bazel

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -93,3 +93,6 @@ filegroup(
9393
name = "source-files",
9494
srcs = glob(["**/*.ts"]),
9595
)
96+
97+
# No-op unit tests, target must exist since it is referenced by //src/material:unit_tests
98+
test_suite(name = "unit_tests")

0 commit comments

Comments
 (0)