angular-docs-cn/packages/core/test
JoostK 2afc40608d fix(ivy): support injecting ChangeDetectorRef on templates (#27565)
Previously, using a pipe in an input binding on an ng-template would
evaluate the pipe in the context of node that was processed before the
template. This caused the retrieval of e.g. ChangeDetectorRef to be
incorrect, resulting in one of the following bugs depending on the
template's structure:

1. If the template was at the root of a view, the previously processed
node would be the component's host node outside of the current view.
Accessing that node in the context of the current view results in a crash.
2. For templates not at the root, the ChangeDetectorRef injected into the
pipe would correspond with the previously processed node. If that node
hosts a component, the ChangeDetectorRef would not correspond with the
view that the ng-template is part of.

The solution to the above problem is two-fold:

1. Template compilation is adjusted such that the template instruction
is emitted before any instructions produced by input bindings, such as
pipes. This ensures that pipes are evaluated in the context of the
template's container node.
2. A ChangeDetectorRef can be requested for container nodes.

Fixes #28587

PR Close #27565
2019-02-13 09:46:53 -08:00
..
acceptance fix(ivy): support injecting ChangeDetectorRef on templates (#27565) 2019-02-13 09:46:53 -08:00
animation test(ivy): move error-handling test to be handled at a later stage (#28212) 2019-01-25 12:54:04 -08:00
bundling feat(ivy): provide support for map-based host bindings for [style] and [class] (#28246) 2019-02-11 16:21:19 -08:00
change_detection build: extract interface and util sub compilation from core (#28028) 2019-01-10 16:31:44 -08:00
debug fix(ivy): Implement remaining methods for DebugNode (#27387) 2018-12-04 19:58:25 -08:00
di feat(ivy): improve stacktrace for `R3Injector` errors (#28207) 2019-02-05 01:53:20 -05:00
dom fix(platform-server): add styles to elements correctly (#22527) 2018-03-14 14:12:31 -07:00
linker test(core): update JIT source mapping tests for ivy (#28055) 2019-02-12 20:58:27 -08:00
metadata refactor(core): do not remove `templateUrl` when resolving (#28055) 2019-02-12 20:58:27 -08:00
reflection build: extract interface and util sub compilation from core (#28028) 2019-01-10 16:31:44 -08:00
render3 fix(ivy): ngOnChanges should be inherited from super class (#28563) 2019-02-11 16:22:31 -08:00
sanitization fix(ivy): sanitization for Host Bindings (#27939) 2019-01-08 17:17:04 -08:00
testability build: extract interface and util sub compilation from core (#28028) 2019-01-10 16:31:44 -08:00
util feat(core): upgrade rxjs to 6.0.0-alpha.4 (#22573) 2018-03-19 21:51:51 -07:00
view feat(ivy): improve stacktrace for `R3Injector` errors (#28207) 2019-02-05 01:53:20 -05:00
zone build: extract interface and util sub compilation from core (#28028) 2019-01-10 16:31:44 -08:00
BUILD.bazel test(core): update JIT source mapping tests for ivy (#28055) 2019-02-12 20:58:27 -08:00
application_init_spec.ts fix(ivy): Enable AoT tests to run on CI; disable failing tests (#26975) 2018-11-07 10:35:20 -08:00
application_module_spec.ts build(core): remove `main()` from specs (#21053) 2017-12-22 13:10:51 -08:00
application_ref_integration_spec.ts test(ivy): finish root cause analysis for @angular/core TestBed failing tests (#27510) 2018-12-06 13:41:02 -08:00
application_ref_spec.ts fix(ivy): link correct ngModule's injector to the bootstrapped component (#28183) 2019-01-23 15:06:59 -08:00
component_fixture_spec.ts test(ivy): update root causes for @angular/core TestBed failures (#27370) 2018-11-30 13:41:21 -08:00
dev_mode_spec.ts build(core): remove `main()` from specs (#21053) 2017-12-22 13:10:51 -08:00
directive_lifecycle_integration_spec.ts test(ivy): update root causes for @angular/core TestBed failures (#27419) 2018-12-03 08:19:56 -08:00
error_handler_spec.ts refactor(ivy): refactor more files in DI to prepare it for bazel packages (#28098) 2019-01-14 09:55:30 -08:00
event_emitter_spec.ts fix(core): fix proper propagation of subscriptions in EventEmitter (#22016) 2018-02-06 07:56:33 -08:00
fake_async_spec.ts fix(ivy): update token used for fakeAsync test (#28383) 2019-01-29 16:39:14 -08:00
forward_ref_integration_spec.ts fix(ivy): properly query root nodes of embedded views(shallow queries) (#28560) 2019-02-08 16:42:45 -08:00
i18n_integration_spec.ts fix(ivy): remove nested placeholders with i18n (#28595) 2019-02-07 16:56:36 -08:00
spies.ts build: fix file paths after moving modules/@angular/* to packages/* 2017-03-08 16:29:28 -08:00
test_bed_async_spec.ts fix(ivy): stub TestBed.compileComponents implementation (#26506) 2018-10-17 13:08:14 -07:00
test_bed_spec.ts fix(ivy): proper component resolution in case of inheritance (#28439) 2019-02-05 23:29:04 -05:00
testing_internal_spec.ts fix(core): use addCustomEqualityTester instead of overriding toEqual (#22983) 2018-07-03 08:35:15 -07:00
util_spec.ts build: extract interface and util sub compilation from core (#28028) 2019-01-10 16:31:44 -08:00