@malloydata/malloy-tests 0.0.119-dev240116200529 → 0.0.119-dev240118215411

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.
@@ -26,6 +26,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
26
26
  const runtimes_1 = require("../../runtimes");
27
27
  require("../../util/db-jest-matchers");
28
28
  const util_1 = require("../../util");
29
+ const assert_1 = require("assert");
29
30
  const runtimes = new runtimes_1.RuntimeList((0, util_1.databasesFromEnvironmentOr)(runtimes_1.allDatabases));
30
31
  function modelText(databaseName) {
31
32
  return `
@@ -310,6 +311,154 @@ describe.each(runtimes.runtimeList)('%s', (databaseName, runtime) => {
310
311
  avg_a_year_built2: 1969,
311
312
  });
312
313
  });
314
+ describe('sql expr functions', () => {
315
+ it('sql_string', async () => {
316
+ await expect(`
317
+ ##! experimental { sql_functions }
318
+ source: a is ${databaseName}.table('malloytest.aircraft_models') extend { where: aircraft_model_code ? '0270202' }
319
+
320
+ run: a -> {
321
+ group_by: string_1 is sql_string("UPPER(\${manufacturer})")
322
+ }
323
+ `).malloyResultMatches(expressionModel, {
324
+ string_1: 'AHRENS AIRCRAFT CORP.',
325
+ });
326
+ });
327
+ it('sql_number', async () => {
328
+ await expect(`
329
+ ##! experimental { sql_functions }
330
+ source: a is ${databaseName}.table('malloytest.aircraft_models') extend { where: aircraft_model_code ? '0270202' }
331
+
332
+ run: a -> {
333
+ group_by: seats
334
+ group_by: number_1 is sql_number("\${seats} * 2")
335
+ }
336
+ `).malloyResultMatches(expressionModel, {
337
+ seats: 29,
338
+ number_1: 58,
339
+ });
340
+ });
341
+ it('sql_boolean', async () => {
342
+ await expect(`
343
+ ##! experimental { sql_functions }
344
+ source: a is ${databaseName}.table('malloytest.aircraft_models') extend { where: aircraft_model_code ? '0270202' }
345
+
346
+ run: a -> {
347
+ group_by: boolean_1 is sql_boolean("\${seats} > 20")
348
+ group_by: boolean_2 is sql_boolean("\${engines} = 2")
349
+ }
350
+ `).malloyResultMatches(expressionModel, {
351
+ boolean_1: true,
352
+ boolean_2: false,
353
+ });
354
+ });
355
+ it('sql_date', async () => {
356
+ await expect(`
357
+ ##! experimental { sql_functions }
358
+ source: a is ${databaseName}.table('malloytest.aircraft') extend { where: tail_num ? 'N110WL' }
359
+
360
+ run: a -> {
361
+ group_by: date_1 is sql_date("\${last_action_date}")
362
+ }
363
+ `).malloyResultMatches(expressionModel, {
364
+ date_1: new Date('2000-01-04T00:00:00.000Z'),
365
+ });
366
+ });
367
+ it('sql_timestamp', async () => {
368
+ await expect(`
369
+ ##! experimental { sql_functions }
370
+ source: a is ${databaseName}.table('malloytest.aircraft') extend { where: tail_num ? 'N110WL' }
371
+
372
+ run: a -> {
373
+ group_by: timestamp_1 is sql_timestamp("\${last_action_date}")
374
+ }
375
+ `).malloyResultMatches(expressionModel, {
376
+ timestamp_1: new Date('2000-01-04T00:00:00.000Z'),
377
+ });
378
+ });
379
+ it('with ${TABLE}.field', async () => {
380
+ await expect(`
381
+ ##! experimental { sql_functions }
382
+ source: a is ${databaseName}.table('malloytest.aircraft_models') extend { where: aircraft_model_code ? '0270202' }
383
+
384
+ run: a -> {
385
+ group_by: string_1 is sql_string("UPPER(\${TABLE}.manufacturer)")
386
+ }
387
+ `).malloyResultMatches(expressionModel, {
388
+ string_1: 'AHRENS AIRCRAFT CORP.',
389
+ });
390
+ });
391
+ it('with ${field}', async () => {
392
+ await expect(`
393
+ ##! experimental { sql_functions }
394
+ source: a is ${databaseName}.table('malloytest.aircraft_models') extend { where: aircraft_model_code ? '0270202' }
395
+
396
+ run: a -> {
397
+ group_by: string_1 is sql_string("UPPER(\${manufacturer})")
398
+ }
399
+ `).malloyResultMatches(expressionModel, {
400
+ string_1: 'AHRENS AIRCRAFT CORP.',
401
+ });
402
+ });
403
+ it('sql_functions - experimental feature is ignored', async () => {
404
+ const query = await expressionModel.loadQuery(`
405
+ source: a is ${databaseName}.table('malloytest.aircraft_models') extend { where: aircraft_model_code ? '0270202' }
406
+
407
+ run: a -> {
408
+ group_by: manufacturer
409
+ group_by: string_1 is sql_string("UPPER(\${manufacturer})")
410
+ }
411
+ `);
412
+ const runResult = await query.run();
413
+ const dataResult = runResult.data.toObject();
414
+ expect(dataResult.length).toEqual(1);
415
+ const firstRow = dataResult.at(0);
416
+ if (firstRow !== undefined) {
417
+ expect(firstRow['manufacturer']).toEqual('AHRENS AIRCRAFT CORP.');
418
+ expect('string_1' in firstRow).toBeFalsy();
419
+ }
420
+ else {
421
+ (0, assert_1.fail)('exepected a single row, but found none');
422
+ }
423
+ });
424
+ describe('[not yet supported]', () => {
425
+ // See ${...} documentation for lookml here for guidance on remaining work:
426
+ // https://cloud.google.com/looker/docs/reference/param-field-sql#sql_for_dimensions
427
+ it('${view_name.dimension_name} - one path', async () => {
428
+ const query = await expressionModel.loadQuery(`
429
+ ##! experimental { sql_functions }
430
+ source: a is ${databaseName}.table('malloytest.aircraft_models') extend { where: aircraft_model_code ? '0270202' }
431
+
432
+ run: a -> {
433
+ group_by: string_1 is sql_string("UPPER(\${a.manufacturer})")
434
+ }
435
+ `);
436
+ await expect(query.run()).rejects.toThrow("'.' paths are not yet supported in sql interpolations, found ${a.manufacturer}");
437
+ });
438
+ it('${view_name.dimension_name} - multiple paths', async () => {
439
+ const query = await expressionModel.loadQuery(`
440
+ ##! experimental { sql_functions }
441
+ source: a is ${databaseName}.table('malloytest.aircraft_models') extend { where: aircraft_model_code ? '0270202' }
442
+
443
+ run: a -> {
444
+ group_by: number_1 is sql_number("\${a.seats} * \${a.seats} + \${a.total_seats}")
445
+ }
446
+ `);
447
+ await expect(query.run()).rejects.toThrow("'.' paths are not yet supported in sql interpolations, found [${a.seats}, ${a.seats}, ${a.total_seats}]");
448
+ });
449
+ it('${view_name.SQL_TABLE_NAME}', async () => {
450
+ const query = await expressionModel.loadQuery(`
451
+ ##! experimental { sql_functions }
452
+ source: a is ${databaseName}.table('malloytest.aircraft_models') extend { where: aircraft_model_code ? '0270202' }
453
+
454
+ run: a -> {
455
+ group_by: number_1 is sql_number("\${a.SQL_TABLE_NAME}.seats")
456
+ }
457
+ `);
458
+ await expect(query.run()).rejects.toThrow("'.' paths are not yet supported in sql interpolations, found ${a.SQL_TABLE_NAME}");
459
+ });
460
+ });
461
+ });
313
462
  (0, util_1.testIf)(runtime.supportsNesting)('query with aliasname used twice', async () => {
314
463
  await expect(`
315
464
  run: aircraft->{
@@ -1 +1 @@
1
- {"version":3,"file":"expr.spec.js","sourceRoot":"","sources":["../../../src/databases/all/expr.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"expr.spec.js","sourceRoot":"","sources":["../../../src/databases/all/expr.spec.ts"],"names":[],"mappings":"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"}
@@ -380,6 +380,64 @@ runtimes.runtimeMap.forEach((runtime, databaseName) => {
380
380
  am_sum: 4139,
381
381
  });
382
382
  });
383
+ it(`leafy count - ${databaseName}`, async () => {
384
+ // in a joined table when the joined is leafiest
385
+ // we need to make sure we don't count rows that
386
+ // don't match the join.
387
+ await expect(`
388
+ source: am_states is ${databaseName}.table('malloytest.state_facts') -> {
389
+ select: *
390
+ where: state ~ r'^(A|M)'
391
+ }
392
+
393
+ source: states is ${databaseName}.table('malloytest.state_facts') extend {
394
+ join_many: am_states on state=am_states.state
395
+ }
396
+
397
+ run: states -> {
398
+ where: state = 'CA'
399
+ aggregate:
400
+ leafy_count is am_states.count()
401
+ root_count is count()
402
+ }
403
+ `).malloyResultMatches(runtime, {
404
+ leafy_count: 0,
405
+ root_count: 1,
406
+ });
407
+ });
408
+ it(`leafy nested count - ${databaseName}`, async () => {
409
+ // in a joined table when the joined is leafiest
410
+ // we need to make sure we don't count rows that
411
+ // don't match the join.
412
+ await expect(`
413
+ source: am_states is ${databaseName}.table('malloytest.state_facts') -> {
414
+ group_by: state
415
+ where: state ~ r'^(A|M)'
416
+ nest: nested_state is {
417
+ group_by: state
418
+ }
419
+ }
420
+
421
+ source: states is ${databaseName}.table('malloytest.state_facts') extend {
422
+ join_many: am_states on state=am_states.state
423
+ }
424
+
425
+ run: states -> {
426
+ where: state = 'CA'
427
+ group_by:
428
+ state
429
+ am_state is am_states.state
430
+ aggregate:
431
+ leafy_count is am_states.nested_state.count()
432
+ root_count is count()
433
+ }
434
+ `).malloyResultMatches(runtime, {
435
+ leafy_count: 0,
436
+ root_count: 1,
437
+ state: 'CA',
438
+ am_state: null,
439
+ });
440
+ });
383
441
  it(`basic index - ${databaseName}`, async () => {
384
442
  // Make sure basic indexing works.
385
443
  await expect(`
@@ -1 +1 @@
1
- {"version":3,"file":"nomodel.spec.js","sourceRoot":"","sources":["../../../src/databases/all/nomodel.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"nomodel.spec.js","sourceRoot":"","sources":["../../../src/databases/all/nomodel.spec.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -18,11 +18,11 @@
18
18
  },
19
19
  "dependencies": {
20
20
  "@jest/globals": "^29.4.3",
21
- "@malloydata/db-bigquery": "^0.0.119-dev240116200529",
22
- "@malloydata/db-duckdb": "^0.0.119-dev240116200529",
23
- "@malloydata/db-postgres": "^0.0.119-dev240116200529",
24
- "@malloydata/malloy": "^0.0.119-dev240116200529",
25
- "@malloydata/render": "^0.0.119-dev240116200529",
21
+ "@malloydata/db-bigquery": "^0.0.119-dev240118215411",
22
+ "@malloydata/db-duckdb": "^0.0.119-dev240118215411",
23
+ "@malloydata/db-postgres": "^0.0.119-dev240118215411",
24
+ "@malloydata/malloy": "^0.0.119-dev240118215411",
25
+ "@malloydata/render": "^0.0.119-dev240118215411",
26
26
  "jsdom": "^22.1.0",
27
27
  "luxon": "^2.4.0",
28
28
  "madge": "^6.0.0"
@@ -31,5 +31,5 @@
31
31
  "@types/jsdom": "^21.1.1",
32
32
  "@types/luxon": "^2.4.0"
33
33
  },
34
- "version": "0.0.119-dev240116200529"
34
+ "version": "0.0.119-dev240118215411"
35
35
  }
@@ -25,6 +25,7 @@
25
25
  import {RuntimeList, allDatabases} from '../../runtimes';
26
26
  import '../../util/db-jest-matchers';
27
27
  import {databasesFromEnvironmentOr, mkSqlEqWith, testIf} from '../../util';
28
+ import {fail} from 'assert';
28
29
 
29
30
  const runtimes = new RuntimeList(databasesFromEnvironmentOr(allDatabases));
30
31
 
@@ -340,6 +341,179 @@ describe.each(runtimes.runtimeList)('%s', (databaseName, runtime) => {
340
341
  });
341
342
  });
342
343
 
344
+ describe('sql expr functions', () => {
345
+ it('sql_string', async () => {
346
+ await expect(`
347
+ ##! experimental { sql_functions }
348
+ source: a is ${databaseName}.table('malloytest.aircraft_models') extend { where: aircraft_model_code ? '0270202' }
349
+
350
+ run: a -> {
351
+ group_by: string_1 is sql_string("UPPER(\${manufacturer})")
352
+ }
353
+ `).malloyResultMatches(expressionModel, {
354
+ string_1: 'AHRENS AIRCRAFT CORP.',
355
+ });
356
+ });
357
+
358
+ it('sql_number', async () => {
359
+ await expect(`
360
+ ##! experimental { sql_functions }
361
+ source: a is ${databaseName}.table('malloytest.aircraft_models') extend { where: aircraft_model_code ? '0270202' }
362
+
363
+ run: a -> {
364
+ group_by: seats
365
+ group_by: number_1 is sql_number("\${seats} * 2")
366
+ }
367
+ `).malloyResultMatches(expressionModel, {
368
+ seats: 29,
369
+ number_1: 58,
370
+ });
371
+ });
372
+
373
+ it('sql_boolean', async () => {
374
+ await expect(`
375
+ ##! experimental { sql_functions }
376
+ source: a is ${databaseName}.table('malloytest.aircraft_models') extend { where: aircraft_model_code ? '0270202' }
377
+
378
+ run: a -> {
379
+ group_by: boolean_1 is sql_boolean("\${seats} > 20")
380
+ group_by: boolean_2 is sql_boolean("\${engines} = 2")
381
+ }
382
+ `).malloyResultMatches(expressionModel, {
383
+ boolean_1: true,
384
+ boolean_2: false,
385
+ });
386
+ });
387
+
388
+ it('sql_date', async () => {
389
+ await expect(`
390
+ ##! experimental { sql_functions }
391
+ source: a is ${databaseName}.table('malloytest.aircraft') extend { where: tail_num ? 'N110WL' }
392
+
393
+ run: a -> {
394
+ group_by: date_1 is sql_date("\${last_action_date}")
395
+ }
396
+ `).malloyResultMatches(expressionModel, {
397
+ date_1: new Date('2000-01-04T00:00:00.000Z'),
398
+ });
399
+ });
400
+
401
+ it('sql_timestamp', async () => {
402
+ await expect(`
403
+ ##! experimental { sql_functions }
404
+ source: a is ${databaseName}.table('malloytest.aircraft') extend { where: tail_num ? 'N110WL' }
405
+
406
+ run: a -> {
407
+ group_by: timestamp_1 is sql_timestamp("\${last_action_date}")
408
+ }
409
+ `).malloyResultMatches(expressionModel, {
410
+ timestamp_1: new Date('2000-01-04T00:00:00.000Z'),
411
+ });
412
+ });
413
+
414
+ it('with ${TABLE}.field', async () => {
415
+ await expect(`
416
+ ##! experimental { sql_functions }
417
+ source: a is ${databaseName}.table('malloytest.aircraft_models') extend { where: aircraft_model_code ? '0270202' }
418
+
419
+ run: a -> {
420
+ group_by: string_1 is sql_string("UPPER(\${TABLE}.manufacturer)")
421
+ }
422
+ `).malloyResultMatches(expressionModel, {
423
+ string_1: 'AHRENS AIRCRAFT CORP.',
424
+ });
425
+ });
426
+
427
+ it('with ${field}', async () => {
428
+ await expect(`
429
+ ##! experimental { sql_functions }
430
+ source: a is ${databaseName}.table('malloytest.aircraft_models') extend { where: aircraft_model_code ? '0270202' }
431
+
432
+ run: a -> {
433
+ group_by: string_1 is sql_string("UPPER(\${manufacturer})")
434
+ }
435
+ `).malloyResultMatches(expressionModel, {
436
+ string_1: 'AHRENS AIRCRAFT CORP.',
437
+ });
438
+ });
439
+
440
+ it('sql_functions - experimental feature is ignored', async () => {
441
+ const query = await expressionModel.loadQuery(
442
+ `
443
+ source: a is ${databaseName}.table('malloytest.aircraft_models') extend { where: aircraft_model_code ? '0270202' }
444
+
445
+ run: a -> {
446
+ group_by: manufacturer
447
+ group_by: string_1 is sql_string("UPPER(\${manufacturer})")
448
+ }
449
+ `
450
+ );
451
+
452
+ const runResult = await query.run();
453
+ const dataResult = runResult.data.toObject();
454
+ expect(dataResult.length).toEqual(1);
455
+ const firstRow = dataResult.at(0);
456
+ if (firstRow !== undefined) {
457
+ expect(firstRow['manufacturer']).toEqual('AHRENS AIRCRAFT CORP.');
458
+ expect('string_1' in firstRow).toBeFalsy();
459
+ } else {
460
+ fail('exepected a single row, but found none');
461
+ }
462
+ });
463
+
464
+ describe('[not yet supported]', () => {
465
+ // See ${...} documentation for lookml here for guidance on remaining work:
466
+ // https://cloud.google.com/looker/docs/reference/param-field-sql#sql_for_dimensions
467
+ it('${view_name.dimension_name} - one path', async () => {
468
+ const query = await expressionModel.loadQuery(
469
+ `
470
+ ##! experimental { sql_functions }
471
+ source: a is ${databaseName}.table('malloytest.aircraft_models') extend { where: aircraft_model_code ? '0270202' }
472
+
473
+ run: a -> {
474
+ group_by: string_1 is sql_string("UPPER(\${a.manufacturer})")
475
+ }
476
+ `
477
+ );
478
+ await expect(query.run()).rejects.toThrow(
479
+ "'.' paths are not yet supported in sql interpolations, found ${a.manufacturer}"
480
+ );
481
+ });
482
+
483
+ it('${view_name.dimension_name} - multiple paths', async () => {
484
+ const query = await expressionModel.loadQuery(
485
+ `
486
+ ##! experimental { sql_functions }
487
+ source: a is ${databaseName}.table('malloytest.aircraft_models') extend { where: aircraft_model_code ? '0270202' }
488
+
489
+ run: a -> {
490
+ group_by: number_1 is sql_number("\${a.seats} * \${a.seats} + \${a.total_seats}")
491
+ }
492
+ `
493
+ );
494
+ await expect(query.run()).rejects.toThrow(
495
+ "'.' paths are not yet supported in sql interpolations, found [${a.seats}, ${a.seats}, ${a.total_seats}]"
496
+ );
497
+ });
498
+
499
+ it('${view_name.SQL_TABLE_NAME}', async () => {
500
+ const query = await expressionModel.loadQuery(
501
+ `
502
+ ##! experimental { sql_functions }
503
+ source: a is ${databaseName}.table('malloytest.aircraft_models') extend { where: aircraft_model_code ? '0270202' }
504
+
505
+ run: a -> {
506
+ group_by: number_1 is sql_number("\${a.SQL_TABLE_NAME}.seats")
507
+ }
508
+ `
509
+ );
510
+ await expect(query.run()).rejects.toThrow(
511
+ "'.' paths are not yet supported in sql interpolations, found ${a.SQL_TABLE_NAME}"
512
+ );
513
+ });
514
+ });
515
+ });
516
+
343
517
  testIf(runtime.supportsNesting)(
344
518
  'query with aliasname used twice',
345
519
  async () => {
@@ -410,6 +410,66 @@ runtimes.runtimeMap.forEach((runtime, databaseName) => {
410
410
  });
411
411
  });
412
412
 
413
+ it(`leafy count - ${databaseName}`, async () => {
414
+ // in a joined table when the joined is leafiest
415
+ // we need to make sure we don't count rows that
416
+ // don't match the join.
417
+ await expect(`
418
+ source: am_states is ${databaseName}.table('malloytest.state_facts') -> {
419
+ select: *
420
+ where: state ~ r'^(A|M)'
421
+ }
422
+
423
+ source: states is ${databaseName}.table('malloytest.state_facts') extend {
424
+ join_many: am_states on state=am_states.state
425
+ }
426
+
427
+ run: states -> {
428
+ where: state = 'CA'
429
+ aggregate:
430
+ leafy_count is am_states.count()
431
+ root_count is count()
432
+ }
433
+ `).malloyResultMatches(runtime, {
434
+ leafy_count: 0,
435
+ root_count: 1,
436
+ });
437
+ });
438
+
439
+ it(`leafy nested count - ${databaseName}`, async () => {
440
+ // in a joined table when the joined is leafiest
441
+ // we need to make sure we don't count rows that
442
+ // don't match the join.
443
+ await expect(`
444
+ source: am_states is ${databaseName}.table('malloytest.state_facts') -> {
445
+ group_by: state
446
+ where: state ~ r'^(A|M)'
447
+ nest: nested_state is {
448
+ group_by: state
449
+ }
450
+ }
451
+
452
+ source: states is ${databaseName}.table('malloytest.state_facts') extend {
453
+ join_many: am_states on state=am_states.state
454
+ }
455
+
456
+ run: states -> {
457
+ where: state = 'CA'
458
+ group_by:
459
+ state
460
+ am_state is am_states.state
461
+ aggregate:
462
+ leafy_count is am_states.nested_state.count()
463
+ root_count is count()
464
+ }
465
+ `).malloyResultMatches(runtime, {
466
+ leafy_count: 0,
467
+ root_count: 1,
468
+ state: 'CA',
469
+ am_state: null,
470
+ });
471
+ });
472
+
413
473
  it(`basic index - ${databaseName}`, async () => {
414
474
  // Make sure basic indexing works.
415
475
  await expect(`