angular/packages/core/test/acceptance
Kristiyan Kostadinov 873229f24b feat(core): add opt-in test module teardown configuration (#42566)
We currently have two long-standing issues related to how `TestBed` tests are torn down:
1. The dynamically-created test module isn't going to be destroyed, preventing the `ngOnDestroy` hooks on providers from running and keeping the component `style` nodes in the DOM.
2. The test root elements aren't going to be removed from the DOM. Instead, they will be removed whenever another test component is created.

By themselves, these issues are easy to resolve, but given how long they've been around, there are a lot of unit tests out there that depend on the broken behavior.

These changes address the issues by introducing APIs that allow users to opt into the correct test teardown behavior either at the application level via `TestBed.initTestEnvironment` or the test suite level via `TestBed.configureTestingModule`.

At the moment, the new teardown behavior is opt-in, but the idea is that we'll eventually make it opt-out before removing the configuration altogether.

Fixes #18831.

PR Close #42566
2021-06-17 18:03:47 +00:00
..
attributes_spec.ts build: update license headers to reference Google LLC (#37205) 2020-05-26 14:26:58 -04:00
bootstrap_spec.ts test: clean up internal testing utilities (#42177) 2021-05-26 20:07:25 +00:00
BUILD.bazel refactor(core): add debug ranges to LViewDebug with matchers (#38359) 2020-08-06 16:58:11 -07:00
change_detection_spec.ts fix(core): Ensure OnPush ancestors are marked dirty when events occur (#39833) 2020-11-25 14:39:19 -08:00
change_detection_transplanted_view_spec.ts fix(core): clear the RefreshTransplantedView when detached (#38768) 2020-09-10 09:11:38 -07:00
common_integration_spec.ts build: update license headers to reference Google LLC (#37205) 2020-05-26 14:26:58 -04:00
component_spec.ts Revert "perf(core): avoid storing LView in __ngContext__ (#41358)" (#41901) 2021-04-30 14:12:52 -07:00
content_spec.ts docs: update links to use HTTPS as protocol (#39718) 2020-11-20 12:52:16 -08:00
copy_definition_feature_spec.ts build: update license headers to reference Google LLC (#37205) 2020-05-26 14:26:58 -04:00
debug_spec.ts Revert "perf(core): avoid storing LView in __ngContext__ (#41358)" (#41901) 2021-04-30 14:12:52 -07:00
di_spec.ts feat(core): support forwardRef in providedIn of Injectable declaration (#41426) 2021-04-06 10:03:38 -07:00
directive_spec.ts build: update license headers to reference Google LLC (#37205) 2020-05-26 14:26:58 -04:00
discover_utils_spec.ts test: clean up internal testing utilities (#42177) 2021-05-26 20:07:25 +00:00
embedded_views_spec.ts build: update license headers to reference Google LLC (#37205) 2020-05-26 14:26:58 -04:00
exports_spec.ts build: update license headers to reference Google LLC (#37205) 2020-05-26 14:26:58 -04:00
host_binding_spec.ts fix(compiler): incorrectly interpreting some HostBinding names (#40233) 2021-01-07 13:15:46 -08:00
i18n_spec.ts fix(core): handle multiple i18n attributes with expression bindings (#41882) 2021-04-30 14:20:15 -07:00
inherit_definition_feature_spec.ts build: update license headers to reference Google LLC (#37205) 2020-05-26 14:26:58 -04:00
integration_spec.ts feat(compiler): support safe keyed read expressions (#41911) 2021-06-03 13:22:41 -07:00
lifecycle_spec.ts fix(core): error if detectChanges is called at the wrong time under specific circumstances (#40206) 2020-12-22 14:52:12 -08:00
listener_spec.ts fix(core): global listeners not being bound on non-node host elements (#42014) 2021-05-14 14:51:04 +00:00
ng_module_spec.ts refactor(compiler): move factory out of injector definition (#41022) 2021-03-08 15:31:30 -08:00
ngdevmode_debug_spec.ts Revert "perf(core): avoid storing LView in __ngContext__ (#41358)" (#41901) 2021-04-30 14:12:52 -07:00
ngmodule_scope_spec.ts fix(core): prevent NgModule scope being overwritten in JIT compiler (#37795) 2020-08-11 09:50:27 -07:00
outputs_spec.ts build: update license headers to reference Google LLC (#37205) 2020-05-26 14:26:58 -04:00
pipe_spec.ts fix(compiler): evaluate safe navigation expressions in correct binding order (#37911) 2020-08-11 09:51:10 -07:00
profiler_spec.ts test: clean up internal testing utilities (#42177) 2021-05-26 20:07:25 +00:00
property_binding_spec.ts fix(compiler): don't report parse error for interpolation inside string in property binding (#40267) 2021-01-05 13:57:23 -08:00
property_interpolation_spec.ts build: update license headers to reference Google LLC (#37205) 2020-05-26 14:26:58 -04:00
providers_spec.ts refactor(compiler): implement ngDeclareInjectable() (#41316) 2021-04-07 13:57:13 -07:00
pure_function_spec.ts build: update license headers to reference Google LLC (#37205) 2020-05-26 14:26:58 -04:00
query_spec.ts fix(core): Switch emitDistinctChangesOnlyDefaultValue to true (#41121) 2021-03-12 10:47:56 -08:00
renderer_factory_spec.ts build: update license headers to reference Google LLC (#37205) 2020-05-26 14:26:58 -04:00
router_integration_spec.ts build: update license headers to reference Google LLC (#37205) 2020-05-26 14:26:58 -04:00
security_spec.ts ci: add lint error for files with missing trailing new-line (#42478) 2021-06-04 13:31:03 -07:00
styling_spec.ts fix(compiler): handle case-sensitive CSS custom properties (#41380) 2021-03-30 16:57:44 -07:00
template_ref_spec.ts fix(core): allow EmbeddedViewRef context to be updated (#40360) 2021-02-23 08:14:01 -08:00
text_spec.ts fix(compiler): handle strings inside bindings that contain binding characters (#39826) 2020-12-10 11:11:21 -08:00
view_container_ref_spec.ts feat(core): add opt-in test module teardown configuration (#42566) 2021-06-17 18:03:47 +00:00
view_insertion_spec.ts build: update license headers to reference Google LLC (#37205) 2020-05-26 14:26:58 -04:00
view_ref_spec.ts fix(core): memory leak if view container host view is destroyed while view ref is not (#40219) 2021-01-08 09:45:12 -08:00