@@ -16,7 +16,7 @@ import {
16
16
UP_ARROW ,
17
17
BACKSPACE
18
18
} from '../core/keyboard/keycodes' ;
19
- import { dispatchKeyboardEvent , dispatchMouseEvent } from '@angular/cdk/testing' ;
19
+ import { dispatchFakeEvent , dispatchKeyboardEvent , dispatchMouseEvent } from '@angular/cdk/testing' ;
20
20
21
21
describe ( 'MdSlider without forms' , ( ) => {
22
22
let gestureConfig : TestGestureConfig ;
@@ -141,6 +141,28 @@ describe('MdSlider without forms', () => {
141
141
expect ( sliderNativeElement . classList ) . not . toContain ( 'mat-slider-sliding' ) ;
142
142
} ) ;
143
143
144
+ it ( 'should reset active state upon blur' , ( ) => {
145
+ sliderInstance . _isActive = true ;
146
+
147
+ dispatchFakeEvent ( sliderNativeElement , 'blur' ) ;
148
+ fixture . detectChanges ( ) ;
149
+
150
+ expect ( sliderInstance . _isActive ) . toBe ( false ) ;
151
+ } ) ;
152
+
153
+ it ( 'should reset thumb gap when blurred on min value' , ( ) => {
154
+ sliderInstance . _isActive = true ;
155
+ sliderInstance . value = 0 ;
156
+ fixture . detectChanges ( ) ;
157
+
158
+ expect ( sliderInstance . _thumbGap ) . toBe ( 10 ) ;
159
+
160
+ dispatchFakeEvent ( sliderNativeElement , 'blur' ) ;
161
+ fixture . detectChanges ( ) ;
162
+
163
+ expect ( sliderInstance . _thumbGap ) . toBe ( 7 ) ;
164
+ } ) ;
165
+
144
166
it ( 'should have thumb gap when at min value' , ( ) => {
145
167
expect ( trackFillElement . style . transform ) . toContain ( 'translateX(-7px)' ) ;
146
168
} ) ;
@@ -958,6 +980,24 @@ describe('MdSlider without forms', () => {
958
980
expect ( sliderInstance . value ) . toBe ( 30 ) ;
959
981
} ) ;
960
982
983
+ it ( 'should re-render slider with updated style upon directionality change' , ( ) => {
984
+ testComponent . dir = 'rtl' ;
985
+ fixture . detectChanges ( ) ;
986
+
987
+ let initialTrackFillStyles = sliderInstance . _trackFillStyles ;
988
+ let initialTicksContainerStyles = sliderInstance . _ticksContainerStyles ;
989
+ let initialTicksStyles = sliderInstance . _ticksStyles ;
990
+ let initialThumbContainerStyles = sliderInstance . _thumbContainerStyles ;
991
+
992
+ testComponent . dir = 'ltr' ;
993
+ fixture . detectChanges ( ) ;
994
+
995
+ expect ( initialTrackFillStyles ) . not . toEqual ( sliderInstance . _trackFillStyles ) ;
996
+ expect ( initialTicksContainerStyles ) . not . toEqual ( sliderInstance . _ticksContainerStyles ) ;
997
+ expect ( initialTicksStyles ) . not . toEqual ( sliderInstance . _ticksStyles ) ;
998
+ expect ( initialThumbContainerStyles ) . not . toEqual ( sliderInstance . _thumbContainerStyles ) ;
999
+ } ) ;
1000
+
961
1001
it ( 'should increment inverted slider by 1 on right arrow pressed' , ( ) => {
962
1002
testComponent . invert = true ;
963
1003
fixture . detectChanges ( ) ;
0 commit comments