@@ -185,12 +185,48 @@ describe('Visible rangesliders', function() {
185185 return slide ( start , sliderY , end , sliderY ) ;
186186 } )
187187 . then ( function ( ) {
188- var maskMax = getRangeSliderChild ( 3 ) ;
189- var handleMax = getRangeSliderChild ( 6 ) ;
188+ var maskMin = getRangeSliderChild ( 3 ) ;
189+ var handleMin = getRangeSliderChild ( 6 ) ;
190190
191191 expect ( gd . layout . xaxis . range ) . toBeCloseToArray ( [ 0 , 45.04 ] , - 0.5 ) ;
192- expect ( + maskMax . getAttribute ( 'width' ) ) . toBeCloseTo ( - diff ) ;
193- testTranslate1D ( handleMax , dataMaxStart + diff ) ;
192+ expect ( + maskMin . getAttribute ( 'width' ) ) . toBeCloseTo ( - diff ) ;
193+ testTranslate1D ( handleMin , dataMaxStart + diff ) ;
194+ } )
195+ . catch ( failTest )
196+ . then ( done ) ;
197+ } ) ;
198+
199+ it ( 'should not exceed slider bounds left to right' , function ( done ) {
200+ var start = 940 ;
201+ var end = 990 ;
202+
203+ plotMock ( ) . then ( function ( ) {
204+ gd . _fullLayout . xaxis . d2p ( 49 ) ;
205+
206+ expect ( gd . layout . xaxis . range ) . toBeCloseToArray ( [ 0 , 49 ] ) ;
207+
208+ return slide ( start , sliderY , end , sliderY ) ;
209+ } )
210+ . then ( function ( ) {
211+ expect ( gd . layout . xaxis . range ) . toBeCloseToArray ( [ 0 , 49 ] , - 0.5 ) ;
212+ } )
213+ . catch ( failTest )
214+ . then ( done ) ;
215+ } ) ;
216+
217+ it ( 'should not exceed slider bounds right to left' , function ( done ) {
218+ var start = 0 ;
219+ var end = - 50 ;
220+
221+ plotMock ( ) . then ( function ( ) {
222+ gd . _fullLayout . xaxis . d2p ( - 49 ) ;
223+
224+ expect ( gd . layout . xaxis . range ) . toBeCloseToArray ( [ 0 , 49 ] ) ;
225+
226+ return slide ( start , sliderY , end , sliderY ) ;
227+ } )
228+ . then ( function ( ) {
229+ expect ( gd . layout . xaxis . range ) . toBeCloseToArray ( [ 0 , 49 ] , - 0.5 ) ;
194230 } )
195231 . then ( done , done . fail ) ;
196232 } ) ;
0 commit comments