angular/packages/compiler/test
ayazhafiz 3d11355fec test(compiler): add expression absolute span tests for TemplateAsts (#33253)
Previously, we had tested that expressions parsed in a Render3 AST
had correctly-defined absolute spans (spans relative to the entire
template, not the local expression). Sometimes we use Template ASTs
rather than Render3 ASTs, and it's desirable to test for correct
expression spans in the template parser as well.

Adding these tests resolved one bug, similar to the one fixed in
fd4fed14d8, where expressions in the value
of a template attribute were not given an absolute span corresponding to
the start of the attribute name rather than the start of the attribute
value.

The diff on this commit is large, partially because it involves some
structural changes of the template parser testing layout. In particular,
the following is done:

1. Move `createMeta*`-like functions from `template_parser_spec.ts` to
   be exported from a new test utility file.
2. Create an `ExpressionSourceHumanizer`, similar to the one created in
   b04488d692, to allow convenient testing
   of expressions' locations.
3. Create `template_parser_absolute_span_spec.ts`, testing the spans of
   expressions parsed by the template parser. This is very similar to
   the `r3_ast_absolute_span_spec`.

PR Close #33253
2019-10-24 09:53:58 -07:00
..
aot perf: don't create holey arrays (#32155) 2019-08-21 08:27:43 -07:00
css_parser build: fix type-check errors introduced during rules_ts 0.21 (#27586) 2018-12-10 16:33:41 -08:00
expression_parser feat(ivy): record absolute position of template expressions (#31391) 2019-07-22 09:48:35 -07:00
i18n fix(ivy): i18n - do not render message ids unnecessarily (#32867) 2019-10-02 14:52:00 -07:00
ml_parser fix(compiler): do not remove whitespace wrapping i18n expansions (#31962) 2019-08-09 12:03:50 -07:00
output perf: don't create holey arrays (#32155) 2019-08-21 08:27:43 -07:00
render3 fix(compiler): ensure that legacy ids are rendered for ICUs (#33318) 2019-10-22 13:30:16 -04:00
schema feat(ivy): add ngcc ivy switch (#25238) 2018-08-16 13:51:42 -07:00
selector refactor(core): move Meta methods that only have one version from DomAdapter (#32408) 2019-09-03 11:59:39 -07:00
template_parser test(compiler): add expression absolute span tests for TemplateAsts (#33253) 2019-10-24 09:53:58 -07:00
BUILD.bazel build: remove extra unused deps for compiler:test (#30482) 2019-05-16 09:43:01 -07:00
compiler_facade_interface_spec.ts test(ivy): verify equality of ngBaseDef metadata between compiler and core (#31210) 2019-07-02 11:06:46 -07:00
config_spec.ts feat(core): set preserveWhitespaces to false by default (#22046) 2018-02-16 09:06:14 -08:00
core_spec.ts test: clean up explicit dynamic query usages (#33015) 2019-10-17 16:10:10 -04:00
directive_lifecycle_spec.ts build: remove main() from specs (#21053) 2017-12-22 13:10:51 -08:00
directive_normalizer_spec.ts build: remove main() from specs (#21053) 2017-12-22 13:10:51 -08:00
directive_resolver_mock_spec.ts build: remove main() from specs (#21053) 2017-12-22 13:10:51 -08:00
directive_resolver_spec.ts test: clean up explicit dynamic query usages (#33015) 2019-10-17 16:10:10 -04:00
integration_spec.ts build(bazel): Turning on strictPropertyInitialization for Angular. (#24572) 2018-06-25 07:57:13 -07:00
metadata_resolver_fixture.ts refactor: move angular source to /packages rather than modules/@angular 2017-03-08 16:29:27 -08:00
metadata_resolver_spec.ts fix(compiler): Fix compiler crash due to isSkipSelf of null (#30075) 2019-04-24 17:06:53 -07:00
ng_module_resolver_mock_spec.ts build: remove main() from specs (#21053) 2017-12-22 13:10:51 -08:00
ng_module_resolver_spec.ts build: remove main() from specs (#21053) 2017-12-22 13:10:51 -08:00
parse_util_spec.ts build: remove main() from specs (#21053) 2017-12-22 13:10:51 -08:00
pipe_resolver_mock_spec.ts build: remove main() from specs (#21053) 2017-12-22 13:10:51 -08:00
pipe_resolver_spec.ts build: remove main() from specs (#21053) 2017-12-22 13:10:51 -08:00
resource_loader_mock_spec.ts build: remove main() from specs (#21053) 2017-12-22 13:10:51 -08:00
runtime_compiler_spec.ts build: remove main() from specs (#21053) 2017-12-22 13:10:51 -08:00
shadow_css_spec.ts fix(compiler): Don't strip /*# sourceURL ... */ (#16088) 2018-01-24 12:35:30 -08:00
spies.ts perf: switch angular to use StaticInjector instead of ReflectiveInjector 2017-08-07 15:42:34 -07:00
style_url_resolver_spec.ts build: remove main() from specs (#21053) 2017-12-22 13:10:51 -08:00
test_bindings.ts refactor(compiler): split compiler and core (#18683) 2017-08-16 17:58:53 -05:00
url_resolver_spec.ts build: remove main() from specs (#21053) 2017-12-22 13:10:51 -08:00
util_spec.ts refactor: fix typescript strict flag failures in all tests (#30993) 2019-07-18 14:21:26 -07:00