@@ -6,6 +6,7 @@ import { createHostFactory, mockProvider, SpectatorHost } from '@ngneat/spectato
66import { MockComponent } from 'ng-mocks' ;
77import { NEVER } from 'rxjs' ;
88import { ButtonComponent } from '../button/button.component' ;
9+ import { CheckboxComponent } from '../checkbox/checkbox.component' ;
910import { DividerComponent } from '../divider/divider.component' ;
1011import { LabelComponent } from '../label/label.component' ;
1112import { LoadAsyncModule } from '../load-async/load-async.module' ;
@@ -30,7 +31,8 @@ describe('Multi Select Component', () => {
3031 MockComponent ( LabelComponent ) ,
3132 MockComponent ( DividerComponent ) ,
3233 MockComponent ( SearchBoxComponent ) ,
33- MockComponent ( ButtonComponent )
34+ MockComponent ( ButtonComponent ) ,
35+ MockComponent ( CheckboxComponent )
3436 ] ,
3537 shallow : true
3638 } ) ;
@@ -91,8 +93,11 @@ describe('Multi Select Component', () => {
9193 } ) ;
9294
9395 spectator . tick ( ) ;
94- const selectedElements = spectator . queryAll ( 'input:checked' , { root : true } ) ;
95- expect ( selectedElements . length ) . toBe ( 2 ) ;
96+ const selectedCheckboxElements = spectator . queryAll ( 'ht-checkbox' , { root : true } ) ;
97+ expect (
98+ selectedCheckboxElements . filter ( checkboxElement => checkboxElement . getAttribute ( 'ng-reflect-checked' ) === 'true' )
99+ . length
100+ ) . toBe ( 2 ) ;
96101 } ) ) ;
97102
98103 test ( 'should display provided options with icons when clicked' , fakeAsync ( ( ) => {
@@ -121,8 +126,11 @@ describe('Multi Select Component', () => {
121126 expect ( spectator . query ( '.multi-select-content' , { root : true } ) ) . toExist ( ) ;
122127 expect ( optionElements . length ) . toBe ( 6 ) ;
123128
124- const selectedElements = spectator . queryAll ( 'input:checked' , { root : true } ) ;
125- expect ( selectedElements . length ) . toBe ( 2 ) ;
129+ const selectedCheckboxElements = spectator . queryAll ( 'ht-checkbox' , { root : true } ) ;
130+ expect (
131+ selectedCheckboxElements . filter ( checkboxElement => checkboxElement . getAttribute ( 'ng-reflect-checked' ) === 'true' )
132+ . length
133+ ) . toBe ( 2 ) ;
126134
127135 optionElements . forEach ( ( element , index ) => {
128136 expect ( element ) . toHaveText ( selectionOptions [ index ] . label ) ;
@@ -216,7 +224,12 @@ describe('Multi Select Component', () => {
216224 spectator . click ( clearSelectedButton ! ) ;
217225
218226 spectator . tick ( ) ;
219- expect ( spectator . queryAll ( 'input:checked' , { root : true } ) . length ) . toBe ( 0 ) ;
227+
228+ expect (
229+ spectator
230+ . queryAll ( 'ht-checkbox' , { root : true } )
231+ . filter ( checkboxElement => checkboxElement . getAttribute ( 'ng-reflect-checked' ) === 'true' ) . length
232+ ) . toBe ( 0 ) ;
220233 expect ( onChange ) . toHaveBeenCalledTimes ( 1 ) ;
221234 expect ( onChange ) . toHaveBeenLastCalledWith ( [ ] ) ;
222235 expect ( spectator . query ( LabelComponent ) ?. label ) . toEqual ( 'Select options' ) ;
@@ -226,8 +239,8 @@ describe('Multi Select Component', () => {
226239 spectator . click ( allOptionElement ! ) ;
227240
228241 spectator . tick ( ) ;
229- const selectedElements = spectator . queryAll ( 'input:checked ' , { root : true } ) ;
230- expect ( selectedElements . length ) . toBe ( 6 ) ;
242+ const selectedCheckboxElements = spectator . queryAll ( 'ht-checkbox ' , { root : true } ) ;
243+ expect ( selectedCheckboxElements . length ) . toBe ( 6 ) ;
231244
232245 expect ( onChange ) . toHaveBeenCalledWith ( selectionOptions . map ( option => option . value ) ) ;
233246 expect ( spectator . query ( LabelComponent ) ?. label ) . toEqual ( 'first and 5 more' ) ;
0 commit comments