@@ -5431,3 +5431,77 @@ describe('Test template:', function() {
54315431        . then ( done ) ; 
54325432    } ) ; 
54335433} ) ; 
5434+ 
5435+ describe ( 'more react tests' ,  function ( )  { 
5436+     var  gd ; 
5437+ 
5438+     beforeEach ( function ( )  { 
5439+         gd  =  createGraphDiv ( ) ; 
5440+     } ) ; 
5441+ 
5442+     afterEach ( destroyGraphDiv ) ; 
5443+ 
5444+     it ( 'should sort catgories on matching axes using react' ,  function ( done )  { 
5445+         var  fig  =  { 
5446+             data : [ { 
5447+                 yaxis : 'y' , 
5448+                 xaxis : 'x' , 
5449+                 y : [ 0 ,  0 ] , 
5450+                 x : [ 'A' ,  'Z' ] 
5451+             } ,  { 
5452+                 yaxis : 'y2' , 
5453+                 xaxis : 'x2' , 
5454+                 y : [ 0 ,  0 ] , 
5455+                 x : [ 'A' ,  'Z' ] 
5456+             } ] , 
5457+             layout : { 
5458+                 width : 400 , 
5459+                 height : 300 , 
5460+                 showlegend : false , 
5461+                 xaxis : { 
5462+                     matches : 'x2' , 
5463+                     domain : [  0 ,  1 ] 
5464+                 } , 
5465+                 yaxis : { 
5466+                     domain : [ 0.6 ,  1 ] , 
5467+                     anchor : 'x' 
5468+                 } , 
5469+                 xaxis2 : { 
5470+                     domain : [ 0 ,  1 ] , 
5471+                     anchor : 'y2' 
5472+                 } , 
5473+                 yaxis2 : { 
5474+                     domain : [ 0 ,  0.4 ] , 
5475+                     anchor : 'x2' 
5476+                 } 
5477+             } 
5478+         } ; 
5479+ 
5480+         Plotly . newPlot ( gd ,  fig ) 
5481+         . then ( function ( )  { 
5482+             expect ( gd . _fullLayout . xaxis . _categories ) . toEqual ( [ 'A' ,  'Z' ] ) ; 
5483+             expect ( gd . _fullLayout . xaxis2 . _categories ) . toEqual ( [ 'A' ,  'Z' ] ) ; 
5484+             expect ( gd . _fullLayout . xaxis . _categoriesMap ) . toEqual ( { A : 0 ,  Z : 1 } ) ; 
5485+             expect ( gd . _fullLayout . xaxis2 . _categoriesMap ) . toEqual ( { A : 0 ,  Z : 1 } ) ; 
5486+         } ) 
5487+         . then ( function ( )  { 
5488+             var  newFig  =  JSON . parse ( JSON . stringify ( fig ) ) ; 
5489+ 
5490+             // flip order 
5491+             newFig . data [ 0 ] . x . reverse ( ) ; 
5492+             newFig . data [ 0 ] . y . reverse ( ) ; 
5493+             newFig . data [ 1 ] . x . reverse ( ) ; 
5494+             newFig . data [ 1 ] . y . reverse ( ) ; 
5495+ 
5496+             return  Plotly . react ( gd ,  newFig ) ; 
5497+         } ) 
5498+         . then ( function ( )  { 
5499+             expect ( gd . _fullLayout . xaxis . _categories ) . toEqual ( [ 'Z' ,  'A' ] ) ; 
5500+             expect ( gd . _fullLayout . xaxis2 . _categories ) . toEqual ( [ 'Z' ,  'A' ] ) ; 
5501+             expect ( gd . _fullLayout . xaxis . _categoriesMap ) . toEqual ( { Z : 0 ,  A : 1 } ) ; 
5502+             expect ( gd . _fullLayout . xaxis2 . _categoriesMap ) . toEqual ( { Z : 0 ,  A : 1 } ) ; 
5503+         } ) 
5504+         . catch ( failTest ) 
5505+         . then ( done ) ; 
5506+     } ) ; 
5507+ } ) ; 
0 commit comments