File tree Expand file tree Collapse file tree 4 files changed +6
-6
lines changed
material-experimental/mdc-input Expand file tree Collapse file tree 4 files changed +6
-6
lines changed Original file line number Diff line number Diff line change @@ -1070,7 +1070,7 @@ describe('MatMdcInput with forms', () => {
10701070 expect ( describedBy ) . toBe ( errorIds ) ;
10711071 } ) ) ;
10721072
1073- it ( 'should not set `aria-invalid` to true if the input is empty' , fakeAsync ( ( ) => {
1073+ it ( 'should set `aria-invalid` to true if the input is empty' , fakeAsync ( ( ) => {
10741074 // Submit the form since it's the one that triggers the default error state matcher.
10751075 dispatchFakeEvent ( fixture . nativeElement . querySelector ( 'form' ) , 'submit' ) ;
10761076 fixture . detectChanges ( ) ;
@@ -1079,7 +1079,7 @@ describe('MatMdcInput with forms', () => {
10791079 expect ( testComponent . formControl . invalid ) . toBe ( true , 'Expected form control to be invalid' ) ;
10801080 expect ( inputEl . value ) . toBeFalsy ( ) ;
10811081 expect ( inputEl . getAttribute ( 'aria-invalid' ) )
1082- . toBe ( 'false ' , 'Expected aria-invalid to be set to "false". ' ) ;
1082+ . toBe ( 'true ' , 'Expected aria-invalid to be set to "true" ' ) ;
10831083
10841084 inputEl . value = 'not valid' ;
10851085 fixture . detectChanges ( ) ;
Original file line number Diff line number Diff line change @@ -35,7 +35,7 @@ import {MatInput as BaseMatInput} from '@angular/material/input';
3535 '[attr.readonly]' : 'readonly && !_isNativeSelect || null' ,
3636 // Only mark the input as invalid for assistive technology if it has a value since the
3737 // state usually overlaps with `aria-required` when the input is empty and can be redundant.
38- '[attr.aria-invalid]' : 'errorState && !empty ' ,
38+ '[attr.aria-invalid]' : '(empty && required) ? null : errorState ' ,
3939 '[attr.aria-required]' : 'required' ,
4040 } ,
4141 providers : [ { provide : MatFormFieldControl , useExisting : MatInput } ] ,
Original file line number Diff line number Diff line change @@ -1219,7 +1219,7 @@ describe('MatInput with forms', () => {
12191219 expect ( describedBy ) . toBe ( errorIds ) ;
12201220 } ) ) ;
12211221
1222- it ( 'should not set `aria-invalid` to true if the input is empty' , fakeAsync ( ( ) => {
1222+ it ( 'should set `aria-invalid` to true if the input is empty' , fakeAsync ( ( ) => {
12231223 // Submit the form since it's the one that triggers the default error state matcher.
12241224 dispatchFakeEvent ( fixture . nativeElement . querySelector ( 'form' ) , 'submit' ) ;
12251225 fixture . detectChanges ( ) ;
@@ -1228,7 +1228,7 @@ describe('MatInput with forms', () => {
12281228 expect ( testComponent . formControl . invalid ) . toBe ( true , 'Expected form control to be invalid' ) ;
12291229 expect ( inputEl . value ) . toBeFalsy ( ) ;
12301230 expect ( inputEl . getAttribute ( 'aria-invalid' ) )
1231- . toBe ( 'false ' , 'Expected aria-invalid to be set to "false ".' ) ;
1231+ . toBe ( 'true ' , 'Expected aria-invalid to be set to "true ".' ) ;
12321232
12331233 inputEl . value = 'not valid' ;
12341234 fixture . detectChanges ( ) ;
Original file line number Diff line number Diff line change @@ -86,7 +86,7 @@ const _MatInputMixinBase: CanUpdateErrorStateCtor & typeof MatInputBase =
8686 '[attr.readonly]' : 'readonly && !_isNativeSelect || null' ,
8787 // Only mark the input as invalid for assistive technology if it has a value since the
8888 // state usually overlaps with `aria-required` when the input is empty and can be redundant.
89- '[attr.aria-invalid]' : 'errorState && !empty ' ,
89+ '[attr.aria-invalid]' : '(empty && required) ? null : errorState ' ,
9090 '[attr.aria-required]' : 'required' ,
9191 } ,
9292 providers : [ { provide : MatFormFieldControl , useExisting : MatInput } ] ,
You can’t perform that action at this time.
0 commit comments