@malloydata/malloy-tests 0.0.101-dev231107220340 → 0.0.101-dev231109201517

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.
@@ -116,7 +116,7 @@ runtimes.runtimeMap.forEach((runtime, databaseName) => {
116
116
  run: x -> { group_by: n } + c
117
117
  `).malloyResultMatches(runtime, { n: 1, c: 1 });
118
118
  });
119
- it(`dimension plus literal view - ${databaseName}`, async () => {
119
+ it(`measure plus literal view - ${databaseName}`, async () => {
120
120
  await expect(`
121
121
  ##! experimental { scalar_lenses }
122
122
  source: x is ${databaseName}.sql("SELECT 1 AS n") extend {
@@ -201,7 +201,7 @@ runtimes.runtimeMap.forEach((runtime, databaseName) => {
201
201
  }
202
202
  `).malloyResultMatches(runtime, { 'n.n': 1, 'n.c': 1 });
203
203
  });
204
- it.skip(`nest dimension only - ${databaseName}`, async () => {
204
+ it(`nest dimension only - ${databaseName}`, async () => {
205
205
  await expect(`
206
206
  ##! experimental { scalar_lenses }
207
207
  source: x is ${databaseName}.sql("SELECT 1 AS n") extend {
@@ -210,7 +210,93 @@ runtimes.runtimeMap.forEach((runtime, databaseName) => {
210
210
  run: x -> {
211
211
  nest: n
212
212
  }
213
- `).malloyResultMatches(runtime, { n: [{ n: 1 }] });
213
+ `).malloyResultMatches(runtime, { 'n.n': 1 });
214
+ });
215
+ it(`joined dimension in middle of refinements - ${databaseName}`, async () => {
216
+ await expect(`
217
+ ##! experimental { scalar_lenses }
218
+ source: x is ${databaseName}.sql("SELECT 1 AS n") extend {
219
+ join_one: y is ${databaseName}.sql("SELECT 2 AS n") on true
220
+ view: m is { aggregate: c is count() }
221
+ }
222
+ run: x -> m + y.n + { limit: 1 }
223
+ `).malloyResultMatches(runtime, { 'n': 2, 'c': 1 });
224
+ });
225
+ it(`nest joined dimension refined - ${databaseName}`, async () => {
226
+ await expect(`
227
+ ##! experimental { scalar_lenses }
228
+ source: x is ${databaseName}.sql("SELECT 1 AS n") extend {
229
+ join_one: y is ${databaseName}.sql("SELECT 1 AS n") on true
230
+ view: m is { aggregate: c is count() }
231
+ }
232
+ run: x -> {
233
+ nest: y.n + { limit: 1 }
234
+ }
235
+ `).malloyResultMatches(runtime, { 'n.n': 1 });
236
+ });
237
+ it(`joined dimension refined - ${databaseName}`, async () => {
238
+ await expect(`
239
+ ##! experimental { scalar_lenses }
240
+ source: x is ${databaseName}.sql("SELECT 1 AS n") extend {
241
+ join_one: y is ${databaseName}.sql("SELECT 2 AS n") on true
242
+ view: m is { aggregate: c is count() }
243
+ }
244
+ run: x -> y.n + { limit: 1 }
245
+ `).malloyResultMatches(runtime, { 'n': 2 });
246
+ });
247
+ it(`nest joined dimension bare - ${databaseName}`, async () => {
248
+ await expect(`
249
+ ##! experimental { scalar_lenses }
250
+ source: x is ${databaseName}.sql("SELECT 1 AS n") extend {
251
+ join_one: y is ${databaseName}.sql("SELECT 2 AS n") on true
252
+ view: m is { aggregate: c is count() }
253
+ }
254
+ run: x -> {
255
+ nest: y.n
256
+ }
257
+ `).malloyResultMatches(runtime, { 'n.n': 2 });
258
+ });
259
+ it(`joined dimension bare - ${databaseName}`, async () => {
260
+ await expect(`
261
+ ##! experimental { scalar_lenses }
262
+ source: x is ${databaseName}.sql("SELECT 1 AS n") extend {
263
+ join_one: y is ${databaseName}.sql("SELECT 2 AS n") on true
264
+ view: m is { aggregate: c is count() }
265
+ }
266
+ run: x -> y.n
267
+ `).malloyResultMatches(runtime, { 'n': 2 });
268
+ });
269
+ it(`joined dimension nest refinement - ${databaseName}`, async () => {
270
+ await expect(`
271
+ ##! experimental { scalar_lenses }
272
+ source: x is ${databaseName}.sql("SELECT 1 AS n") extend {
273
+ join_one: y is ${databaseName}.sql("SELECT 2 AS n") on true
274
+ view: m is { aggregate: c is count() }
275
+ }
276
+ run: x -> { nest: m + y.n }
277
+ `).malloyResultMatches(runtime, { 'm.c': 1, 'm.n': 2 });
278
+ });
279
+ it.skip(`nest measure only in second stage - ${databaseName}`, async () => {
280
+ await expect(`
281
+ ##! experimental { scalar_lenses }
282
+ source: x is ${databaseName}.sql("SELECT 1 AS n") extend {
283
+ view: m is { aggregate: c is count() }
284
+ }
285
+ run: x -> m -> {
286
+ nest: c
287
+ }
288
+ `).malloyResultMatches(runtime, { 'm.c': 1 });
289
+ });
290
+ it(`nest dimension only in refinement - ${databaseName}`, async () => {
291
+ await expect(`
292
+ ##! experimental { scalar_lenses }
293
+ source: x is ${databaseName}.sql("SELECT 1 AS n") extend {
294
+ view: m is { aggregate: c is count() }
295
+ }
296
+ run: x -> m + {
297
+ nest: n
298
+ }
299
+ `).malloyResultMatches(runtime, { 'n.n': 1, 'c': 1 });
214
300
  });
215
301
  it(`view dimension only - ${databaseName}`, async () => {
216
302
  await expect(`
@@ -221,6 +307,16 @@ runtimes.runtimeMap.forEach((runtime, databaseName) => {
221
307
  run: x -> m
222
308
  `).malloyResultMatches(runtime, { n: 1 });
223
309
  });
310
+ it(`view join dimension only - ${databaseName}`, async () => {
311
+ await expect(`
312
+ ##! experimental { scalar_lenses }
313
+ source: x is ${databaseName}.sql("SELECT 1 AS n") extend {
314
+ join_one: y is ${databaseName}.sql("SELECT 2 AS n") on true
315
+ view: m is y.n
316
+ }
317
+ run: x -> m
318
+ `).malloyResultMatches(runtime, { n: 2 });
319
+ });
224
320
  it(`run dimension only - ${databaseName}`, async () => {
225
321
  await expect(`
226
322
  ##! experimental { scalar_lenses }
@@ -1 +1 @@
1
- {"version":3,"file":"lenses.spec.js","sourceRoot":"","sources":["../../../src/databases/all/lenses.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lenses.spec.js","sourceRoot":"","sources":["../../../src/databases/all/lenses.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.101-dev231107220340",
22
- "@malloydata/db-duckdb": "^0.0.101-dev231107220340",
23
- "@malloydata/db-postgres": "^0.0.101-dev231107220340",
24
- "@malloydata/malloy": "^0.0.101-dev231107220340",
25
- "@malloydata/render": "^0.0.101-dev231107220340",
21
+ "@malloydata/db-bigquery": "^0.0.101-dev231109201517",
22
+ "@malloydata/db-duckdb": "^0.0.101-dev231109201517",
23
+ "@malloydata/db-postgres": "^0.0.101-dev231109201517",
24
+ "@malloydata/malloy": "^0.0.101-dev231109201517",
25
+ "@malloydata/render": "^0.0.101-dev231109201517",
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.101-dev231107220340"
34
+ "version": "0.0.101-dev231109201517"
35
35
  }
@@ -119,7 +119,7 @@ runtimes.runtimeMap.forEach((runtime, databaseName) => {
119
119
  run: x -> { group_by: n } + c
120
120
  `).malloyResultMatches(runtime, {n: 1, c: 1});
121
121
  });
122
- it(`dimension plus literal view - ${databaseName}`, async () => {
122
+ it(`measure plus literal view - ${databaseName}`, async () => {
123
123
  await expect(`
124
124
  ##! experimental { scalar_lenses }
125
125
  source: x is ${databaseName}.sql("SELECT 1 AS n") extend {
@@ -204,7 +204,7 @@ runtimes.runtimeMap.forEach((runtime, databaseName) => {
204
204
  }
205
205
  `).malloyResultMatches(runtime, {'n.n': 1, 'n.c': 1});
206
206
  });
207
- it.skip(`nest dimension only - ${databaseName}`, async () => {
207
+ it(`nest dimension only - ${databaseName}`, async () => {
208
208
  await expect(`
209
209
  ##! experimental { scalar_lenses }
210
210
  source: x is ${databaseName}.sql("SELECT 1 AS n") extend {
@@ -213,7 +213,93 @@ runtimes.runtimeMap.forEach((runtime, databaseName) => {
213
213
  run: x -> {
214
214
  nest: n
215
215
  }
216
- `).malloyResultMatches(runtime, {n: [{n: 1}]});
216
+ `).malloyResultMatches(runtime, {'n.n': 1});
217
+ });
218
+ it(`joined dimension in middle of refinements - ${databaseName}`, async () => {
219
+ await expect(`
220
+ ##! experimental { scalar_lenses }
221
+ source: x is ${databaseName}.sql("SELECT 1 AS n") extend {
222
+ join_one: y is ${databaseName}.sql("SELECT 2 AS n") on true
223
+ view: m is { aggregate: c is count() }
224
+ }
225
+ run: x -> m + y.n + { limit: 1 }
226
+ `).malloyResultMatches(runtime, {'n': 2, 'c': 1});
227
+ });
228
+ it(`nest joined dimension refined - ${databaseName}`, async () => {
229
+ await expect(`
230
+ ##! experimental { scalar_lenses }
231
+ source: x is ${databaseName}.sql("SELECT 1 AS n") extend {
232
+ join_one: y is ${databaseName}.sql("SELECT 1 AS n") on true
233
+ view: m is { aggregate: c is count() }
234
+ }
235
+ run: x -> {
236
+ nest: y.n + { limit: 1 }
237
+ }
238
+ `).malloyResultMatches(runtime, {'n.n': 1});
239
+ });
240
+ it(`joined dimension refined - ${databaseName}`, async () => {
241
+ await expect(`
242
+ ##! experimental { scalar_lenses }
243
+ source: x is ${databaseName}.sql("SELECT 1 AS n") extend {
244
+ join_one: y is ${databaseName}.sql("SELECT 2 AS n") on true
245
+ view: m is { aggregate: c is count() }
246
+ }
247
+ run: x -> y.n + { limit: 1 }
248
+ `).malloyResultMatches(runtime, {'n': 2});
249
+ });
250
+ it(`nest joined dimension bare - ${databaseName}`, async () => {
251
+ await expect(`
252
+ ##! experimental { scalar_lenses }
253
+ source: x is ${databaseName}.sql("SELECT 1 AS n") extend {
254
+ join_one: y is ${databaseName}.sql("SELECT 2 AS n") on true
255
+ view: m is { aggregate: c is count() }
256
+ }
257
+ run: x -> {
258
+ nest: y.n
259
+ }
260
+ `).malloyResultMatches(runtime, {'n.n': 2});
261
+ });
262
+ it(`joined dimension bare - ${databaseName}`, async () => {
263
+ await expect(`
264
+ ##! experimental { scalar_lenses }
265
+ source: x is ${databaseName}.sql("SELECT 1 AS n") extend {
266
+ join_one: y is ${databaseName}.sql("SELECT 2 AS n") on true
267
+ view: m is { aggregate: c is count() }
268
+ }
269
+ run: x -> y.n
270
+ `).malloyResultMatches(runtime, {'n': 2});
271
+ });
272
+ it(`joined dimension nest refinement - ${databaseName}`, async () => {
273
+ await expect(`
274
+ ##! experimental { scalar_lenses }
275
+ source: x is ${databaseName}.sql("SELECT 1 AS n") extend {
276
+ join_one: y is ${databaseName}.sql("SELECT 2 AS n") on true
277
+ view: m is { aggregate: c is count() }
278
+ }
279
+ run: x -> { nest: m + y.n }
280
+ `).malloyResultMatches(runtime, {'m.c': 1, 'm.n': 2});
281
+ });
282
+ it.skip(`nest measure only in second stage - ${databaseName}`, async () => {
283
+ await expect(`
284
+ ##! experimental { scalar_lenses }
285
+ source: x is ${databaseName}.sql("SELECT 1 AS n") extend {
286
+ view: m is { aggregate: c is count() }
287
+ }
288
+ run: x -> m -> {
289
+ nest: c
290
+ }
291
+ `).malloyResultMatches(runtime, {'m.c': 1});
292
+ });
293
+ it(`nest dimension only in refinement - ${databaseName}`, async () => {
294
+ await expect(`
295
+ ##! experimental { scalar_lenses }
296
+ source: x is ${databaseName}.sql("SELECT 1 AS n") extend {
297
+ view: m is { aggregate: c is count() }
298
+ }
299
+ run: x -> m + {
300
+ nest: n
301
+ }
302
+ `).malloyResultMatches(runtime, {'n.n': 1, 'c': 1});
217
303
  });
218
304
  it(`view dimension only - ${databaseName}`, async () => {
219
305
  await expect(`
@@ -224,6 +310,16 @@ runtimes.runtimeMap.forEach((runtime, databaseName) => {
224
310
  run: x -> m
225
311
  `).malloyResultMatches(runtime, {n: 1});
226
312
  });
313
+ it(`view join dimension only - ${databaseName}`, async () => {
314
+ await expect(`
315
+ ##! experimental { scalar_lenses }
316
+ source: x is ${databaseName}.sql("SELECT 1 AS n") extend {
317
+ join_one: y is ${databaseName}.sql("SELECT 2 AS n") on true
318
+ view: m is y.n
319
+ }
320
+ run: x -> m
321
+ `).malloyResultMatches(runtime, {n: 2});
322
+ });
227
323
  it(`run dimension only - ${databaseName}`, async () => {
228
324
  await expect(`
229
325
  ##! experimental { scalar_lenses }