angular/packages/core/test
Andrew Scott 468d3fb9b1 fix(core): rethrow errors during ApplicationRef.tick in TestBed (#57200)
Errors during change detection from `ApplicationRef.tick` are only
reported to the `ErrorHandler`. By default, this only logs the error to
console. As a result, these errors can be missed/ignored and allow tests
to pass when they should not. This change ensures that the errors are
surfaced. Note that this is already the behavior when zoneless is
enabled.

BREAKING CHANGE: Errors that are thrown during `ApplicationRef.tick`
will now be rethrown when using `TestBed`. These errors should be
resolved by ensuring the test environment is set up correctly to
complete change detection successfully. There are two alternatives to
catch the errors:

* Instead of waiting for automatic change detection to happen, trigger
  it synchronously and expect the error. For example, a jasmine test
  could write `expect(() => TestBed.inject(ApplicationRef).tick()).toThrow()`
* `TestBed` will reject any outstanding `ComponentFixture.whenStable` promises. A jasmine test,
for example, could write `expectAsync(fixture.whenStable()).toBeRejected()`.

As a last resort, you can configure errors to _not_ be rethrown by
setting `rethrowApplicationErrors` to `false` in `TestBed.configureTestingModule`.

PR Close #57200
2024-08-12 11:23:46 -07:00
..
acceptance refactor(core): replace usages of removeChild (#57203) 2024-08-07 16:46:09 +00:00
animation refactor: migrate core to prettier formatting (#55488) 2024-04-29 09:49:19 -07:00
authoring refactor(core): clean up clang comments and workarounds (#55750) 2024-05-13 11:10:36 -07:00
bundling fix(router): Align RouterModule.forRoot errorHandler with provider error handler (#57050) 2024-08-12 09:28:08 -07:00
change_detection refactor: migrate core to prettier formatting (#55488) 2024-04-29 09:49:19 -07:00
compiler refactor: migrate core to prettier formatting (#55488) 2024-04-29 09:49:19 -07:00
debug refactor: migrate core to prettier formatting (#55488) 2024-04-29 09:49:19 -07:00
di refactor: migrate core to prettier formatting (#55488) 2024-04-29 09:49:19 -07:00
dom refactor(core): replace usages of removeChild (#57203) 2024-08-07 16:46:09 +00:00
event_dispatch fix(core): Account for addEventListener to be passed a Window or Document. (#57282) 2024-08-08 08:32:11 -07:00
hydration refactor: migrate core to prettier formatting (#55488) 2024-04-29 09:49:19 -07:00
i18n refactor: migrate core to prettier formatting (#55488) 2024-04-29 09:49:19 -07:00
linker fix(core): link errors to ADEV (#55554) (#56038) 2024-05-28 12:50:53 +02:00
metadata refactor: migrate core to prettier formatting (#55488) 2024-04-29 09:49:19 -07:00
playground/zone-signal-input refactor: migrate core to prettier formatting (#55488) 2024-04-29 09:49:19 -07:00
reflection refactor(core): remove unused logic from reflection capabilities (#45335) 2022-03-24 11:02:39 -07:00
render3 fix(core): take skip hydration flag into account while hydrating i18n blocks (#57299) 2024-08-09 08:07:48 -07:00
sanitization refactor: migrate core to prettier formatting (#55488) 2024-04-29 09:49:19 -07:00
signals refactor: migrate core to prettier formatting (#55488) 2024-04-29 09:49:19 -07:00
strict_types refactor(core): rename ...WithMeta types to ...Declaration and alias to unknown (#41119) 2021-03-22 08:57:18 -07:00
testability refactor: migrate core to prettier formatting (#55488) 2024-04-29 09:49:19 -07:00
util refactor: migrate core to prettier formatting (#55488) 2024-04-29 09:49:19 -07:00
zone refactor: migrate core to prettier formatting (#55488) 2024-04-29 09:49:19 -07:00
application_config_spec.ts refactor: migrate core to prettier formatting (#55488) 2024-04-29 09:49:19 -07:00
application_init_spec.ts fix(core): link errors to ADEV (#55554) (#56038) 2024-05-28 12:50:53 +02:00
application_module_spec.ts refactor: migrate core to prettier formatting (#55488) 2024-04-29 09:49:19 -07:00
application_ref_integration_spec.ts refactor: migrate core to prettier formatting (#55488) 2024-04-29 09:49:19 -07:00
application_ref_spec.ts fix(core): link errors to ADEV (#55554) (#56038) 2024-05-28 12:50:53 +02:00
BUILD.bazel test(core): Add scheduler in tests to tie into ApplicationRef.isStable (#53579) 2024-01-09 16:05:31 -08:00
change_detection_scheduler_spec.ts fix(core): Allow hybrid CD scheduling to support multiple "Angular zones" (#57267) 2024-08-08 10:46:26 -07:00
component_fixture_spec.ts fix(core): rethrow errors during ApplicationRef.tick in TestBed (#57200) 2024-08-12 11:23:46 -07:00
defer_fixture_spec.ts refactor: migrate core to prettier formatting (#55488) 2024-04-29 09:49:19 -07:00
dev_mode_spec.ts test(core): clean up unnecessary nesting in old tests (#52239) 2023-10-19 09:26:15 -07:00
directive_lifecycle_integration_spec.ts refactor: migrate core to prettier formatting (#55488) 2024-04-29 09:49:19 -07:00
error_handler_spec.ts refactor: migrate core to prettier formatting (#55488) 2024-04-29 09:49:19 -07:00
event_emitter_spec.ts feat(core): Add whenStable helper on ApplicationRef (#57190) 2024-08-06 21:28:16 +00:00
fake_async_spec.ts fix(zone.js): Update the default behavior of fakeAsync to flush after the test (#57240) 2024-08-05 20:24:54 +00:00
forward_ref_integration_spec.ts refactor: migrate core to prettier formatting (#55488) 2024-04-29 09:49:19 -07:00
runtime_error_spec.ts refactor(docs-infra): complete removal of aio directory (#56496) 2024-06-18 12:26:00 -07:00
test_bed_effect_spec.ts refactor: migrate core to prettier formatting (#55488) 2024-04-29 09:49:19 -07:00
test_bed_spec.ts refactor(core): handle incomplete DOCUMENT instances during cleanup in tests (#56422) 2024-06-17 09:05:52 -07:00
transfer_state_spec.ts refactor(core): replace usages of removeChild (#57203) 2024-08-07 16:46:09 +00:00
util_spec.ts refactor: migrate core to prettier formatting (#55488) 2024-04-29 09:49:19 -07:00