@devrev/meerkat-node 0.0.111 → 0.0.115

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.
@@ -0,0 +1,616 @@
1
+ export declare const CREATE_TEST_TABLE = "\nCREATE TABLE orders (\n order_id INTEGER,\n customer_id VARCHAR,\n product_id VARCHAR,\n order_date DATE,\n order_amount FLOAT,\n vendors VARCHAR[]\n);\n";
2
+ export declare const INPUT_DATA_QUERY = "\nINSERT INTO orders VALUES\n(1, '1', '1', '2022-01-01', 50, ['myntra', 'amazon', 'flipkart']),\n(2, '1', '2', '2022-01-02', 80, ['myntra']),\n(3, '2', '3', '2022-02-01', 25, []),\n(4, '2', '1', '2022-03-01', 75, ['flipkart']),\n(5, '3', '1', '2022-03-02', 100, ['myntra', 'amazon', 'flipkart']),\n(6, '4', '2', '2022-04-01', 45, []),\n(7, '4', '3', '2022-05-01', 90, ['myntra', 'flipkart']),\n(8, '5', '1', '2022-05-02', 65, ['amazon', 'flipkart']),\n(9, '5', '2', '2022-05-05', 85, []),\n(10, '6', '3', '2022-06-01', 120, ['myntra', 'amazon']),\n(11, '6aa6', '3', '2024-06-01', 0, ['amazon']),\n(12, NULL, '3', '2024-07-01', 100, ['flipkart']),\n(13, '7', '6', '2024-08-01', 100, ['swiggy''s']);\n";
3
+ export declare const TABLE_SCHEMA: {
4
+ name: string;
5
+ sql: string;
6
+ measures: {
7
+ name: string;
8
+ sql: string;
9
+ type: string;
10
+ }[];
11
+ dimensions: {
12
+ name: string;
13
+ sql: string;
14
+ type: string;
15
+ }[];
16
+ };
17
+ /**
18
+ * Get test data based on alias configuration.
19
+ * @param useSafeAlias - When true, returns test data with dot notation aliases (e.g., "orders.customer_id")
20
+ * When false, returns test data with underscore notation aliases (e.g., orders__customer_id)
21
+ */
22
+ export declare const getTestData: ({ useSafeAlias }: {
23
+ useSafeAlias: boolean;
24
+ }) => ({
25
+ testName: string;
26
+ expectedSQL: string;
27
+ cubeInput: {
28
+ measures: string[];
29
+ filters: never[];
30
+ dimensions: string[];
31
+ limit: number;
32
+ };
33
+ expectedOutput: {
34
+ orders__order_month: string;
35
+ orders__total_order_amount: number;
36
+ }[];
37
+ }[] | {
38
+ testName: string;
39
+ expectedSQL: string;
40
+ cubeInput: {
41
+ measures: string[];
42
+ filters: never[];
43
+ dimensions: string[];
44
+ order: {
45
+ 'orders.total_order_amount': string;
46
+ 'orders.customer_id': string;
47
+ };
48
+ };
49
+ expectedOutput: ({
50
+ orders__customer_id: string;
51
+ orders__total_order_amount: number;
52
+ } | {
53
+ orders__customer_id: null;
54
+ orders__total_order_amount: number;
55
+ })[];
56
+ }[] | {
57
+ testName: string;
58
+ expectedSQL: string;
59
+ cubeInput: {
60
+ measures: string[];
61
+ filters: {
62
+ member: string;
63
+ operator: string;
64
+ values: string[];
65
+ }[];
66
+ dimensions: never[];
67
+ };
68
+ expectedOutput: {
69
+ order_id: number;
70
+ customer_id: string;
71
+ orders__customer_id: string;
72
+ product_id: string;
73
+ order_date: string;
74
+ order_amount: number;
75
+ vendors: string[];
76
+ }[];
77
+ }[] | {
78
+ testName: string;
79
+ expectedSQL: string;
80
+ cubeInput: {
81
+ measures: string[];
82
+ filters: {
83
+ and: {
84
+ member: string;
85
+ operator: string;
86
+ values: string[];
87
+ }[];
88
+ }[];
89
+ dimensions: never[];
90
+ };
91
+ expectedOutput: ({
92
+ order_id: number;
93
+ customer_id: string;
94
+ orders__customer_id: string;
95
+ product_id: string;
96
+ order_date: string;
97
+ order_amount: number;
98
+ vendors: string[];
99
+ orders__order_date?: undefined;
100
+ } | {
101
+ customer_id: string;
102
+ order_amount: number;
103
+ order_date: string;
104
+ order_id: number;
105
+ orders__customer_id: string;
106
+ orders__order_date: undefined;
107
+ product_id: string;
108
+ vendors: string[];
109
+ })[];
110
+ }[] | {
111
+ testName: string;
112
+ expectedSQL: string;
113
+ cubeInput: {
114
+ measures: string[];
115
+ filters: {
116
+ member: string;
117
+ operator: string;
118
+ values: string[];
119
+ }[];
120
+ dimensions: never[];
121
+ };
122
+ expectedOutput: ({
123
+ order_id: number;
124
+ customer_id: string;
125
+ product_id: string;
126
+ order_date: string;
127
+ order_amount: number;
128
+ orders__order_amount: number;
129
+ vendors: string[];
130
+ orders__order_date?: undefined;
131
+ } | {
132
+ customer_id: null;
133
+ order_amount: number;
134
+ order_date: string;
135
+ order_id: number;
136
+ orders__order_amount: number;
137
+ orders__order_date: undefined;
138
+ product_id: string;
139
+ vendors: string[];
140
+ } | {
141
+ customer_id: string;
142
+ order_amount: number;
143
+ order_date: string;
144
+ order_id: number;
145
+ orders__order_amount: number;
146
+ orders__order_date: undefined;
147
+ product_id: string;
148
+ vendors: string[];
149
+ })[];
150
+ }[] | {
151
+ testName: string;
152
+ expectedSQL: string;
153
+ cubeInput: {
154
+ measures: string[];
155
+ filters: {
156
+ member: string;
157
+ operator: string;
158
+ values: string[];
159
+ }[];
160
+ dimensions: never[];
161
+ };
162
+ expectedOutput: ({
163
+ order_id: number;
164
+ customer_id: string;
165
+ product_id: string;
166
+ order_date: string;
167
+ order_amount: number;
168
+ orders__order_date: string;
169
+ vendors: string[];
170
+ } | {
171
+ customer_id: null;
172
+ order_amount: number;
173
+ order_date: string;
174
+ order_id: number;
175
+ orders__order_date: string;
176
+ product_id: string;
177
+ vendors: string[];
178
+ })[];
179
+ }[] | {
180
+ testName: string;
181
+ expectedSQL: string;
182
+ cubeInput: {
183
+ measures: string[];
184
+ filters: {
185
+ and: {
186
+ member: string;
187
+ operator: string;
188
+ values: string[];
189
+ }[];
190
+ }[];
191
+ dimensions: never[];
192
+ };
193
+ expectedOutput: {
194
+ order_id: number;
195
+ customer_id: string;
196
+ product_id: string;
197
+ order_date: string;
198
+ order_amount: number;
199
+ orders__order_amount: number;
200
+ orders__order_date: string;
201
+ vendors: string[];
202
+ }[];
203
+ }[] | {
204
+ testName: string;
205
+ expectedSQL: string;
206
+ cubeInput: {
207
+ measures: string[];
208
+ filters: {
209
+ and: ({
210
+ member: string;
211
+ operator: string;
212
+ values?: undefined;
213
+ } | {
214
+ member: string;
215
+ operator: string;
216
+ values: string[];
217
+ })[];
218
+ }[];
219
+ dimensions: never[];
220
+ };
221
+ expectedOutput: ({
222
+ customer_id: string;
223
+ order_amount: number;
224
+ order_date: string;
225
+ order_id: number;
226
+ orders__order_amount: number;
227
+ orders__order_date: undefined;
228
+ orders__product_id: string;
229
+ product_id: string;
230
+ vendors: string[];
231
+ } | {
232
+ customer_id: null;
233
+ order_amount: number;
234
+ order_date: string;
235
+ order_id: number;
236
+ orders__order_amount: number;
237
+ orders__order_date: undefined;
238
+ orders__product_id: string;
239
+ product_id: string;
240
+ vendors: string[];
241
+ })[];
242
+ }[] | {
243
+ testName: string;
244
+ expectedSQL: string;
245
+ cubeInput: {
246
+ measures: string[];
247
+ filters: {
248
+ and: ({
249
+ member: string;
250
+ operator: string;
251
+ values?: undefined;
252
+ } | {
253
+ member: string;
254
+ operator: string;
255
+ values: string[];
256
+ })[];
257
+ }[];
258
+ dimensions: never[];
259
+ };
260
+ expectedOutput: {
261
+ orders__customer_id: null;
262
+ customer_id: null;
263
+ order_amount: number;
264
+ order_date: string;
265
+ order_id: number;
266
+ orders__order_date: undefined;
267
+ orders__product_id: string;
268
+ product_id: string;
269
+ vendors: string[];
270
+ }[];
271
+ }[] | ({
272
+ testName: string;
273
+ expectedSQL: string;
274
+ cubeInput: {
275
+ measures: string[];
276
+ filters: {
277
+ and: {
278
+ member: string;
279
+ operator: string;
280
+ values: string[];
281
+ }[];
282
+ }[];
283
+ dimensions: never[];
284
+ };
285
+ expectedOutput: {
286
+ customer_id: string;
287
+ order_amount: number;
288
+ order_date: string;
289
+ order_id: number;
290
+ orders__customer_id: string;
291
+ orders__order_date: undefined;
292
+ orders__vendors: string[];
293
+ product_id: string;
294
+ vendors: string[];
295
+ }[];
296
+ } | {
297
+ testName: string;
298
+ expectedSQL: string;
299
+ cubeInput: {
300
+ measures: string[];
301
+ filters: {
302
+ and: {
303
+ member: string;
304
+ operator: string;
305
+ values: string[];
306
+ }[];
307
+ }[];
308
+ dimensions: never[];
309
+ };
310
+ expectedOutput: {
311
+ customer_id: string;
312
+ order_amount: number;
313
+ order_date: string;
314
+ order_id: number;
315
+ orders__order_date: undefined;
316
+ orders__vendors: string[];
317
+ product_id: string;
318
+ vendors: string[];
319
+ }[];
320
+ })[])[] | ({
321
+ testName: string;
322
+ expectedSQL: string;
323
+ cubeInput: {
324
+ measures: string[];
325
+ filters: never[];
326
+ dimensions: string[];
327
+ limit: number;
328
+ };
329
+ expectedOutput: {
330
+ 'orders.order_month': string;
331
+ 'orders.total_order_amount': number;
332
+ }[];
333
+ }[] | {
334
+ testName: string;
335
+ expectedSQL: string;
336
+ cubeInput: {
337
+ measures: string[];
338
+ filters: never[];
339
+ dimensions: string[];
340
+ order: {
341
+ 'orders.total_order_amount': string;
342
+ 'orders.customer_id': string;
343
+ };
344
+ };
345
+ expectedOutput: ({
346
+ 'orders.customer_id': string;
347
+ 'orders.total_order_amount': number;
348
+ } | {
349
+ 'orders.customer_id': null;
350
+ 'orders.total_order_amount': number;
351
+ })[];
352
+ }[] | {
353
+ testName: string;
354
+ expectedSQL: string;
355
+ cubeInput: {
356
+ measures: string[];
357
+ filters: {
358
+ member: string;
359
+ operator: string;
360
+ values: string[];
361
+ }[];
362
+ dimensions: never[];
363
+ };
364
+ expectedOutput: {
365
+ order_id: number;
366
+ customer_id: string;
367
+ 'orders.customer_id': string;
368
+ product_id: string;
369
+ order_date: string;
370
+ order_amount: number;
371
+ vendors: string[];
372
+ }[];
373
+ }[] | {
374
+ testName: string;
375
+ expectedSQL: string;
376
+ cubeInput: {
377
+ measures: string[];
378
+ filters: {
379
+ and: {
380
+ member: string;
381
+ operator: string;
382
+ values: string[];
383
+ }[];
384
+ }[];
385
+ dimensions: never[];
386
+ };
387
+ expectedOutput: ({
388
+ order_id: number;
389
+ customer_id: string;
390
+ 'orders.customer_id': string;
391
+ product_id: string;
392
+ order_date: string;
393
+ order_amount: number;
394
+ vendors: string[];
395
+ 'orders.order_date'?: undefined;
396
+ } | {
397
+ customer_id: string;
398
+ order_amount: number;
399
+ order_date: string;
400
+ order_id: number;
401
+ 'orders.customer_id': string;
402
+ 'orders.order_date': undefined;
403
+ product_id: string;
404
+ vendors: string[];
405
+ })[];
406
+ }[] | {
407
+ testName: string;
408
+ expectedSQL: string;
409
+ cubeInput: {
410
+ measures: string[];
411
+ filters: {
412
+ member: string;
413
+ operator: string;
414
+ values: string[];
415
+ }[];
416
+ dimensions: never[];
417
+ };
418
+ expectedOutput: ({
419
+ order_id: number;
420
+ customer_id: string;
421
+ product_id: string;
422
+ order_date: string;
423
+ order_amount: number;
424
+ 'orders.order_amount': number;
425
+ vendors: string[];
426
+ 'orders.order_date'?: undefined;
427
+ } | {
428
+ customer_id: null;
429
+ order_amount: number;
430
+ order_date: string;
431
+ order_id: number;
432
+ 'orders.order_amount': number;
433
+ 'orders.order_date': undefined;
434
+ product_id: string;
435
+ vendors: string[];
436
+ } | {
437
+ customer_id: string;
438
+ order_amount: number;
439
+ order_date: string;
440
+ order_id: number;
441
+ 'orders.order_amount': number;
442
+ 'orders.order_date': undefined;
443
+ product_id: string;
444
+ vendors: string[];
445
+ })[];
446
+ }[] | {
447
+ testName: string;
448
+ expectedSQL: string;
449
+ cubeInput: {
450
+ measures: string[];
451
+ filters: {
452
+ member: string;
453
+ operator: string;
454
+ values: string[];
455
+ }[];
456
+ dimensions: never[];
457
+ };
458
+ expectedOutput: ({
459
+ order_id: number;
460
+ customer_id: string;
461
+ product_id: string;
462
+ order_date: string;
463
+ order_amount: number;
464
+ 'orders.order_date': string;
465
+ vendors: string[];
466
+ } | {
467
+ customer_id: null;
468
+ order_amount: number;
469
+ order_date: string;
470
+ order_id: number;
471
+ 'orders.order_date': string;
472
+ product_id: string;
473
+ vendors: string[];
474
+ })[];
475
+ }[] | {
476
+ testName: string;
477
+ expectedSQL: string;
478
+ cubeInput: {
479
+ measures: string[];
480
+ filters: {
481
+ and: {
482
+ member: string;
483
+ operator: string;
484
+ values: string[];
485
+ }[];
486
+ }[];
487
+ dimensions: never[];
488
+ };
489
+ expectedOutput: {
490
+ order_id: number;
491
+ customer_id: string;
492
+ product_id: string;
493
+ order_date: string;
494
+ order_amount: number;
495
+ 'orders.order_amount': number;
496
+ 'orders.order_date': string;
497
+ vendors: string[];
498
+ }[];
499
+ }[] | {
500
+ testName: string;
501
+ expectedSQL: string;
502
+ cubeInput: {
503
+ measures: string[];
504
+ filters: {
505
+ and: ({
506
+ member: string;
507
+ operator: string;
508
+ values?: undefined;
509
+ } | {
510
+ member: string;
511
+ operator: string;
512
+ values: string[];
513
+ })[];
514
+ }[];
515
+ dimensions: never[];
516
+ };
517
+ expectedOutput: ({
518
+ customer_id: string;
519
+ order_amount: number;
520
+ order_date: string;
521
+ order_id: number;
522
+ 'orders.order_amount': number;
523
+ 'orders.order_date': undefined;
524
+ 'orders.product_id': string;
525
+ product_id: string;
526
+ vendors: string[];
527
+ } | {
528
+ customer_id: null;
529
+ order_amount: number;
530
+ order_date: string;
531
+ order_id: number;
532
+ 'orders.order_amount': number;
533
+ 'orders.order_date': undefined;
534
+ 'orders.product_id': string;
535
+ product_id: string;
536
+ vendors: string[];
537
+ })[];
538
+ }[] | {
539
+ testName: string;
540
+ expectedSQL: string;
541
+ cubeInput: {
542
+ measures: string[];
543
+ filters: {
544
+ and: ({
545
+ member: string;
546
+ operator: string;
547
+ values?: undefined;
548
+ } | {
549
+ member: string;
550
+ operator: string;
551
+ values: string[];
552
+ })[];
553
+ }[];
554
+ dimensions: never[];
555
+ };
556
+ expectedOutput: {
557
+ 'orders.customer_id': null;
558
+ customer_id: null;
559
+ order_amount: number;
560
+ order_date: string;
561
+ order_id: number;
562
+ 'orders.order_date': undefined;
563
+ 'orders.product_id': string;
564
+ product_id: string;
565
+ vendors: string[];
566
+ }[];
567
+ }[] | ({
568
+ testName: string;
569
+ expectedSQL: string;
570
+ cubeInput: {
571
+ measures: string[];
572
+ filters: {
573
+ and: {
574
+ member: string;
575
+ operator: string;
576
+ values: string[];
577
+ }[];
578
+ }[];
579
+ dimensions: never[];
580
+ };
581
+ expectedOutput: {
582
+ customer_id: string;
583
+ order_amount: number;
584
+ order_date: string;
585
+ order_id: number;
586
+ 'orders.customer_id': string;
587
+ 'orders.order_date': undefined;
588
+ 'orders.vendors': string[];
589
+ product_id: string;
590
+ vendors: string[];
591
+ }[];
592
+ } | {
593
+ testName: string;
594
+ expectedSQL: string;
595
+ cubeInput: {
596
+ measures: string[];
597
+ filters: {
598
+ and: {
599
+ member: string;
600
+ operator: string;
601
+ values: string[];
602
+ }[];
603
+ }[];
604
+ dimensions: never[];
605
+ };
606
+ expectedOutput: {
607
+ customer_id: string;
608
+ order_amount: number;
609
+ order_date: string;
610
+ order_id: number;
611
+ 'orders.order_date': undefined;
612
+ 'orders.vendors': string[];
613
+ product_id: string;
614
+ vendors: string[];
615
+ }[];
616
+ })[])[];