angular-docs-cn/packages/core/test
Kara Erickson 9b93bd625f fix(ivy): ensure views created in constructors dont break queries (#29983)
Previous to this change, we assumed embedded views could only be created after
their parent template node had completed processing. As a result, we only set
up query logic for containers after directives on the node were created.
However, this assumption didn't take into account the case where a directive
on a template node could create views in its constructor.

This commit fixes query logic to work with views created in constructors.
In that case, we need to create a query container before the new view is
rendered so query results in the view aren't lost. But since the query container
is created before directives have completed processing, we also have to ensure
that query results gathered later on the template node are inserted before that
query container. Otherwise, query results in embedded views will clobber query
results on template nodes.

This splice mode may be slightly slower than the normal matching for queries on
containers, but we should only fall back to this strategy in the edge case where
views are created in constructors. (We should encourage developers to create
views in ngOnInit instead).

PR Close #29983
2019-04-19 10:01:32 -07:00
..
acceptance fix(ivy): ensure views created in constructors dont break queries (#29983) 2019-04-19 10:01:32 -07:00
animation fix(ivy): DebugNode.query should query nodes in the logical tree (#29480) 2019-03-26 12:48:37 -07:00
bundling fix(ivy): directiveInject should fall back to inject (#29948) 2019-04-16 19:31:46 -07:00
change_detection build: extract interface and util sub compilation from core (#28028) 2019-01-10 16:31:44 -08:00
debug fix(ivy): DebugNode.properties not preserving type of values (#29914) 2019-04-16 09:50:44 -07:00
di refactor(ivy): use ɵɵ instead of Δ for now (#29850) 2019-04-11 16:27:56 -07:00
dom fix(platform-server): add styles to elements correctly (#22527) 2018-03-14 14:12:31 -07:00
linker fix(ivy): ensure views created in constructors dont break queries (#29983) 2019-04-19 10:01:32 -07:00
metadata fix(ivy): platform module bootstrap does not resolve resources (#29083) 2019-03-12 11:50:06 -07:00
reflection build: extract interface and util sub compilation from core (#28028) 2019-01-10 16:31:44 -08:00
render3 fix(ivy): support providing components and dirs in tests (#29945) 2019-04-16 19:14:17 -07:00
sanitization refactor(ivy): use ɵɵ instead of Δ for now (#29850) 2019-04-11 16:27:56 -07:00
strict_types refactor(ivy): use ɵɵ instead of Δ for now (#29850) 2019-04-11 16:27:56 -07:00
testability build: update zone.js to 0.9.0 (#28219) 2019-03-26 12:50:38 -07:00
util refactor(ivy): remove duplicated flatten util (#29547) 2019-03-27 12:36:23 -07:00
view refactor(ivy): use ɵɵ instead of Δ for now (#29850) 2019-04-11 16:27:56 -07:00
zone build: extract interface and util sub compilation from core (#28028) 2019-01-10 16:31:44 -08:00
BUILD.bazel Revert "feat(ivy): use i18n locale data to determine the plural form of ICU expressions (#29249)" (#29918) 2019-04-15 16:55:51 -07: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 Revert "feat(ivy): use i18n locale data to determine the plural form of ICU expressions (#29249)" (#29918) 2019-04-15 16:55:51 -07: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 build: update to rules_typescript 0.25.1 (#28625) 2019-02-21 07:46:21 -08:00
i18n_integration_spec.ts Revert "feat(ivy): use i18n locale data to determine the plural form of ICU expressions (#29249)" (#29918) 2019-04-15 16:55:51 -07: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): allow TestBed.createComponent to create components in isolation (#29981) 2019-04-19 09:45:52 -07:00
testing_internal_spec.ts build: update to rules_typescript 0.25.1 (#28625) 2019-02-21 07:46:21 -08:00
util_spec.ts build: extract interface and util sub compilation from core (#28028) 2019-01-10 16:31:44 -08:00