@cubejs-client/core 1.3.14 → 1.3.16

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (100) hide show
  1. package/dist/{cubejs-client-core.js → cubejs-client-core.cjs.js} +1016 -411
  2. package/dist/cubejs-client-core.cjs.js.map +1 -0
  3. package/dist/cubejs-client-core.umd.js +2901 -12088
  4. package/dist/cubejs-client-core.umd.js.map +1 -1
  5. package/dist/src/HttpTransport.d.ts +54 -0
  6. package/dist/src/HttpTransport.d.ts.map +1 -0
  7. package/dist/src/HttpTransport.js +55 -0
  8. package/dist/src/Meta.d.ts +62 -0
  9. package/dist/src/Meta.d.ts.map +1 -0
  10. package/dist/src/Meta.js +150 -0
  11. package/dist/src/ProgressResult.d.ts +8 -0
  12. package/dist/src/ProgressResult.d.ts.map +1 -0
  13. package/dist/src/ProgressResult.js +11 -0
  14. package/dist/src/RequestError.d.ts +6 -0
  15. package/dist/src/RequestError.d.ts.map +1 -0
  16. package/dist/src/RequestError.js +7 -0
  17. package/dist/src/ResultSet.d.ts +430 -0
  18. package/dist/src/ResultSet.d.ts.map +1 -0
  19. package/dist/src/ResultSet.js +952 -0
  20. package/dist/src/SqlQuery.d.ts +17 -0
  21. package/dist/src/SqlQuery.d.ts.map +1 -0
  22. package/dist/src/SqlQuery.js +11 -0
  23. package/dist/src/index.d.ts +194 -0
  24. package/dist/src/index.d.ts.map +1 -0
  25. package/dist/src/index.js +411 -0
  26. package/dist/src/index.umd.d.ts +3 -0
  27. package/dist/src/index.umd.d.ts.map +1 -0
  28. package/dist/src/index.umd.js +6 -0
  29. package/dist/src/time.d.ts +70 -0
  30. package/dist/src/time.d.ts.map +1 -0
  31. package/dist/src/time.js +249 -0
  32. package/dist/src/types.d.ts +424 -0
  33. package/dist/src/types.d.ts.map +1 -0
  34. package/dist/src/types.js +1 -0
  35. package/dist/src/utils.d.ts +19 -0
  36. package/dist/src/utils.d.ts.map +1 -0
  37. package/dist/src/utils.js +294 -0
  38. package/dist/test/CubeApi.test.d.ts +7 -0
  39. package/dist/test/CubeApi.test.d.ts.map +1 -0
  40. package/dist/test/CubeApi.test.js +279 -0
  41. package/dist/test/HttpTransport.test.d.ts +2 -0
  42. package/dist/test/HttpTransport.test.d.ts.map +1 -0
  43. package/dist/test/HttpTransport.test.js +244 -0
  44. package/dist/test/ResultSet.test.d.ts +7 -0
  45. package/dist/test/ResultSet.test.d.ts.map +1 -0
  46. package/dist/test/ResultSet.test.js +1725 -0
  47. package/dist/test/compare-date-range.test.d.ts +2 -0
  48. package/dist/test/compare-date-range.test.d.ts.map +1 -0
  49. package/dist/test/compare-date-range.test.js +742 -0
  50. package/dist/test/data-blending.test.d.ts +2 -0
  51. package/dist/test/data-blending.test.d.ts.map +1 -0
  52. package/dist/test/data-blending.test.js +423 -0
  53. package/dist/test/default-heuristics.test.d.ts +2 -0
  54. package/dist/test/default-heuristics.test.d.ts.map +1 -0
  55. package/dist/test/default-heuristics.test.js +108 -0
  56. package/dist/test/drill-down.test.d.ts +2 -0
  57. package/dist/test/drill-down.test.d.ts.map +1 -0
  58. package/dist/test/drill-down.test.js +373 -0
  59. package/dist/test/fixtures/datablending/load-responses.json +261 -0
  60. package/dist/test/granularity.test.d.ts +2 -0
  61. package/dist/test/granularity.test.d.ts.map +1 -0
  62. package/dist/test/granularity.test.js +218 -0
  63. package/dist/test/helpers.d.ts +283 -0
  64. package/dist/test/helpers.d.ts.map +1 -0
  65. package/dist/test/helpers.js +974 -0
  66. package/dist/test/index.test.d.ts +7 -0
  67. package/dist/test/index.test.d.ts.map +1 -0
  68. package/dist/test/index.test.js +370 -0
  69. package/dist/test/table.test.d.ts +2 -0
  70. package/dist/test/table.test.d.ts.map +1 -0
  71. package/dist/test/table.test.js +757 -0
  72. package/dist/test/utils.test.d.ts +2 -0
  73. package/dist/test/utils.test.d.ts.map +1 -0
  74. package/dist/test/utils.test.js +32 -0
  75. package/package.json +26 -21
  76. package/dist/cubejs-client-core.esm.js +0 -1639
  77. package/dist/cubejs-client-core.esm.js.map +0 -1
  78. package/dist/cubejs-client-core.js.map +0 -1
  79. package/index.d.ts +0 -1338
  80. package/src/HttpTransport.js +0 -60
  81. package/src/HttpTransport.test.js +0 -117
  82. package/src/Meta.js +0 -142
  83. package/src/ProgressResult.js +0 -13
  84. package/src/RequestError.js +0 -7
  85. package/src/ResultSet.js +0 -746
  86. package/src/SqlQuery.js +0 -13
  87. package/src/index.js +0 -398
  88. package/src/index.test.js +0 -454
  89. package/src/index.umd.js +0 -8
  90. package/src/tests/ResultSet.test.js +0 -1655
  91. package/src/tests/compare-date-range.test.js +0 -753
  92. package/src/tests/data-blending.test.js +0 -432
  93. package/src/tests/default-heuristics.test.js +0 -118
  94. package/src/tests/drill-down.test.js +0 -402
  95. package/src/tests/fixtures/datablending/load-responses.json +0 -261
  96. package/src/tests/granularity.test.js +0 -225
  97. package/src/tests/table.test.js +0 -791
  98. package/src/tests/utils.test.js +0 -35
  99. package/src/time.js +0 -296
  100. package/src/utils.js +0 -368
