@@ -386,6 +386,8 @@ describe('range: css classes', () => {
386386 } ) ;
387387
388388 const range = page . body . querySelector ( 'ion-range' ) ! ;
389+
390+ // Simulate a pressed knob A by setting state on component instance
389391 const component = page . rootInstance ;
390392 component . pressedKnob = 'A' ;
391393
@@ -405,12 +407,16 @@ describe('range: css classes', () => {
405407 } ) ;
406408
407409 const range = page . body . querySelector ( 'ion-range' ) ! ;
410+
411+ // Simulate a pressed knob A by setting state on component instance
408412 const component = page . rootInstance ;
409413 component . pressedKnob = 'A' ;
414+
410415 component . ratioA = 0.5 ;
411416 component . ratioB = 0.8 ;
412417
413418 await page . waitForChanges ( ) ;
419+
414420 expect ( range . classList . contains ( 'range-pressed-lower' ) ) . toBe ( true ) ;
415421 } ) ;
416422
@@ -421,12 +427,16 @@ describe('range: css classes', () => {
421427 } ) ;
422428
423429 const range = page . body . querySelector ( 'ion-range' ) ! ;
430+
431+ // Simulate a pressed knob B by setting state on component instance
424432 const component = page . rootInstance ;
425433 component . pressedKnob = 'B' ;
434+
426435 component . ratioA = 0.5 ;
427436 component . ratioB = 0.8 ;
428437
429438 await page . waitForChanges ( ) ;
439+
430440 expect ( range . classList . contains ( 'range-pressed-upper' ) ) . toBe ( true ) ;
431441 } ) ;
432442
@@ -437,10 +447,13 @@ describe('range: css classes', () => {
437447 } ) ;
438448
439449 const range = page . body . querySelector ( 'ion-range' ) ! ;
450+
451+ // Simulate a pressed knob A by setting state on component instance
440452 const component = page . rootInstance ;
441453 component . pressedKnob = 'A' ;
442454
443455 await page . waitForChanges ( ) ;
456+
444457 expect ( range . classList . contains ( 'range-pressed-a' ) ) . toBe ( true ) ;
445458 } ) ;
446459
@@ -451,10 +464,13 @@ describe('range: css classes', () => {
451464 } ) ;
452465
453466 const range = page . body . querySelector ( 'ion-range' ) ! ;
467+
468+ // Simulate a pressed knob B by setting state on component instance
454469 const component = page . rootInstance ;
455470 component . pressedKnob = 'B' ;
456471
457472 await page . waitForChanges ( ) ;
473+
458474 expect ( range . classList . contains ( 'range-pressed-b' ) ) . toBe ( true ) ;
459475 } ) ;
460476 } ) ;
@@ -580,13 +596,15 @@ describe('range: shadow parts', () => {
580596 // Simulate a pressed knob by setting state on component instance
581597 const component = page . rootInstance ;
582598 component . pressedKnob = 'A' ;
599+
583600 await page . waitForChanges ( ) ;
584601
585602 // The pressed part should exist on the knob when pressed
586603 expect ( shadowRoot . querySelector ( '[part~="knob"][part~="pressed"]' ) ) . not . toBeNull ( ) ;
587604
588605 // Clear the pressed knob
589606 component . pressedKnob = undefined ;
607+
590608 await page . waitForChanges ( ) ;
591609
592610 // The pressed part should not exist after clearing the pressed knob
@@ -607,6 +625,7 @@ describe('range: shadow parts', () => {
607625 // Focus the knob handle
608626 const knobHandle = shadowRoot . querySelector ( '.range-knob-handle' ) as HTMLElement ;
609627 knobHandle . focus ( ) ;
628+
610629 await page . waitForChanges ( ) ;
611630
612631 // The focused part should exist on the knob when focused
@@ -615,6 +634,7 @@ describe('range: shadow parts', () => {
615634 // Blur the knob handle
616635 knobHandle . blur ( ) ;
617636 await waitForEvent ( range , 'ionBlur' ) ;
637+
618638 await page . waitForChanges ( ) ;
619639
620640 // The focused part should not exist after blur
@@ -628,20 +648,22 @@ describe('range: shadow parts', () => {
628648 } ) ;
629649 const range = page . body . querySelector ( 'ion-range' ) ! ;
630650 const shadowRoot = range . shadowRoot ! ;
631- const component = page . rootInstance ;
632651
633652 // The activated part should not exist on the knob by default
634653 expect ( shadowRoot . querySelector ( '[part~="knob"][part~="activated"]' ) ) . toBeNull ( ) ;
635654
636655 // Simulate an activated knob by setting state on component instance
637- ( component as any ) . activatedKnob = 'A' ;
656+ const component = page . rootInstance ;
657+ component . activatedKnob = 'A' ;
658+
638659 await page . waitForChanges ( ) ;
639660
640661 // The activated part should exist on the knob when activated
641662 expect ( shadowRoot . querySelector ( '[part~="knob"][part~="activated"]' ) ) . not . toBeNull ( ) ;
642663
643664 // Clear the activated knob
644- ( component as any ) . activatedKnob = undefined ;
665+ component . activatedKnob = undefined ;
666+
645667 await page . waitForChanges ( ) ;
646668
647669 // The activated part should not exist after clearing the activated knob
@@ -655,20 +677,22 @@ describe('range: shadow parts', () => {
655677 } ) ;
656678 const range = page . body . querySelector ( 'ion-range' ) ! ;
657679 const shadowRoot = range . shadowRoot ! ;
658- const component = page . rootInstance ;
659680
660681 // The hover part should not exist on the knob by default
661682 expect ( shadowRoot . querySelector ( '[part~="knob"][part~="hover"]' ) ) . toBeNull ( ) ;
662683
663684 // Simulate a hovered knob by setting state on component instance
664- ( component as any ) . hoveredKnob = 'A' ;
685+ const component = page . rootInstance ;
686+ component . hoveredKnob = 'A' ;
687+
665688 await page . waitForChanges ( ) ;
666689
667690 // The hover part should exist on the knob when hovered
668691 expect ( shadowRoot . querySelector ( '[part~="knob"][part~="hover"]' ) ) . not . toBeNull ( ) ;
669692
670693 // Clear the hovered knob
671- ( component as any ) . hoveredKnob = undefined ;
694+ component . hoveredKnob = undefined ;
695+
672696 await page . waitForChanges ( ) ;
673697
674698 // The hover part should not exist after clearing the hovered knob
@@ -682,14 +706,15 @@ describe('range: shadow parts', () => {
682706 } ) ;
683707 const range = page . body . querySelector ( 'ion-range' ) ! ;
684708 const shadowRoot = range . shadowRoot ! ;
685- const component = page . rootInstance ;
686709
687710 // The pressed part should not exist on either knob by default
688711 expect ( shadowRoot . querySelector ( '[part~="knob-a"][part~="pressed"]' ) ) . toBeNull ( ) ;
689712 expect ( shadowRoot . querySelector ( '[part~="knob-b"][part~="pressed"]' ) ) . toBeNull ( ) ;
690713
691714 // Simulate a pressed knob A by setting state on component instance
715+ const component = page . rootInstance ;
692716 component . pressedKnob = 'A' ;
717+
693718 await page . waitForChanges ( ) ;
694719
695720 // The pressed part should exist on knob A only
@@ -698,6 +723,7 @@ describe('range: shadow parts', () => {
698723
699724 // Simulate a pressed knob B by setting state on component instance
700725 component . pressedKnob = 'B' ;
726+
701727 await page . waitForChanges ( ) ;
702728
703729 // The pressed part should now exist on knob B only
@@ -706,6 +732,7 @@ describe('range: shadow parts', () => {
706732
707733 // Clear the pressed knob
708734 component . pressedKnob = undefined ;
735+
709736 await page . waitForChanges ( ) ;
710737
711738 // The pressed part should not exist after clearing the pressed knob
@@ -728,6 +755,7 @@ describe('range: shadow parts', () => {
728755 // Focus knob handle A
729756 const knobHandleA = shadowRoot . querySelector ( '.range-knob-handle-a' ) as HTMLElement ;
730757 knobHandleA . focus ( ) ;
758+
731759 await page . waitForChanges ( ) ;
732760
733761 // The focused part should exist on knob A only
@@ -737,6 +765,7 @@ describe('range: shadow parts', () => {
737765 // Focus knob handle B
738766 const knobHandleB = shadowRoot . querySelector ( '.range-knob-handle-b' ) as HTMLElement ;
739767 knobHandleB . focus ( ) ;
768+
740769 await page . waitForChanges ( ) ;
741770
742771 // The focused part should now exist on knob B only
@@ -746,6 +775,7 @@ describe('range: shadow parts', () => {
746775 // Blur knob handle B
747776 knobHandleB . blur ( ) ;
748777 await waitForEvent ( range , 'ionBlur' ) ;
778+
749779 await page . waitForChanges ( ) ;
750780
751781 // The focused part should not exist after blurring the knob handle
@@ -760,30 +790,33 @@ describe('range: shadow parts', () => {
760790 } ) ;
761791 const range = page . body . querySelector ( 'ion-range' ) ! ;
762792 const shadowRoot = range . shadowRoot ! ;
763- const component = page . rootInstance ;
764793
765794 // The activated part should not exist on either knob by default
766795 expect ( shadowRoot . querySelector ( '[part~="knob-a"][part~="activated"]' ) ) . toBeNull ( ) ;
767796 expect ( shadowRoot . querySelector ( '[part~="knob-b"][part~="activated"]' ) ) . toBeNull ( ) ;
768797
769798 // Simulate an activated knob A by setting state on component instance
770- ( component as any ) . activatedKnob = 'A' ;
799+ const component = page . rootInstance ;
800+ component . activatedKnob = 'A' ;
801+
771802 await page . waitForChanges ( ) ;
772803
773804 // The activated part should exist on knob A only
774805 expect ( shadowRoot . querySelector ( '[part~="knob-a"][part~="activated"]' ) ) . not . toBeNull ( ) ;
775806 expect ( shadowRoot . querySelector ( '[part~="knob-b"][part~="activated"]' ) ) . toBeNull ( ) ;
776807
777808 // Simulate an activated knob B by setting state on component instance
778- ( component as any ) . activatedKnob = 'B' ;
809+ component . activatedKnob = 'B' ;
810+
779811 await page . waitForChanges ( ) ;
780812
781813 // The activated part should now exist on knob B only
782814 expect ( shadowRoot . querySelector ( '[part~="knob-a"][part~="activated"]' ) ) . toBeNull ( ) ;
783815 expect ( shadowRoot . querySelector ( '[part~="knob-b"][part~="activated"]' ) ) . not . toBeNull ( ) ;
784816
785817 // Clear the activated knob
786- ( component as any ) . activatedKnob = undefined ;
818+ component . activatedKnob = undefined ;
819+
787820 await page . waitForChanges ( ) ;
788821
789822 // The activated part should not exist after clearing the activated knob
@@ -798,30 +831,33 @@ describe('range: shadow parts', () => {
798831 } ) ;
799832 const range = page . body . querySelector ( 'ion-range' ) ! ;
800833 const shadowRoot = range . shadowRoot ! ;
801- const component = page . rootInstance ;
802834
803835 // The hover part should not exist on either knob by default
804836 expect ( shadowRoot . querySelector ( '[part~="knob-a"][part~="hover"]' ) ) . toBeNull ( ) ;
805837 expect ( shadowRoot . querySelector ( '[part~="knob-b"][part~="hover"]' ) ) . toBeNull ( ) ;
806838
807839 // Simulate a hovered knob A by setting state on component instance
808- ( component as any ) . hoveredKnob = 'A' ;
840+ const component = page . rootInstance ;
841+ component . hoveredKnob = 'A' ;
842+
809843 await page . waitForChanges ( ) ;
810844
811845 // The hover part should exist on knob A only
812846 expect ( shadowRoot . querySelector ( '[part~="knob-a"][part~="hover"]' ) ) . not . toBeNull ( ) ;
813847 expect ( shadowRoot . querySelector ( '[part~="knob-b"][part~="hover"]' ) ) . toBeNull ( ) ;
814848
815849 // Simulate a hovered knob B by setting state on component instance
816- ( component as any ) . hoveredKnob = 'B' ;
850+ component . hoveredKnob = 'B' ;
851+
817852 await page . waitForChanges ( ) ;
818853
819854 // The hover part should now exist on knob B only
820855 expect ( shadowRoot . querySelector ( '[part~="knob-a"][part~="hover"]' ) ) . toBeNull ( ) ;
821856 expect ( shadowRoot . querySelector ( '[part~="knob-b"][part~="hover"]' ) ) . not . toBeNull ( ) ;
822857
823858 // Clear the hovered knob
824- ( component as any ) . hoveredKnob = undefined ;
859+ component . hoveredKnob = undefined ;
860+
825861 await page . waitForChanges ( ) ;
826862
827863 // The hover part should not exist after clearing the hovered knob
0 commit comments