@@ -1062,6 +1062,76 @@ describe('rangesliders in general', function() {
10621062 . catch ( failTest )
10631063 . then ( done ) ;
10641064 } ) ;
1065+
1066+ it ( 'should give correct rangeslider range on reversed axes' , function ( done ) {
1067+ function _assert ( msg , exp ) {
1068+ var xa = gd . _fullLayout . xaxis ;
1069+
1070+ expect ( xa . range )
1071+ . toBeCloseToArray ( exp . axRng , 1 , 'x-axis rng ' + msg ) ;
1072+ expect ( xa . rangeslider . range )
1073+ . toBeCloseToArray ( exp . rangesliderRng , 1 , 'rangeslider rng ' + msg ) ;
1074+ expect ( xa . rangeslider . _input . range )
1075+ . toBeCloseToArray ( exp . rangesliderRng , 1 , 'rangeslider input rng ' + msg ) ;
1076+ }
1077+
1078+ Plotly . plot ( gd , [ {
1079+ x : [ 1 , 2 , 1 ]
1080+ } ] , {
1081+ xaxis : { rangeslider : { visible : true } }
1082+ } )
1083+ . then ( function ( ) {
1084+ _assert ( 'base' , {
1085+ axRng : [ 0.935 , 2.06 ] ,
1086+ rangesliderRng : [ 0.935 , 2.06 ]
1087+ } ) ;
1088+
1089+ return Plotly . relayout ( gd , 'xaxis.autorange' , 'reversed' ) ;
1090+ } )
1091+ . then ( function ( ) {
1092+ _assert ( 'reversed!' , {
1093+ axRng : [ 2.06 , 0.935 ] ,
1094+ rangesliderRng : [ 2.06 , 0.935 ]
1095+ } ) ;
1096+
1097+ return Plotly . relayout ( gd , 'xaxis.range' , [ 0 , 3 ] ) ;
1098+ } )
1099+ . then ( function ( ) {
1100+ _assert ( 'set increasing rng' , {
1101+ axRng : [ 0 , 3 ] ,
1102+ rangesliderRng : [ 0 , 3 ]
1103+ } ) ;
1104+
1105+ return Plotly . relayout ( gd , 'xaxis.range' , [ 3 , 0 ] ) ;
1106+ } )
1107+ . then ( function ( ) {
1108+ _assert ( 'set reversed rng' , {
1109+ axRng : [ 3 , 0 ] ,
1110+ rangesliderRng : [ 3 , 0 ]
1111+ } ) ;
1112+
1113+ return Plotly . relayout ( gd , 'xaxis.rangeslider.range' , [ 0 , 3 ] ) ;
1114+ } )
1115+ . then ( function ( ) {
1116+ _assert ( 'reversed ax rng / increasing rangeslider rng' , {
1117+ axRng : [ 3 , 0 ] ,
1118+ rangesliderRng : [ 3 , 0 ]
1119+ } ) ;
1120+
1121+ return Plotly . relayout ( gd , {
1122+ 'xaxis.range' : [ 0 , 3 ] ,
1123+ 'xaxis.rangeslider.range' : [ 3 , 0 ]
1124+ } ) ;
1125+ } )
1126+ . then ( function ( ) {
1127+ _assert ( 'increasing ax rng / reversed rangeslider rng' , {
1128+ axRng : [ 0 , 3 ] ,
1129+ rangesliderRng : [ 0 , 3 ]
1130+ } ) ;
1131+ } )
1132+ . catch ( failTest )
1133+ . then ( done ) ;
1134+ } ) ;
10651135} ) ;
10661136
10671137function slide ( fromX , fromY , toX , toY ) {
0 commit comments