@@ -59,6 +59,10 @@ describe('aggregate', function() {
59
59
expect ( traceOut . marker . opacity ) . toEqual ( [ 0.6 , 'boo' ] ) ;
60
60
expect ( traceOut . marker . line . color ) . toEqual ( [ 'the end' , 3.3 ] ) ;
61
61
expect ( traceOut . marker . line . width ) . toEqual ( [ 4 , 1 ] ) ;
62
+
63
+ var transform = traceOut . transforms [ 0 ] ;
64
+ var inverseMapping = transform . _indexToPoints ;
65
+ expect ( inverseMapping ) . toEqual ( { 0 : [ 0 , 2 , 3 , 4 ] , 1 : [ 1 ] } ) ;
62
66
} ) ;
63
67
64
68
it ( 'handles all funcs except sum for date data' , function ( ) {
@@ -163,6 +167,10 @@ describe('aggregate', function() {
163
167
expect ( traceOut . y ) . toEqual ( [ 'b' , undefined ] ) ;
164
168
// category average: can result in fractional categories -> rounds (0.5 rounds to 1)
165
169
expect ( traceOut . text ) . toEqual ( [ 'b' , 'b' ] ) ;
170
+
171
+ var transform = traceOut . transforms [ 0 ] ;
172
+ var inverseMapping = transform . _indexToPoints ;
173
+ expect ( inverseMapping ) . toEqual ( { 0 : [ 0 , 1 ] , 1 : [ 2 , 3 ] } ) ;
166
174
} ) ;
167
175
168
176
it ( 'can aggregate on an existing data array' , function ( ) {
@@ -185,10 +193,12 @@ describe('aggregate', function() {
185
193
expect ( traceOut . x ) . toEqual ( [ 8 , 7 ] ) ;
186
194
expect ( traceOut . y ) . toBeCloseToArray ( [ 16 / 3 , 7 ] , 5 ) ;
187
195
expect ( traceOut . marker . size ) . toEqual ( [ 10 , 20 ] ) ;
196
+
197
+ var transform = traceOut . transforms [ 0 ] ;
198
+ var inverseMapping = transform . _indexToPoints ;
199
+ expect ( inverseMapping ) . toEqual ( { 0 : [ 0 , 1 , 4 ] , 1 : [ 2 , 3 ] } ) ;
188
200
} ) ;
189
201
190
- // Regression test - throws before fix:
191
- // https://github.com/plotly/plotly.js/issues/2024
192
202
it ( 'can handle case where aggregation array is missing' , function ( ) {
193
203
Plotly . newPlot ( gd , [ {
194
204
x : [ 1 , 2 , 3 , 4 , 5 ] ,
@@ -205,6 +215,10 @@ describe('aggregate', function() {
205
215
expect ( traceOut . x ) . toEqual ( [ 1 , 3 ] ) ;
206
216
expect ( traceOut . y ) . toEqual ( [ 2 , 6 ] ) ;
207
217
expect ( traceOut . marker . size ) . toEqual ( [ 10 , 20 ] ) ;
218
+
219
+ var transform = traceOut . transforms [ 0 ] ;
220
+ var inverseMapping = transform . _indexToPoints ;
221
+ expect ( inverseMapping ) . toEqual ( { 0 : [ 0 , 1 , 4 ] , 1 : [ 2 , 3 ] } ) ;
208
222
} ) ;
209
223
210
224
it ( 'handles median, mode, rms, & stddev for numeric data' , function ( ) {
@@ -257,7 +271,7 @@ describe('aggregate', function() {
257
271
aggregations : [
258
272
{ target : 'x' , func : 'sum' } ,
259
273
{ target : 'x' , func : 'avg' } ,
260
- { target : 'y' , func : 'avg' } ,
274
+ { target : 'y' , func : 'avg' }
261
275
]
262
276
} ]
263
277
} ] ) ;
0 commit comments