angular-docs-cn/packages/forms/test
Andrew Kushnir 0723331b2a refactor(forms): move common validators-related logic to the `AbstractControlDirective` class (#38280)
This commit refactors validators-related logic that is common across most of the directives.

A couple notes on this refactoring:
* common logic was moved to the `AbstractControlDirective` class (including `validator` and
`asyncValidator` getters)
* sync/async validators are now composed in `AbstractControlDirective` class eagerly when validators
are set with `_setValidators` and `_setAsyncValidators` calls and the result is stored in directive
instance (thus getters return cached versions of validator fn). This is needed to make sure composed
validator function remains the same (retains its identity) for a given directive instance, so that
this function can be added and later removed from an instance of an AbstractControl-based class
(like `FormControl`). Preserving validator function is required to perform proper cleanup (in followup
PRs) of the AbstractControl-based classes when a directive is destroyed.

PR Close #38280
2020-10-28 09:48:20 -07:00
..
BUILD.bazel test: disable failing saucelabs tests (#36620) 2020-04-14 10:13:33 -07:00
directives_spec.ts refactor(forms): move common validators-related logic to the `AbstractControlDirective` class (#38280) 2020-10-28 09:48:20 -07:00
form_array_spec.ts refactor(forms): refactor common validators used in unit tests (#38020) 2020-07-22 20:42:43 -07:00
form_builder_spec.ts build: update license headers to reference Google LLC (#37205) 2020-05-26 14:26:58 -04:00
form_control_spec.ts refactor(forms): refactor common validators used in unit tests (#38020) 2020-07-22 20:42:43 -07:00
form_group_spec.ts fix(forms): ensure to emit `statusChanges` on subsequent value update/validations (#38354) 2020-09-01 10:36:31 -07:00
reactive_integration_spec.ts fix(forms): handle form groups/arrays own pending async validation (#22575) 2020-06-25 12:07:25 -07:00
spies.ts build: update license headers to reference Google LLC (#37205) 2020-05-26 14:26:58 -04:00
template_integration_spec.ts feat(core): update reference and doc to change `async` to `waitAsync`. (#37583) 2020-08-03 12:54:13 -07:00
util.ts refactor(forms): refactor common validators used in unit tests (#38020) 2020-07-22 20:42:43 -07:00
validators_spec.ts refactor(forms): get rid of duplicate functions (#38371) 2020-08-07 11:40:04 -07:00
value_accessor_integration_spec.ts feat(core): update reference and doc to change `async` to `waitAsync`. (#37583) 2020-08-03 12:54:13 -07:00