@@ -1,791 +0,0 @@
1
- import 'jest';
2
- import ResultSet from '../ResultSet';
3
-
4
- describe('resultSet tablePivot and tableColumns', () => {
5
- describe('it works with one measure', () => {
6
- const resultSet = new ResultSet({
7
- query: {
8
- measures: ['Orders.count'],
9
- dimensions: ['Users.country', 'Users.gender'],
10
- },
11
- data: [
12
- {
13
- 'Users.country': 'Germany',
14
- 'Users.gender': 'male',
15
- 'Orders.count': 10,
16
- 'Orders.amount': 11,
17
- },
18
- {
19
- 'Users.country': 'Germany',
20
- 'Users.gender': 'female',
21
- 'Orders.count': 12,
22
- 'Orders.amount': 13,
23
- },
24
- {
25
- 'Users.country': 'US',
26
- 'Users.gender': 'male',
27
- 'Orders.count': 5,
28
- 'Orders.amount': 6,
29
- },
30
- {
31
- 'Users.country': 'US',
32
- 'Users.gender': 'female',
33
- 'Orders.count': 7,
34
- 'Orders.amount': 8,
35
- },
36
- ],
37
- annotation: {
38
- measures: {
39
- 'Orders.count': {
40
- title: 'Orders Count',
41
- shortTitle: 'Count',
42
- type: 'number',
43
- },
44
- 'Orders.amount': {
45
- title: 'Orders Amount',
46
- shortTitle: 'Amount',
47
- type: 'number',
48
- },
49
- },
50
- dimensions: {
51
- 'Users.country': {
52
- title: 'Users Country',
53
- shortTitle: 'Country',
54
- type: 'string',
55
- },
56
- 'Users.gender': {
57
- title: 'Users Gender',
58
- shortTitle: 'Gender',
59
- type: 'string',
60
- },
61
- },
62
- segments: {},
63
- timeDimensions: {},
64
- },
65
- });
66
-
67
- describe('all dimensions on `x` axis', () => {
68
- const pivotConfig = {
69
- x: ['Users.country', 'Users.gender'],
70
- y: ['measures'],
71
- };
72
-
73
- test('tablePivot', () => {
74
- expect(resultSet.tablePivot(pivotConfig)).toEqual([
75
- {
76
- 'Users.country': 'Germany',
77
- 'Users.gender': 'male',
78
- 'Orders.count': 10,
79
- },
80
- {
81
- 'Users.country': 'Germany',
82
- 'Users.gender': 'female',
83
- 'Orders.count': 12,
84
- },
85
- {
86
- 'Users.country': 'US',
87
- 'Users.gender': 'male',
88
- 'Orders.count': 5,
89
- },
90
- {
91
- 'Users.country': 'US',
92
- 'Users.gender': 'female',
93
- 'Orders.count': 7,
94
- },
95
- ]);
96
- });
97
-
98
- test('tableColumns', () => {
99
- expect(resultSet.tableColumns(pivotConfig)).toEqual([
100
- {
101
- key: 'Users.country',
102
- dataIndex: 'Users.country',
103
- title: 'Users Country',
104
- shortTitle: 'Country',
105
- type: 'string',
106
- format: undefined,
107
- meta: undefined,
108
- },
109
- {
110
- key: 'Users.gender',
111
- dataIndex: 'Users.gender',
112
- title: 'Users Gender',
113
- shortTitle: 'Gender',
114
- type: 'string',
115
- format: undefined,
116
- meta: undefined,
117
- },
118
- {
119
- key: 'Orders.count',
120
- dataIndex: 'Orders.count',
121
- title: 'Orders Count',
122
- shortTitle: 'Count',
123
- type: 'number',
124
- format: undefined,
125
- meta: undefined,
126
- },
127
- ]);
128
- });
129
- });
130
-
131
- describe('one dimension on `x` and one one `y` axis', () => {
132
- const pivotConfig = {
133
- x: ['Users.country'],
134
- y: ['Users.gender', 'measures'],
135
- };
136
-
137
- test('tablePivot', () => {
138
- expect(resultSet.tablePivot(pivotConfig)).toEqual([
139
- {
140
- 'Users.country': 'Germany',
141
- 'male,Orders.count': 10,
142
- 'female,Orders.count': 12,
143
- },
144
- {
145
- 'Users.country': 'US',
146
- 'male,Orders.count': 5,
147
- 'female,Orders.count': 7,
148
- },
149
- ]);
150
- });
151
-
152
- test('tableColumns', () => {
153
- expect(resultSet.tableColumns(pivotConfig)).toEqual([
154
- {
155
- key: 'Users.country',
156
- title: 'Users Country',
157
- shortTitle: 'Country',
158
- type: 'string',
159
- dataIndex: 'Users.country',
160
- format: undefined,
161
- meta: undefined,
162
- },
163
- {
164
- key: 'male',
165
- type: 'string',
166
- title: 'Users Gender male',
167
- shortTitle: 'male',
168
- format: undefined,
169
- meta: undefined,
170
- children: [
171
- {
172
- key: 'Orders.count',
173
- type: 'number',
174
- dataIndex: 'male,Orders.count',
175
- title: 'Orders Count',
176
- shortTitle: 'Count',
177
- format: undefined,
178
- meta: undefined,
179
- },
180
- ],
181
- },
182
- {
183
- key: 'female',
184
- type: 'string',
185
- title: 'Users Gender female',
186
- shortTitle: 'female',
187
- format: undefined,
188
- meta: undefined,
189
- children: [
190
- {
191
- key: 'Orders.count',
192
- type: 'number',
193
- dataIndex: 'female,Orders.count',
194
- title: 'Orders Count',
195
- shortTitle: 'Count',
196
- format: undefined,
197
- meta: undefined,
198
- },
199
- ],
200
- },
201
- ]);
202
- });
203
- });
204
-
205
- describe('all dimensions and measures on `y` axis', () => {
206
- const pivotConfig = {
207
- x: [],
208
- y: ['Users.country', 'Users.gender', 'measures'],
209
- };
210
-
211
- test('tablePivot', () => {
212
- expect(resultSet.tablePivot(pivotConfig)).toEqual([
213
- {
214
- 'Germany,male,Orders.count': 10,
215
- 'Germany,female,Orders.count': 12,
216
- 'US,male,Orders.count': 5,
217
- 'US,female,Orders.count': 7,
218
- },
219
- ]);
220
- });
221
-
222
- test('tableColumns', () => {
223
- expect(resultSet.tableColumns(pivotConfig)).toEqual([
224
- {
225
- key: 'Germany',
226
- type: 'string',
227
- title: 'Users Country Germany',
228
- shortTitle: 'Germany',
229
- meta: undefined,
230
- format: undefined,
231
- children: [
232
- {
233
- key: 'male',
234
- type: 'string',
235
- title: 'Users Gender male',
236
- shortTitle: 'male',
237
- meta: undefined,
238
- format: undefined,
239
- children: [
240
- {
241
- key: 'Orders.count',
242
- type: 'number',
243
- dataIndex: 'Germany,male,Orders.count',
244
- title: 'Orders Count',
245
- shortTitle: 'Count',
246
- meta: undefined,
247
- format: undefined,
248
- },
249
- ],
250
- },
251
- {
252
- key: 'female',
253
- type: 'string',
254
- title: 'Users Gender female',
255
- shortTitle: 'female',
256
- meta: undefined,
257
- format: undefined,
258
- children: [
259
- {
260
- key: 'Orders.count',
261
- type: 'number',
262
- dataIndex: 'Germany,female,Orders.count',
263
- title: 'Orders Count',
264
- shortTitle: 'Count',
265
- meta: undefined,
266
- format: undefined,
267
- },
268
- ],
269
- },
270
- ],
271
- },
272
- {
273
- key: 'US',
274
- type: 'string',
275
- title: 'Users Country US',
276
- shortTitle: 'US',
277
- meta: undefined,
278
- format: undefined,
279
- children: [
280
- {
281
- key: 'male',
282
- type: 'string',
283
- title: 'Users Gender male',
284
- shortTitle: 'male',
285
- meta: undefined,
286
- format: undefined,
287
- children: [
288
- {
289
- key: 'Orders.count',
290
- type: 'number',
291
- dataIndex: 'US,male,Orders.count',
292
- title: 'Orders Count',
293
- shortTitle: 'Count',
294
- meta: undefined,
295
- format: undefined,
296
- },
297
- ],
298
- },
299
- {
300
- key: 'female',
301
- type: 'string',
302
- title: 'Users Gender female',
303
- shortTitle: 'female',
304
- meta: undefined,
305
- format: undefined,
306
- children: [
307
- {
308
- key: 'Orders.count',
309
- type: 'number',
310
- dataIndex: 'US,female,Orders.count',
311
- title: 'Orders Count',
312
- shortTitle: 'Count',
313
- meta: undefined,
314
- format: undefined,
315
- },
316
- ],
317
- },
318
- ],
319
- },
320
- ]);
321
- });
322
- });
323
-
324
- describe('all dimensions and measures on `x` axis', () => {
325
- const pivotConfig = {
326
- x: ['Users.country', 'Users.gender', 'measures'],
327
- y: [],
328
- };
329
-
330
- test('tablePivot', () => {
331
- expect(resultSet.tablePivot(pivotConfig)).toEqual([
332
- {
333
- 'Users.country': 'Germany',
334
- 'Users.gender': 'male',
335
- measures: 'Orders.count',
336
- value: 10,
337
- },
338
- {
339
- 'Users.country': 'Germany',
340
- 'Users.gender': 'female',
341
- measures: 'Orders.count',
342
- value: 12,
343
- },
344
- {
345
- 'Users.country': 'US',
346
- 'Users.gender': 'male',
347
- measures: 'Orders.count',
348
- value: 5,
349
- },
350
- {
351
- 'Users.country': 'US',
352
- 'Users.gender': 'female',
353
- measures: 'Orders.count',
354
- value: 7,
355
- },
356
- ]);
357
- });
358
-
359
- test('tableColumns', () => {
360
- expect(resultSet.tableColumns(pivotConfig)).toEqual([
361
- {
362
- key: 'Users.country',
363
- title: 'Users Country',
364
- shortTitle: 'Country',
365
- type: 'string',
366
- dataIndex: 'Users.country',
367
- format: undefined,
368
- meta: undefined,
369
- },
370
- {
371
- key: 'Users.gender',
372
- title: 'Users Gender',
373
- shortTitle: 'Gender',
374
- type: 'string',
375
- dataIndex: 'Users.gender',
376
- format: undefined,
377
- meta: undefined,
378
- },
379
- {
380
- key: 'measures',
381
- dataIndex: 'measures',
382
- title: 'Measures',
383
- shortTitle: 'Measures',
384
- type: 'string',
385
- },
386
- {
387
- key: 'value',
388
- dataIndex: 'value',
389
- title: 'Value',
390
- shortTitle: 'Value',
391
- type: 'string',
392
- },
393
- ]);
394
- });
395
- });
396
-
397
- test('measures on `x` axis', () => {
398
- const pivotConfig = {
399
- x: ['Users.gender', 'measures'],
400
- y: ['Users.country'],
401
- };
402
-
403
- expect(resultSet.tablePivot(pivotConfig)).toEqual([
404
- {
405
- 'Users.gender': 'male',
406
- measures: 'Orders.count',
407
- US: 5,
408
- Germany: 10,
409
- },
410
- {
411
- 'Users.gender': 'female',
412
- measures: 'Orders.count',
413
- US: 7,
414
- Germany: 12,
415
- },
416
- ]);
417
- });
418
- });
419
-
420
- describe('it works with more than one measure', () => {
421
- const resultSet = new ResultSet({
422
- query: {
423
- measures: ['Orders.count', 'Orders.amount'],
424
- dimensions: ['Users.country', 'Users.gender'],
425
- },
426
- data: [
427
- {
428
- 'Users.country': 'Germany',
429
- 'Users.gender': 'male',
430
- 'Orders.count': 10,
431
- 'Orders.amount': 11,
432
- },
433
- {
434
- 'Users.country': 'Germany',
435
- 'Users.gender': 'female',
436
- 'Orders.count': 12,
437
- 'Orders.amount': 13,
438
- },
439
- {
440
- 'Users.country': 'US',
441
- 'Users.gender': 'male',
442
- 'Orders.count': 5,
443
- 'Orders.amount': 6,
444
- },
445
- {
446
- 'Users.country': 'US',
447
- 'Users.gender': 'female',
448
- 'Orders.count': 7,
449
- 'Orders.amount': 8,
450
- },
451
- ],
452
- annotation: {
453
- measures: {
454
- 'Orders.count': {
455
- title: 'Orders Count',
456
- shortTitle: 'Count',
457
- type: 'number',
458
- },
459
- 'Orders.amount': {
460
- title: 'Orders Amount',
461
- shortTitle: 'Amount',
462
- type: 'number',
463
- },
464
- },
465
- dimensions: {
466
- 'Users.country': {
467
- title: 'Users Country',
468
- shortTitle: 'Country',
469
- type: 'string',
470
- },
471
- 'Users.gender': {
472
- title: 'Users Gender',
473
- shortTitle: 'Gender',
474
- type: 'string',
475
- },
476
- },
477
- segments: {},
478
- timeDimensions: {},
479
- },
480
- });
481
-
482
- test('all dimensions on `x` axis', () => {
483
- const pivotConfig = {
484
- x: ['Users.country', 'Users.gender'],
485
- y: ['measures'],
486
- };
487
-
488
- expect(resultSet.tablePivot(pivotConfig)).toEqual([
489
- {
490
- 'Users.country': 'Germany',
491
- 'Users.gender': 'male',
492
- 'Orders.count': 10,
493
- 'Orders.amount': 11,
494
- },
495
- {
496
- 'Users.country': 'Germany',
497
- 'Users.gender': 'female',
498
- 'Orders.count': 12,
499
- 'Orders.amount': 13,
500
- },
501
- {
502
- 'Users.country': 'US',
503
- 'Users.gender': 'male',
504
- 'Orders.count': 5,
505
- 'Orders.amount': 6,
506
- },
507
- {
508
- 'Users.country': 'US',
509
- 'Users.gender': 'female',
510
- 'Orders.count': 7,
511
- 'Orders.amount': 8,
512
- },
513
- ]);
514
- });
515
-
516
- test('one dimension on `x` and one one `y` axis', () => {
517
- const pivotConfig = {
518
- x: ['Users.country'],
519
- y: ['Users.gender', 'measures'],
520
- };
521
-
522
- expect(resultSet.tablePivot(pivotConfig)).toEqual([
523
- {
524
- 'Users.country': 'Germany',
525
- 'male,Orders.count': 10,
526
- 'female,Orders.count': 12,
527
- 'male,Orders.amount': 11,
528
- 'female,Orders.amount': 13,
529
- },
530
- {
531
- 'Users.country': 'US',
532
- 'male,Orders.count': 5,
533
- 'female,Orders.count': 7,
534
- 'male,Orders.amount': 6,
535
- 'female,Orders.amount': 8,
536
- },
537
- ]);
538
- });
539
-
540
- test('all dimensions and measures on `y` axis', () => {
541
- const pivotConfig = {
542
- x: [],
543
- y: ['Users.country', 'Users.gender', 'measures'],
544
- };
545
-
546
- expect(resultSet.tablePivot(pivotConfig)).toEqual([
547
- {
548
- 'Germany,male,Orders.count': 10,
549
- 'Germany,male,Orders.amount': 11,
550
- 'Germany,female,Orders.count': 12,
551
- 'Germany,female,Orders.amount': 13,
552
- 'US,male,Orders.count': 5,
553
- 'US,male,Orders.amount': 6,
554
- 'US,female,Orders.count': 7,
555
- 'US,female,Orders.amount': 8,
556
- },
557
- ]);
558
- });
559
-
560
- test('measures on `x` axis', () => {
561
- const pivotConfig = {
562
- x: ['Users.gender', 'measures'],
563
- y: ['Users.country'],
564
- };
565
-
566
- expect(resultSet.tablePivot(pivotConfig)).toEqual([
567
- {
568
- 'Users.gender': 'male',
569
- measures: 'Orders.count',
570
- US: 5,
571
- Germany: 10,
572
- },
573
- {
574
- 'Users.gender': 'male',
575
- measures: 'Orders.amount',
576
- US: 6,
577
- Germany: 11,
578
- },
579
- {
580
- 'Users.gender': 'female',
581
- measures: 'Orders.count',
582
- US: 7,
583
- Germany: 12,
584
- },
585
- {
586
- 'Users.gender': 'female',
587
- measures: 'Orders.amount',
588
- US: 8,
589
- Germany: 13,
590
- },
591
- ]);
592
- });
593
- });
594
-
595
- describe('it works with no data', () => {
596
- const resultSet = new ResultSet({
597
- query: {
598
- measures: ['Orders.count'],
599
- dimensions: ['Users.country', 'Users.gender'],
600
- },
601
- data: [],
602
- annotation: {
603
- measures: {
604
- 'Orders.count': {
605
- title: 'Orders Count',
606
- shortTitle: 'Count',
607
- type: 'number',
608
- },
609
- },
610
- dimensions: {
611
- 'Users.country': {
612
- title: 'Users Country',
613
- shortTitle: 'Country',
614
- type: 'string',
615
- },
616
- 'Users.gender': {
617
- title: 'Users Gender',
618
- shortTitle: 'Gender',
619
- type: 'string',
620
- },
621
- },
622
- segments: {},
623
- timeDimensions: {},
624
- },
625
- });
626
-
627
- test('all dimensions on `x` axis', () => {
628
- const pivotConfig = {
629
- x: ['Users.country', 'Users.gender'],
630
- y: ['measures'],
631
- };
632
-
633
- expect(resultSet.tablePivot(pivotConfig)).toEqual([]);
634
-
635
- expect(resultSet.tableColumns(pivotConfig)).toEqual([
636
- {
637
- dataIndex: 'Users.country',
638
- format: undefined,
639
- key: 'Users.country',
640
- meta: undefined,
641
- shortTitle: 'Country',
642
- title: 'Users Country',
643
- type: 'string',
644
- },
645
- {
646
- dataIndex: 'Users.gender',
647
- format: undefined,
648
- key: 'Users.gender',
649
- meta: undefined,
650
- shortTitle: 'Gender',
651
- title: 'Users Gender',
652
- type: 'string',
653
- },
654
- {
655
- dataIndex: 'Orders.count',
656
- format: undefined,
657
- key: 'Orders.count',
658
- meta: undefined,
659
- shortTitle: 'Count',
660
- title: 'Orders Count',
661
- type: 'number',
662
- },
663
- ]);
664
- });
665
-
666
- test('one dimension on `y` axis', () => {
667
- const pivotConfig = {
668
- x: ['Users.gender'],
669
- y: ['Users.country', 'measures'],
670
- };
671
-
672
- expect(resultSet.tablePivot(pivotConfig)).toEqual([]);
673
-
674
- expect(resultSet.tableColumns(pivotConfig)).toEqual([
675
- {
676
- dataIndex: 'Users.gender',
677
- format: undefined,
678
- key: 'Users.gender',
679
- meta: undefined,
680
- shortTitle: 'Gender',
681
- title: 'Users Gender',
682
- type: 'string',
683
- },
684
- {
685
- dataIndex: 'Orders.count',
686
- format: undefined,
687
- key: 'Orders.count',
688
- meta: undefined,
689
- shortTitle: 'Count',
690
- title: 'Orders Count',
691
- type: 'number',
692
- },
693
- ]);
694
- });
695
- });
696
-
697
- test('order of values is preserved', () => {
698
- const resultSet = new ResultSet({
699
- query: {
700
- measures: [
701
- 'Branch.count'
702
- ],
703
- dimensions: [
704
- 'Tenant.number'
705
- ],
706
- 'order': [
707
- {
708
- 'id': 'Tenant.number',
709
- 'desc': true
710
- }
711
- ],
712
- filters: [],
713
- timezone: 'UTC'
714
- },
715
- data: [
716
- {
717
- 'Tenant.number': '6',
718
- 'Branch.count': '2'
719
- },
720
- {
721
- 'Tenant.number': '1',
722
- 'Branch.count': '2'
723
- },
724
- ],
725
- annotation: {
726
- measures: {
727
- 'Branch.count': {
728
- type: 'number'
729
- }
730
- },
731
- dimensions: {
732
- 'Tenant.number': {
733
- title: 'Tenant Number',
734
- shortTitle: 'Number',
735
- type: 'string'
736
- }
737
- },
738
- segments: {},
739
- timeDimensions: {}
740
- }
741
- });
742
-
743
- expect(resultSet.tableColumns({
744
- 'x': [],
745
- 'y': [
746
- 'Tenant.number'
747
- ]
748
- })).toEqual(
749
- [
750
- {
751
- 'key': '6',
752
- 'type': 'string',
753
- 'title': 'Tenant Number 6',
754
- 'shortTitle': '6',
755
- 'format': undefined,
756
- 'meta': undefined,
757
- 'children': [
758
- {
759
- 'key': 'Branch.count',
760
- 'type': 'number',
761
- 'dataIndex': '6,Branch.count',
762
- 'title': 'Branch.count',
763
- 'shortTitle': 'Branch.count',
764
- 'format': undefined,
765
- 'meta': undefined,
766
- }
767
- ]
768
- },
769
- {
770
- 'key': '1',
771
- 'type': 'string',
772
- 'title': 'Tenant Number 1',
773
- 'shortTitle': '1',
774
- 'format': undefined,
775
- 'meta': undefined,
776
- 'children': [
777
- {
778
- 'key': 'Branch.count',
779
- 'type': 'number',
780
- 'dataIndex': '1,Branch.count',
781
- 'title': 'Branch.count',
782
- 'shortTitle': 'Branch.count',
783
- 'format': undefined,
784
- "meta": undefined,
785
- }
786
- ]
787
- }
788
- ]
789
- );
790
- });
791
- });