@@ -183,4 +183,44 @@ describe('heatmap calc / setPositions', function() {
183183 assertTraceField ( out , 't.dbar' , [ 1 , 1 ] ) ;
184184 } ) ;
185185
186+ it ( 'should fill in calc pt fields (relative case)' , function ( ) {
187+ var out = _calc ( [ {
188+ y : [ 20 , 14 , - 23 ]
189+ } , {
190+ y : [ - 12 , - 18 , - 29 ]
191+ } ] , {
192+ barmode : 'relative'
193+ } ) ;
194+
195+ assertPtField ( out , 'x' , [ [ 0 , 1 , 2 ] , [ 0 , 1 , 2 ] ] ) ;
196+ assertPtField ( out , 'y' , [ [ 20 , 14 , - 23 ] , [ - 12 , - 18 , - 52 ] ] ) ;
197+ assertPtField ( out , 'b' , [ [ 0 , 0 , 0 ] , [ 0 , 0 , - 23 ] ] ) ;
198+ assertPtField ( out , 's' , [ [ 20 , 14 , - 23 ] , [ - 12 , - 18 , - 29 ] ] ) ;
199+ assertPtField ( out , 'p' , [ [ 0 , 1 , 2 ] , [ 0 , 1 , 2 ] ] ) ;
200+ assertTraceField ( out , 't.barwidth' , [ 0.8 , 0.8 ] ) ;
201+ assertTraceField ( out , 't.poffset' , [ - 0.4 , - 0.4 ] ) ;
202+ assertTraceField ( out , 't.dbar' , [ 1 , 1 ] ) ;
203+ } ) ;
204+
205+ it ( 'should fill in calc pt fields (relative / percent case)' , function ( ) {
206+ var out = _calc ( [ {
207+ x : [ 'A' , 'B' , 'C' , 'D' ] ,
208+ y : [ 20 , 14 , 40 , - 60 ]
209+ } , {
210+ x : [ 'A' , 'B' , 'C' , 'D' ] ,
211+ y : [ - 12 , - 18 , 60 , - 40 ]
212+ } ] , {
213+ barmode : 'relative' ,
214+ barnorm : 'percent'
215+ } ) ;
216+
217+ assertPtField ( out , 'x' , [ [ 0 , 1 , 2 , 3 ] , [ 0 , 1 , 2 , 3 ] ] ) ;
218+ assertPtField ( out , 'y' , [ [ 100 , 100 , 40 , - 60 ] , [ - 100 , - 100 , 100 , - 100 ] ] ) ;
219+ assertPtField ( out , 'b' , [ [ 0 , 0 , 0 , 0 ] , [ 0 , 0 , 40 , - 60 ] ] ) ;
220+ assertPtField ( out , 's' , [ [ 100 , 100 , 40 , - 60 ] , [ - 100 , - 100 , 60 , - 40 ] ] ) ;
221+ assertPtField ( out , 'p' , [ [ 0 , 1 , 2 , 3 ] , [ 0 , 1 , 2 , 3 ] ] ) ;
222+ assertTraceField ( out , 't.barwidth' , [ 0.8 , 0.8 ] ) ;
223+ assertTraceField ( out , 't.poffset' , [ - 0.4 , - 0.4 ] ) ;
224+ assertTraceField ( out , 't.dbar' , [ 1 , 1 ] ) ;
225+ } ) ;
186226} ) ;
0 commit comments