test(ivy): mark failing test targets with fixme-ivy-jit and fixme-ivy-local tags (#26471)

We are close enough to blacklist a few test targets, rather than whitelist targets to run...

Because bazel rules can be composed of other rules that don't inherit tags automatically,
I had to explicitly mark all of our ts_library and ng_module targes with "ivy-local" and
"ivy-jit" tags so that we can create a query that excludes all fixme- tagged targets even
if those targets are composed of other targets that don't inherit this tag.

This is the updated overview of ivy related bazel tags:

- ivy-only: target that builds or runs only under ivy
- fixme-ivy-jit: target that doesn't yet build or run under ivy with --compile=jit
- fixme-ivy-local: target that doesn't yet build or run under ivy with --compile=local
- no-ivy-jit: target that is not intended to build or run under ivy with --compile=jit
- no-ivy-local: target that is not intended to build or run under ivy with --compile=local

PR Close #26471
This commit is contained in:
Igor Minar 2018-10-15 23:24:22 -07:00 committed by Alex Rickabaugh
parent 361eaf1888
commit 4237c34c78
79 changed files with 347 additions and 172 deletions

View File

@ -78,16 +78,12 @@ jobs:
- run: bazel info release
- run: bazel run @nodejs//:yarn
# Use bazel query so that we explicitly ask for all buildable targets to be built as well
# This avoids waiting for the slowest build target to finish before running the first test
# See https://github.com/bazelbuild/bazel/issues/4257
# NOTE: Angular developers should typically just bazel build //packages/... or bazel test //packages/...
# Setup remote execution and run RBE-compatible tests.
- *setup_bazel_remote_execution
- run: bazel query --output=label //... | xargs bazel test --build_tag_filters=-ivy-only --test_tag_filters=-manual,-ivy-only,-local
- run: bazel test //... --build_tag_filters=-ivy-only --test_tag_filters=-ivy-only,-local
# Now run RBE incompatible tests locally.
- run: sudo cp .circleci/bazel.rc /etc/bazel.bazelrc
- run: bazel query --output=label //... | xargs bazel test --build_tag_filters=-ivy-only,local --test_tag_filters=-manual,-ivy-only,local
- run: bazel test //... --build_tag_filters=-ivy-only,local --test_tag_filters=-ivy-only,local
# CircleCI will allow us to go back and view/download these artifacts from past builds.
# Also we can use a service like https://buildsize.org/ to automatically track binary size of these artifacts.
@ -126,7 +122,7 @@ jobs:
- run: bazel run @yarn//:yarn
- *setup_bazel_remote_execution
- run: bazel query --output=label //... | xargs bazel test --define=compile=jit --build_tag_filters=ivy-jit --test_tag_filters=-manual,ivy-jit
- run: bazel test //... --define=compile=jit --build_tag_filters=ivy-jit --test_tag_filters=ivy-jit
test_ivy_aot:
<<: *job_defaults
@ -139,7 +135,7 @@ jobs:
- run: bazel run @yarn//:yarn
- *setup_bazel_remote_execution
- run: bazel query --output=label //... | xargs bazel test --define=compile=local --build_tag_filters=ivy-local --test_tag_filters=-manual,ivy-local
- run: bazel test //... --define=compile=local --build_tag_filters=ivy-local --test_tag_filters=ivy-local
# This job should only be run on PR builds, where `CIRCLE_PR_NUMBER` is defined.
aio_preview:

View File

@ -25,8 +25,6 @@ ng_package(
],
entry_point = "packages/animations/index.js",
tags = [
"ivy-jit",
"ivy-local",
"release-with-framework",
],
deps = [

View File

@ -1,8 +1,8 @@
load("//tools:defaults.bzl", "ts_library")
load("//tools:defaults.bzl", "jasmine_node_test", "ts_library", "ts_web_test_suite")
ts_library(
name = "test",
testonly = 1,
name = "test_lib",
testonly = True,
srcs = glob(["**/*.ts"]),
deps = [
"//packages:types",
@ -13,3 +13,19 @@ ts_library(
"//packages/core/testing",
],
)
jasmine_node_test(
name = "test",
bootstrap = ["angular/tools/testing/init_node_spec.js"],
deps = [
":test_lib",
"//tools/testing:node",
],
)
ts_web_test_suite(
name = "test_web",
deps = [
":test_lib",
],
)

View File

@ -2,7 +2,7 @@ load("//tools:defaults.bzl", "jasmine_node_test", "ts_library", "ts_web_test_sui
ts_library(
name = "test_lib",
testonly = 1,
testonly = True,
srcs = glob(["**/*.ts"]),
deps = [
"//packages:types",
@ -14,10 +14,6 @@ ts_library(
jasmine_node_test(
name = "test",
bootstrap = ["angular/tools/testing/init_node_spec.js"],
tags = [
"ivy-jit",
"ivy-local",
],
deps = [
":test_lib",
"//tools/testing:node",
@ -26,10 +22,6 @@ jasmine_node_test(
ts_web_test_suite(
name = "test_web",
tags = [
"ivy-jit",
"ivy-local",
],
deps = [
":test_lib",
],

View File

@ -26,6 +26,7 @@ def rules_angular_dependencies():
name = "build_bazel_rules_typescript",
url = "https://github.com/bazelbuild/rules_typescript/archive/0.20.3.zip",
strip_prefix = "rules_typescript-0.20.3",
sha256 = "2a03b23c30c5109ab0863cfa60acce73ceb56337d41efc2dd67f8455a1c1d5f3",
)
# Needed for Remote Execution

View File

@ -36,6 +36,7 @@ def rules_typescript_dependencies():
http_archive,
name = "build_bazel_rules_nodejs",
urls = ["https://github.com/bazelbuild/rules_nodejs/archive/0.15.1.zip"],
sha256 = "a0a91a2e0cee32e9304f1aeea9e6c1b611afba548058c5980217d44ee11e3dd7",
strip_prefix = "rules_nodejs-0.15.1",
)

View File

@ -24,6 +24,10 @@ jasmine_node_test(
"@ngdeps//@types/shelljs",
"@ngdeps//shelljs",
],
tags = [
"fixme-ivy-local",
"no-ivy-jit",
],
)
ts_library(
@ -65,6 +69,7 @@ jasmine_node_test(
# TODO(alexeagle): re-enable this test
# see https://github.com/angular/angular/pull/22933
tags = ["manual"],
deps = ["@ngdeps//diff"],
)
nodejs_binary(

View File

@ -33,4 +33,5 @@ jasmine_node_test(
"//packages/bazel/test/ngc-wrapped/empty:tsconfig.json",
"@build_bazel_rules_typescript//third_party/github.com/bazelbuild/bazel/src/main/protobuf:worker_protocol.proto",
],
tags = ["fixme-ivy-local"],
)

View File

@ -5,6 +5,7 @@ package(default_visibility = ["//packages/bazel/test:__subpackages__"])
ng_module(
name = "empty",
srcs = ["empty.ts"],
tags = ["fixme-ivy-local"],
tsconfig = ":tsconfig.json",
deps = [
"//packages/core",

View File

@ -8,8 +8,6 @@ ts_library(
name = "app",
srcs = ["app.ts"],
tsconfig = ":tsconfig.json",
# FIXME: should not be needed here!
deps = ["@ngdeps//@types/jasmine"],
)
ts_devserver(
@ -37,7 +35,7 @@ ts_library(
name = "ts_spec",
testonly = True,
srcs = ["test.spec.ts"],
tsconfig = ":tsconfig.json",
tsconfig = ":tsconfig.test.json",
deps = [
"@ngdeps//@types/selenium-webdriver",
"@ngdeps//protractor",

View File

@ -1,6 +1,6 @@
{
"compilerOptions": {
"lib": ["dom", "es2015"],
"types": ["jasmine"]
"types": []
}
}

View File

@ -0,0 +1,6 @@
{
"extends": "./tsconfig.json",
"compilerOptions": {
"types": ["jasmine"]
}
}

View File

@ -0,0 +1,20 @@
load("//tools:defaults.bzl", "jasmine_node_test", "ts_library")
# TODO: these tests don't even compile under bazel right now
#
# ts_library(
# name = "test_lib",
# testonly = True,
# srcs = glob(["**/*.ts"]),
# tags = ["manual"]
# )
# jasmine_node_test(
# name = "test",
# deps = [
# ":test_lib",
# "//packages/benchpress"
# # "//tools/testing:node",
# ],
# tags = ["manual"]
# )

View File

@ -28,8 +28,6 @@ ng_package(
entry_point = "packages/common/index.js",
packages = ["//packages/common/locales:package"],
tags = [
"ivy-jit",
"ivy-local",
"release-with-framework",
],
deps = [

View File

@ -2,10 +2,9 @@ load("//tools:defaults.bzl", "jasmine_node_test", "ts_library", "ts_web_test_sui
ts_library(
name = "test_lib",
testonly = 1,
testonly = True,
srcs = glob(
["**/*.ts"],
exclude = ["**/*_node_only_spec.ts"],
),
deps = [
"//packages/common/http",
@ -20,6 +19,10 @@ ts_library(
jasmine_node_test(
name = "test",
bootstrap = ["angular/tools/testing/init_node_spec.js"],
tags = [
"fixme-ivy-jit",
"fixme-ivy-local",
],
deps = [
":test_lib",
"//tools/testing:node",
@ -28,6 +31,10 @@ jasmine_node_test(
ts_web_test_suite(
name = "test_web",
tags = [
"fixme-ivy-jit",
"fixme-ivy-local",
],
deps = [
":test_lib",
],

View File

@ -2,10 +2,9 @@ load("//tools:defaults.bzl", "jasmine_node_test", "ts_library", "ts_web_test_sui
ts_library(
name = "test_lib",
testonly = 1,
testonly = True,
srcs = glob(
["**/*.ts"],
exclude = ["**/*_node_only_spec.ts"],
),
deps = [
"//packages/common",
@ -22,6 +21,10 @@ ts_library(
jasmine_node_test(
name = "test",
bootstrap = ["angular/tools/testing/init_node_spec.js"],
tags = [
"fixme-ivy-jit",
"fixme-ivy-local",
],
deps = [
":test_lib",
"//tools/testing:node",
@ -30,6 +33,10 @@ jasmine_node_test(
ts_web_test_suite(
name = "test_web",
tags = [
"fixme-ivy-jit",
"fixme-ivy-local",
],
deps = [
":test_lib",
],

View File

@ -44,8 +44,6 @@ npm_package(
"package.json",
],
tags = [
"ivy-jit",
"ivy-local",
"release-with-framework",
],
deps = [

View File

@ -4,12 +4,17 @@ load("//tools:defaults.bzl", "ng_module", "ts_library")
ng_module(
name = "app",
testonly = True,
srcs = glob(
[
"src/**/*.ts",
],
),
module_name = "app_built",
tags = [
"fixme-ivy-local",
"no-ivy-jit",
],
deps = [
"//packages/compiler-cli/integrationtest/bazel/injectable_def/lib2",
"//packages/core",

View File

@ -4,12 +4,16 @@ load("//tools:defaults.bzl", "jasmine_node_test", "ts_library")
ts_library(
name = "test_lib",
testonly = 1,
testonly = True,
srcs = glob(
[
"**/*.ts",
],
),
tags = [
"fixme-ivy-local",
"no-ivy-jit",
],
deps = [
"//packages/compiler-cli/integrationtest/bazel/injectable_def/app",
"//packages/core",
@ -21,6 +25,10 @@ ts_library(
jasmine_node_test(
name = "test",
bootstrap = ["angular/tools/testing/init_node_spec.js"],
tags = [
"fixme-ivy-local",
"no-ivy-jit",
],
deps = [
":test_lib",
"//packages/platform-server",

View File

@ -4,7 +4,7 @@ load("//tools:defaults.bzl", "jasmine_node_test", "ts_library")
ts_library(
name = "test_lib",
testonly = 1,
testonly = True,
srcs = glob(
[
"**/*.ts",
@ -19,6 +19,10 @@ ts_library(
jasmine_node_test(
name = "test",
bootstrap = ["angular/tools/testing/init_node_spec.js"],
tags = [
"fixme-ivy-jit",
"fixme-ivy-local",
],
deps = [
":test_lib",
"//tools/testing:node",

View File

@ -28,4 +28,8 @@ jasmine_node_test(
name = "test",
srcs = ["spec.js"],
data = [":flat_module_index"],
tags = [
"fixme-ivy-local",
"no-ivy-jit",
],
)

View File

@ -4,7 +4,7 @@ load("//tools:defaults.bzl", "jasmine_node_test", "ts_library")
ts_library(
name = "test_lib",
testonly = 1,
testonly = True,
srcs = glob([
"**/*.ts",
]),

View File

@ -4,7 +4,7 @@ load("//tools:defaults.bzl", "jasmine_node_test", "ts_library")
ts_library(
name = "test_lib",
testonly = 1,
testonly = True,
srcs = glob([
"**/*.ts",
]),

View File

@ -4,7 +4,7 @@ load("//tools:defaults.bzl", "jasmine_node_test", "ts_library")
ts_library(
name = "test_lib",
testonly = 1,
testonly = True,
srcs = glob([
"**/*.ts",
]),

View File

@ -4,7 +4,7 @@ load("//tools:defaults.bzl", "ts_library")
ts_library(
name = "testing",
testonly = 1,
testonly = True,
srcs = glob([
"**/*.ts",
]),

View File

@ -4,7 +4,7 @@ load("//tools:defaults.bzl", "jasmine_node_test", "ts_library")
ts_library(
name = "test_lib",
testonly = 1,
testonly = True,
srcs = glob([
"**/*.ts",
]),

View File

@ -4,7 +4,7 @@ load("//tools:defaults.bzl", "jasmine_node_test", "ts_library")
ts_library(
name = "test_lib",
testonly = 1,
testonly = True,
srcs = glob([
"**/*.ts",
]),

View File

@ -4,7 +4,7 @@ load("//tools:defaults.bzl", "jasmine_node_test", "ts_library")
ts_library(
name = "test_utils",
testonly = 1,
testonly = True,
srcs = [
"mocks.ts",
"test_support.ts",
@ -24,7 +24,7 @@ ts_library(
# extract_18n_spec
ts_library(
name = "extract_i18n_lib",
testonly = 1,
testonly = True,
srcs = [
"extract_i18n_spec.ts",
],
@ -42,6 +42,10 @@ jasmine_node_test(
data = [
"//packages/core:npm_package",
],
tags = [
"fixme-ivy-local",
"no-ivy-jit",
],
deps = [
":extract_i18n_lib",
"//packages/common:npm_package",
@ -54,7 +58,7 @@ jasmine_node_test(
# ngc_spec
ts_library(
name = "ngc_lib",
testonly = 1,
testonly = True,
srcs = [
"ngc_spec.ts",
],
@ -76,6 +80,10 @@ jasmine_node_test(
"//packages/platform-browser:npm_package",
"//packages/router:npm_package",
],
tags = [
"fixme-ivy-local",
"no-ivy-jit",
],
deps = [
":ngc_lib",
"//packages/core",
@ -88,7 +96,7 @@ jasmine_node_test(
# ngctools_api_spec
ts_library(
name = "ngtools_api_lib",
testonly = 1,
testonly = True,
srcs = [
"ngtools_api_spec.ts",
],
@ -107,6 +115,10 @@ jasmine_node_test(
"//packages/core:npm_package",
"//packages/router:npm_package",
],
tags = [
"fixme-ivy-local",
"no-ivy-jit",
],
deps = [
":ngtools_api_lib",
"//packages/core",
@ -117,7 +129,7 @@ jasmine_node_test(
# perform_watch_spec
ts_library(
name = "perform_watch_lib",
testonly = 1,
testonly = True,
srcs = [
"perform_watch_spec.ts",
],
@ -145,7 +157,7 @@ jasmine_node_test(
# perform_compile_spec
ts_library(
name = "perform_compile_lib",
testonly = 1,
testonly = True,
srcs = [
"perform_compile_spec.ts",
],

View File

@ -2,7 +2,7 @@ load("//tools:defaults.bzl", "jasmine_node_test", "ts_library")
ts_library(
name = "test_lib",
testonly = 1,
testonly = True,
srcs = glob(
["**/*.ts"],
),
@ -22,7 +22,6 @@ jasmine_node_test(
"//packages/compiler-cli/test/ngtsc/fake_core:npm_package",
],
tags = [
"ivy-local",
"ivy-only",
],
deps = [

View File

@ -2,7 +2,7 @@ load("//tools:defaults.bzl", "jasmine_node_test", "ts_library")
ts_library(
name = "mocks",
testonly = 1,
testonly = True,
srcs = [
"mocks.ts",
],
@ -19,7 +19,7 @@ ts_library(
# check_types_spec
ts_library(
name = "check_types_lib",
testonly = 1,
testonly = True,
srcs = ["check_types_spec.ts"],
deps = [
":mocks",
@ -37,6 +37,10 @@ jasmine_node_test(
"//packages/common:npm_package",
"//packages/core:npm_package",
],
tags = [
"fixme-ivy-local",
"no-ivy-jit",
],
deps = [
":check_types_lib",
"//packages/core",
@ -47,7 +51,7 @@ jasmine_node_test(
# expression_diagnostics_spec
ts_library(
name = "expression_diagnostics_lib",
testonly = 1,
testonly = True,
srcs = ["expression_diagnostics_spec.ts"],
deps = [
":mocks",
@ -67,6 +71,10 @@ jasmine_node_test(
"//packages/core:npm_package",
"//packages/forms:npm_package",
],
tags = [
"fixme-ivy-local",
"no-ivy-jit",
],
deps = [
":expression_diagnostics_lib",
"//packages/core",
@ -77,7 +85,7 @@ jasmine_node_test(
# typescript_symbols_spec
ts_library(
name = "typescript_symbols_lib",
testonly = 1,
testonly = True,
srcs = ["typescript_symbols_spec.ts"],
deps = [
":mocks",
@ -105,7 +113,7 @@ jasmine_node_test(
# typescript_version_spec
ts_library(
name = "typescript_version_lib",
testonly = 1,
testonly = True,
srcs = ["typescript_version_spec.ts"],
deps = [
"//packages/compiler-cli",

View File

@ -2,7 +2,7 @@ load("//tools:defaults.bzl", "jasmine_node_test", "ts_library")
ts_library(
name = "test_lib",
testonly = 1,
testonly = True,
srcs = glob(["**/*.ts"]),
deps = [
"//packages:types",

View File

@ -3,7 +3,7 @@ load("//tools:defaults.bzl", "jasmine_node_test", "ts_library")
# Integration tests
ts_library(
name = "ngcc_lib",
testonly = 1,
testonly = True,
srcs = glob([
"**/*_spec.ts",
]),

View File

@ -2,7 +2,7 @@ load("//tools:defaults.bzl", "jasmine_node_test", "ts_library")
ts_library(
name = "ngtsc_lib",
testonly = 1,
testonly = True,
srcs = glob(["**/*.ts"]),
deps = [
"//packages/compiler",

View File

@ -2,7 +2,7 @@ load("//tools:defaults.bzl", "jasmine_node_test", "ts_library")
ts_library(
name = "test_lib",
testonly = 1,
testonly = True,
srcs = glob(["**/*.ts"]),
deps = [
"//packages:types",
@ -25,6 +25,10 @@ jasmine_node_test(
"//packages/core:npm_package",
"//packages/router:npm_package",
],
tags = [
"fixme-ivy-local",
"no-ivy-jit",
],
deps = [
":test_lib",
"//packages/core",

View File

@ -22,8 +22,6 @@ ng_package(
entry_point = "packages/compiler/compiler.js",
include_devmode_srcs = True,
tags = [
"ivy-jit",
"ivy-local",
"release-with-framework",
],
deps = [

View File

@ -28,7 +28,7 @@ ts_library(
ts_library(
name = "test_lib",
testonly = 1,
testonly = True,
srcs = glob(
["**/*.ts"],
exclude = NODE_ONLY + UTILS,
@ -49,7 +49,7 @@ ts_library(
ts_library(
name = "test_node_only_lib",
testonly = 1,
testonly = True,
srcs = glob(
NODE_ONLY,
exclude = UTILS,
@ -74,6 +74,10 @@ jasmine_node_test(
"//packages/common:npm_package",
"//packages/core:npm_package",
],
tags = [
"fixme-ivy-jit",
"fixme-ivy-local",
],
deps = [
":test_lib",
":test_node_only_lib",
@ -86,6 +90,10 @@ jasmine_node_test(
ts_web_test_suite(
name = "test_web",
tags = [
"fixme-ivy-jit",
"fixme-ivy-local",
],
deps = [
":test_lib",
],

View File

@ -2,7 +2,7 @@ load("//tools:defaults.bzl", "ts_library")
ts_library(
name = "utils",
testonly = 1,
testonly = True,
srcs = glob(
["*.ts"],
),

View File

@ -2,7 +2,7 @@ load("//tools:defaults.bzl", "jasmine_node_test", "ts_library")
ts_library(
name = "test_lib",
testonly = 1,
testonly = True,
srcs = glob(
["**/*.ts"],
),

View File

@ -28,8 +28,6 @@ ng_package(
],
entry_point = "packages/core/index.js",
tags = [
"ivy-jit",
"ivy-local",
"release-with-framework",
],
deps = [

View File

@ -4,13 +4,11 @@ load("//tools:defaults.bzl", "jasmine_node_test", "ts_library", "ts_web_test_sui
ts_library(
name = "test_lib",
testonly = 1,
testonly = True,
srcs = glob(
["**/*.ts"],
exclude = [
"**/*_node_only_spec.ts",
"render3/**/*.ts",
"ivy_local_empty_spec.ts",
],
),
deps = [
@ -35,18 +33,9 @@ ts_library(
],
)
ts_library(
name = "ivy_local_empty_lib",
testonly = 1,
srcs = ["ivy_local_empty_spec.ts"],
deps = [
"//packages:types",
],
)
ts_library(
name = "test_node_only_lib",
testonly = 1,
testonly = True,
srcs = glob(["**/*_node_only_spec.ts"]),
deps = [
":test_lib",
@ -62,6 +51,10 @@ ts_library(
jasmine_node_test(
name = "test",
bootstrap = ["angular/tools/testing/init_node_spec.js"],
tags = [
"fixme-ivy-jit",
"fixme-ivy-local",
],
deps = [
":test_lib",
":test_node_only_lib",
@ -74,21 +67,12 @@ jasmine_node_test(
],
)
jasmine_node_test(
name = "ivy_local_empty_test",
bootstrap = ["angular/tools/testing/init_node_no_angular_spec.js"],
tags = [
"ivy-local",
"ivy-only",
],
deps = [
":ivy_local_empty_lib",
"//tools/testing:node_no_angular",
],
)
ts_web_test_suite(
name = "test_web",
tags = [
"fixme-ivy-jit",
"fixme-ivy-local",
],
deps = [
":test_lib",
],

View File

@ -37,7 +37,6 @@ js_expected_symbol_test(
src = ":bundle.min_debug.js",
golden = ":bundle.golden_symbols.json",
tags = [
"ivy-local",
"ivy-only",
],
)

View File

@ -31,7 +31,7 @@ ng_rollup_bundle(
ts_library(
name = "test_lib",
testonly = 1,
testonly = True,
srcs = glob(["*_spec.ts"]),
deps = [
"//packages:types",
@ -49,8 +49,6 @@ jasmine_node_test(
":bundle.min_debug.js",
],
tags = [
"ivy-jit",
"ivy-local",
"ivy-only",
],
deps = [":test_lib"],
@ -61,7 +59,6 @@ js_expected_symbol_test(
src = ":bundle.min_debug.js",
golden = ":bundle.golden_symbols.json",
tags = [
"ivy-local",
"ivy-only",
],
)

View File

@ -31,7 +31,7 @@ ng_rollup_bundle(
ts_library(
name = "test_lib",
testonly = 1,
testonly = True,
srcs = glob(["*_spec.ts"]),
deps = [
"//packages:types",

View File

@ -31,7 +31,7 @@ ng_rollup_bundle(
ts_library(
name = "test_lib",
testonly = 1,
testonly = True,
srcs = glob(["*_spec.ts"]),
deps = [
":injection",

View File

@ -37,7 +37,7 @@ ng_rollup_bundle(
ts_library(
name = "test_lib",
testonly = 1,
testonly = True,
srcs = glob(["*_spec.ts"]),
deps = [
"//packages:types",
@ -56,8 +56,6 @@ jasmine_node_test(
":bundle.min_debug.js",
],
tags = [
"ivy-jit",
"ivy-local",
"ivy-only",
],
deps = [":test_lib"],
@ -68,7 +66,6 @@ js_expected_symbol_test(
src = ":bundle.min_debug.js",
golden = ":bundle.golden_symbols.json",
tags = [
"ivy-local",
"ivy-only",
],
)

View File

@ -41,7 +41,7 @@ ng_rollup_bundle(
ts_library(
name = "test_lib",
testonly = 1,
testonly = True,
srcs = glob(["*_spec.ts"]),
deps = [
"//packages:types",
@ -62,8 +62,6 @@ jasmine_node_test(
":bundle.min_debug.js",
],
tags = [
"ivy-jit",
"ivy-local",
"ivy-only",
],
deps = [":test_lib"],
@ -74,7 +72,6 @@ js_expected_symbol_test(
src = ":bundle.min_debug.js",
golden = ":bundle.golden_symbols.json",
tags = [
"ivy-local",
"ivy-only",
],
)

View File

@ -1,19 +0,0 @@
/**
* @license
* 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
*/
/*
* This file exists to have at least one test target that can pass with --define=compile=local.
*
* TODO(alxhub): Clean up once actual Angular tests start passing with Ivy/AOT.
*/
describe('empty test', () => {
it('should pass without doing anything', () => {
// If this fails, you probably need a new computer.
});
});

View File

@ -4,7 +4,7 @@ load("//tools:defaults.bzl", "jasmine_node_test", "ts_library", "ts_web_test_sui
ts_library(
name = "render3_lib",
testonly = 1,
testonly = True,
srcs = glob(
["**/*.ts"],
exclude = [
@ -32,7 +32,7 @@ ts_library(
ts_library(
name = "domino",
testonly = 1,
testonly = True,
srcs = [
"domino.d.ts",
"load_domino.ts",
@ -46,7 +46,7 @@ ts_library(
ts_library(
name = "render3_node_lib",
testonly = 1,
testonly = True,
srcs = [],
deps = [
":domino",
@ -59,6 +59,10 @@ jasmine_node_test(
bootstrap = [
"angular/packages/core/test/render3/load_domino",
],
tags = [
"fixme-ivy-jit",
"fixme-ivy-local",
],
deps = [
":render3_node_lib",
"@ngdeps//zone.js",
@ -67,6 +71,10 @@ jasmine_node_test(
ts_web_test_suite(
name = "render3_web",
tags = [
"fixme-ivy-jit",
"fixme-ivy-local",
],
deps = [
":render3_lib",
],

View File

@ -4,7 +4,7 @@ load("//tools:defaults.bzl", "jasmine_node_test", "ts_library", "ts_web_test_sui
ts_library(
name = "ivy_lib",
testonly = 1,
testonly = True,
srcs = glob(["**/*.ts"]),
deps = [
"//packages:types",

View File

@ -29,7 +29,6 @@ ng_package(
"//packages/elements/schematics:npm_package",
],
tags = [
"ivy-jit",
"release-with-framework",
],
deps = [

View File

@ -20,7 +20,7 @@ ts_library(
ts_library(
name = "test_lib",
testonly = 1,
testonly = True,
srcs = glob(
[
"index_spec.ts",

View File

@ -2,7 +2,7 @@ load("//tools:defaults.bzl", "jasmine_node_test", "ts_library", "ts_web_test_sui
ts_library(
name = "test_lib",
testonly = 1,
testonly = True,
srcs = glob(["**/*.ts"]),
deps = [
"//packages:types",
@ -20,6 +20,7 @@ ts_library(
filegroup(
name = "elements_test_bootstrap_scripts",
testonly = True,
# do not sort
srcs = [
"@ngdeps//node_modules/@webcomponents/custom-elements:src/native-shim.js",
@ -34,6 +35,10 @@ ts_web_test_suite(
bootstrap = [
":elements_test_bootstrap_scripts",
],
tags = [
"fixme-ivy-jit",
"fixme-ivy-local",
],
# do not sort
deps = [
":test_lib",

View File

@ -23,8 +23,6 @@ ng_package(
srcs = ["package.json"],
entry_point = "packages/forms/index.js",
tags = [
"ivy-jit",
"ivy-local",
"release-with-framework",
],
deps = [

View File

@ -2,7 +2,7 @@ load("//tools:defaults.bzl", "jasmine_node_test", "ts_library", "ts_web_test_sui
ts_library(
name = "test_lib",
testonly = 1,
testonly = True,
srcs = glob(["**/*.ts"]),
deps = [
"//packages/core",
@ -18,6 +18,10 @@ ts_library(
jasmine_node_test(
name = "test",
bootstrap = ["angular/tools/testing/init_node_spec.js"],
tags = [
"fixme-ivy-jit",
"fixme-ivy-local",
],
deps = [
":test_lib",
"//tools/testing:node",
@ -26,6 +30,10 @@ jasmine_node_test(
ts_web_test_suite(
name = "test_web",
tags = [
"fixme-ivy-jit",
"fixme-ivy-local",
],
deps = [
":test_lib",
],

View File

@ -26,7 +26,6 @@ ng_package(
],
entry_point = "packages/http/index.js",
tags = [
"ivy-jit",
"release-with-framework",
],
deps = [

View File

@ -2,7 +2,7 @@ load("//tools:defaults.bzl", "jasmine_node_test", "ts_library", "ts_web_test_sui
ts_library(
name = "test_lib",
testonly = 1,
testonly = True,
srcs = glob(["**/*.ts"]),
deps = [
"//packages/core",
@ -18,6 +18,7 @@ ts_library(
jasmine_node_test(
name = "test",
bootstrap = ["angular/tools/testing/init_node_spec.js"],
tags = ["fixme-ivy-local"],
deps = [
":test_lib",
"//tools/testing:node",
@ -26,6 +27,7 @@ jasmine_node_test(
ts_web_test_suite(
name = "test_web",
tags = ["fixme-ivy-local"],
deps = [
":test_lib",
"@ngdeps//karma",

View File

@ -2,7 +2,7 @@ load("//tools:defaults.bzl", "jasmine_node_test", "ts_library")
ts_library(
name = "test_lib",
testonly = 1,
testonly = True,
srcs = glob(["**/*.ts"]),
deps = [
"//packages:types",
@ -22,7 +22,10 @@ jasmine_node_test(
"//packages/core:npm_package",
"//packages/forms:npm_package",
],
# disable since tests are running but not yet passing
tags = [
"fixme-ivy-jit",
"fixme-ivy-local",
],
deps = [
":test_lib",
"//tools/testing:node",

View File

@ -2,7 +2,7 @@ load("//tools:defaults.bzl", "jasmine_node_test", "ts_library", "ts_web_test_sui
ts_library(
name = "test_lib",
testonly = 1,
testonly = True,
srcs = glob(["**/*.ts"]),
deps = [
"//packages:types",
@ -18,6 +18,7 @@ ts_library(
jasmine_node_test(
name = "test",
bootstrap = ["angular/tools/testing/init_node_spec.js"],
tags = ["fixme-ivy-jit"],
deps = [
":test_lib",
"//tools/testing:node",
@ -30,6 +31,10 @@ ts_web_test_suite(
"//packages/platform-browser/test:static_assets/test.html",
"//packages/platform-browser/test:browser/static_assets/200.html",
],
tags = [
"fixme-ivy-jit",
"fixme-ivy-local",
],
deps = [
":test_lib",
],

View File

@ -29,8 +29,6 @@ ng_package(
],
entry_point = "packages/platform-browser/index.js",
tags = [
"ivy-jit",
"ivy-local",
"release-with-framework",
],
deps = [

View File

@ -0,0 +1,46 @@
load("//tools:defaults.bzl", "jasmine_node_test", "ts_library", "ts_web_test_suite")
ts_library(
name = "test_lib",
testonly = True,
srcs = glob(["**/*.ts"]),
deps = [
"//packages:types",
"//packages/animations",
"//packages/animations/browser",
"//packages/animations/browser/testing",
"//packages/common",
"//packages/compiler",
"//packages/core",
"//packages/core/testing",
"//packages/platform-browser",
"//packages/platform-browser-dynamic",
"//packages/platform-browser/animations",
"//packages/platform-browser/testing",
"@rxjs",
],
)
jasmine_node_test(
name = "test",
bootstrap = ["angular/tools/testing/init_node_spec.js"],
tags = [
"fixme-ivy-jit",
"fixme-ivy-local",
],
deps = [
":test_lib",
"//tools/testing:node",
],
)
ts_web_test_suite(
name = "test_web",
tags = [
"fixme-ivy-jit",
"fixme-ivy-local",
],
deps = [
":test_lib",
],
)

View File

@ -11,8 +11,9 @@ import {Component, Injectable, NgZone, RendererFactory2, RendererType2, ViewChil
import {TestBed} from '@angular/core/testing';
import {BrowserAnimationsModule, ɵAnimationRendererFactory as AnimationRendererFactory} from '@angular/platform-browser/animations';
import {DomRendererFactory2} from '@angular/platform-browser/src/dom/dom_renderer';
import {InjectableAnimationEngine} from '../../animations/src/providers';
import {el} from '../../testing/src/browser_util';
import {InjectableAnimationEngine} from '../src/providers';
(function() {
if (isNode) return;
@ -282,7 +283,7 @@ import {el} from '../../testing/src/browser_util';
@Component({
selector: 'my-cmp',
template: `
<div [@myAnimation]="exp"></div>
<div [@myAnimation]="exp"></div>
`,
animations: [trigger('myAnimation', [])]
})

View File

@ -12,8 +12,8 @@ import {Component, ViewChild} from '@angular/core';
import {TestBed, fakeAsync, flushMicrotasks} from '@angular/core/testing';
import {NoopAnimationsModule} from '@angular/platform-browser/animations';
import {BrowserAnimationBuilder} from '../../animations/src/animation_builder';
import {el} from '../../testing/src/browser_util';
import {BrowserAnimationBuilder} from '../src/animation_builder';
{
describe('BrowserAnimationBuilder', () => {

View File

@ -7,7 +7,7 @@ exports_files([
ts_library(
name = "test_lib",
testonly = 1,
testonly = True,
srcs = glob(["**/*.ts"]),
deps = [
"//packages:types",
@ -29,7 +29,10 @@ ts_library(
jasmine_node_test(
name = "test",
bootstrap = ["angular/tools/testing/init_node_spec.js"],
# dissable since tests are running but not yet passing
tags = [
"fixme-ivy-jit",
"fixme-ivy-local",
],
deps = [
":test_lib",
"//tools/testing:node",
@ -41,6 +44,10 @@ ts_web_test_suite(
static_files = [
":static_assets/test.html",
],
tags = [
"fixme-ivy-jit",
"fixme-ivy-local",
],
deps = [
":test_lib",
],

View File

@ -2,7 +2,7 @@ load("//tools:defaults.bzl", "jasmine_node_test", "ts_library")
ts_library(
name = "test_lib",
testonly = 1,
testonly = True,
srcs = glob(["**/*.ts"]),
deps = [
"//packages:types",
@ -25,6 +25,10 @@ ts_library(
jasmine_node_test(
name = "test",
bootstrap = ["angular/tools/testing/init_node_spec.js"],
tags = [
"fixme-ivy-jit",
"fixme-ivy-local",
],
deps = [
":test_lib",
"//tools/testing:node",

View File

@ -25,7 +25,6 @@ ng_package(
srcs = ["package.json"],
entry_point = "packages/platform-webworker/index.js",
tags = [
"ivy-jit",
"release-with-framework",
],
deps = [

View File

@ -2,7 +2,7 @@ load("//tools:defaults.bzl", "jasmine_node_test", "ts_library", "ts_web_test_sui
ts_library(
name = "test_lib",
testonly = 1,
testonly = True,
srcs = glob(["**/*.ts"]),
deps = [
"//packages:types",
@ -20,6 +20,7 @@ ts_library(
jasmine_node_test(
name = "test",
bootstrap = ["angular/tools/testing/init_node_spec.js"],
tags = ["fixme-ivy-local"],
deps = [
":test_lib",
"//tools/testing:node",
@ -28,6 +29,10 @@ jasmine_node_test(
ts_web_test_suite(
name = "test_web",
tags = [
"fixme-ivy-jit",
"fixme-ivy-local",
],
deps = [
":test_lib",
],

View File

@ -29,8 +29,6 @@ ng_package(
],
entry_point = "packages/router/index.js",
tags = [
"ivy-jit",
"ivy-local",
"release-with-framework",
],
deps = [

View File

@ -2,7 +2,7 @@ load("//tools:defaults.bzl", "jasmine_node_test", "ts_library", "ts_web_test_sui
ts_library(
name = "test_lib",
testonly = 1,
testonly = True,
srcs = glob(["**/*.ts"]),
deps = [
"//packages/common",
@ -23,6 +23,10 @@ ts_library(
jasmine_node_test(
name = "test",
bootstrap = ["angular/tools/testing/init_node_spec.js"],
tags = [
"fixme-ivy-jit",
"fixme-ivy-local",
],
deps = [
":test_lib",
"//tools/testing:node",
@ -31,6 +35,10 @@ jasmine_node_test(
ts_web_test_suite(
name = "test_web",
tags = [
"fixme-ivy-jit",
"fixme-ivy-local",
],
deps = [
":test_lib",
],

View File

@ -2,7 +2,9 @@ load("//tools:defaults.bzl", "jasmine_node_test", "ng_module", "ts_library", "ts
ng_module(
name = "aot_routing_module",
testonly = True,
srcs = ["aot_router_module.ts"],
tags = ["no-ivy-jit"],
deps = [
"//packages/core",
"//packages/router",
@ -12,8 +14,12 @@ ng_module(
ts_library(
name = "aot_test_lib",
testonly = 1,
testonly = True,
srcs = ["aot_router_bootstrap.spec.ts"],
tags = [
"fixme-ivy-local",
"no-ivy-jit",
],
deps = [
":aot_routing_module",
"//packages/core",
@ -26,6 +32,10 @@ ts_library(
jasmine_node_test(
name = "test",
bootstrap = ["angular/tools/testing/init_node_spec.js"],
tags = [
"fixme-ivy-local",
"no-ivy-jit",
],
deps = [
":aot_test_lib",
"//tools/testing:node",

View File

@ -2,7 +2,7 @@ load("//tools:defaults.bzl", "ts_library", "ts_web_test_suite")
ts_library(
name = "test_lib",
testonly = 1,
testonly = True,
srcs = glob(["**/*.ts"]),
deps = [
"//packages/common",
@ -15,6 +15,10 @@ ts_library(
ts_web_test_suite(
name = "test_web",
tags = [
"fixme-ivy-jit",
"fixme-ivy-local",
],
deps = [
":test_lib",
],

View File

@ -5,9 +5,7 @@ load("//tools:defaults.bzl", "ng_rollup_bundle", "ts_library")
ts_library(
name = "cli",
srcs = glob(
[
"*.ts",
],
["**/*.ts"],
),
tsconfig = ":tsconfig.json",
deps = [

View File

@ -2,7 +2,7 @@ load("//tools:defaults.bzl", "jasmine_node_test", "ts_library", "ts_web_test_sui
ts_library(
name = "test_lib",
testonly = 1,
testonly = True,
srcs = glob(["**/*.ts"]),
deps = [
"//packages:types",
@ -20,6 +20,7 @@ ts_library(
jasmine_node_test(
name = "test",
bootstrap = ["angular/tools/testing/init_node_spec.js"],
tags = ["fixme-ivy-local"],
deps = [
":test_lib",
"//tools/testing:node",
@ -28,6 +29,7 @@ jasmine_node_test(
ts_web_test_suite(
name = "test_web",
tags = ["fixme-ivy-local"],
deps = [
":test_lib",
],

View File

@ -4,7 +4,7 @@ load("//tools:defaults.bzl", "ng_module")
ng_module(
name = "testing",
testonly = 1,
testonly = True,
srcs = glob(["**/*.ts"]),
module_name = "@angular/service-worker/testing",
deps = [

View File

@ -2,7 +2,7 @@ load("//tools:defaults.bzl", "jasmine_node_test", "ts_library")
ts_library(
name = "test_lib",
testonly = 1,
testonly = True,
srcs = glob(
["**/*.ts"],
),
@ -16,7 +16,6 @@ ts_library(
jasmine_node_test(
name = "test",
srcs = [],
deps = [
":test_lib",
],

View File

@ -4,7 +4,7 @@ load("//tools:defaults.bzl", "ts_library")
ts_library(
name = "testing",
testonly = 1,
testonly = True,
srcs = glob(["**/*.ts"]),
deps = [
"//packages:types",

View File

@ -28,8 +28,6 @@ ng_package(
],
entry_point = "packages/upgrade/index.js",
tags = [
"ivy-jit",
"ivy-local",
"release-with-framework",
],
deps = [

View File

@ -2,7 +2,7 @@ load("//tools:defaults.bzl", "jasmine_node_test", "ts_library", "ts_web_test_sui
ts_library(
name = "test_lib",
testonly = 1,
testonly = True,
srcs = glob(["**/*.ts"]),
deps = [
"//packages:types",
@ -22,6 +22,10 @@ ts_web_test_suite(
static_files = [
"//:angularjs_scripts",
],
tags = [
"fixme-ivy-jit",
"fixme-ivy-local",
],
deps = [
":test_lib",
],

View File

@ -61,6 +61,7 @@ buildTargetPackages "$LEGACY_TARGETS" "dist/packages-dist" "legacy" "Production"
|| "${CIRCLE_PROJECT_REPONAME-}" != "angular"
]] && exit 0
# TODO: do we actually need to query for jit and local targets? shouldn't this be all the packages that we publish to npm?
IVY_JIT_TARGETS=`bazel query --output=label 'attr("tags", "\[.*ivy-jit.*\]", //packages/...) intersect kind(".*_package", //packages/...)'`
IVY_LOCAL_TARGETS=`bazel query --output=label 'attr("tags", "\[.*ivy-local.*\]", //packages/...) intersect kind(".*_package", //packages/...)'`

View File

@ -44,7 +44,7 @@ PKG_GROUP_REPLACEMENTS = {
]""" % ",\n ".join(["\"%s\"" % s for s in ANGULAR_SCOPED_PACKAGES]),
}
def ts_library(tsconfig = None, testonly = False, deps = [], **kwargs):
def ts_library(tsconfig = None, testonly = False, deps = [], tags = [], **kwargs):
"""Default values for ts_library"""
deps = deps + ["@ngdeps//tslib"]
if testonly:
@ -56,15 +56,17 @@ def ts_library(tsconfig = None, testonly = False, deps = [], **kwargs):
tsconfig = _DEFAULT_TSCONFIG_TEST
else:
tsconfig = _DEFAULT_TSCONFIG_BUILD
_ts_library(
tsconfig = tsconfig,
testonly = testonly,
deps = deps,
node_modules = _DEFAULT_TS_TYPINGS,
tags = ivy_tags(tags),
**kwargs
)
def ng_module(name, tsconfig = None, entry_point = None, testonly = False, deps = [], **kwargs):
def ng_module(name, tsconfig = None, entry_point = None, testonly = False, deps = [], tags = [], **kwargs):
"""Default values for ng_module"""
deps = deps + ["@ngdeps//tslib"]
if testonly:
@ -88,6 +90,7 @@ def ng_module(name, tsconfig = None, entry_point = None, testonly = False, deps
compiler = _INTERNAL_NG_MODULE_COMPILER,
ng_xi18n = _INTERNAL_NG_MODULE_XI18N,
node_modules = _DEFAULT_TS_TYPINGS,
tags = ivy_tags(tags),
**kwargs
)
@ -149,7 +152,7 @@ def npm_package(name, replacements = {}, **kwargs):
**kwargs
)
def ts_web_test_suite(bootstrap = [], deps = [], **kwargs):
def ts_web_test_suite(bootstrap = [], deps = [], tags = [], **kwargs):
"""Default values for ts_web_test_suite"""
if not bootstrap:
bootstrap = ["//:web_test_bootstrap_scripts"]
@ -172,6 +175,7 @@ def ts_web_test_suite(bootstrap = [], deps = [], **kwargs):
# "@io_bazel_rules_webtesting//browsers:firefox-local",
# TODO(alexeagle): add remote browsers on SauceLabs
],
tags = ivy_tags(tags),
**kwargs
)
@ -183,7 +187,7 @@ def nodejs_binary(**kwargs):
**kwargs
)
def jasmine_node_test(deps = [], **kwargs):
def jasmine_node_test(deps = [], tags = [], **kwargs):
"""Default values for jasmine_node_test"""
deps = deps + [
# Very common dependencies for tests
@ -198,6 +202,7 @@ def jasmine_node_test(deps = [], **kwargs):
]
_jasmine_node_test(
deps = deps,
tags = ivy_tags(tags),
# Pass-thru --define=compile=foo as an environment variable
configuration_env_vars = ["compile"],
**kwargs
@ -212,3 +217,16 @@ def ng_rollup_bundle(deps = [], **kwargs):
deps = deps,
**kwargs
)
def ivy_tags(tags):
"""Sets inclusive ivy-jit and ivy-local tags"""
# Set the tags by default unless no-ivy-jit, no-ivy-local, fixme-ivy-jit, or fixme-ivy-local were specified.
# We should remove this and use only explicitly defined tags once https://github.com/bazelbuild/rules_nodejs/pull/388 is fixed.
if not tags:
tags = ["ivy-jit", "ivy-local"]
elif "no-ivy-jit" not in tags and "fixme-ivy-jit" not in tags:
tags = tags + ["ivy-jit"]
elif "no-ivy-local" not in tags and "fixme-ivy-local" not in tags:
tags = tags + ["ivy-local"]
return tags