@malloydata/malloy-tests 0.0.68 → 0.0.69-dev230809221417
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.
- package/dist/databases/all/db_index.spec.d.ts +1 -1
- package/dist/databases/all/db_index.spec.js +116 -6
- package/dist/databases/all/db_index.spec.js.map +1 -1
- package/dist/databases/all/expr.spec.js +542 -6
- package/dist/databases/all/expr.spec.js.map +1 -1
- package/dist/databases/all/functions.spec.d.ts +1 -1
- package/dist/databases/all/functions.spec.js +745 -6
- package/dist/databases/all/functions.spec.js.map +1 -1
- package/dist/databases/all/join.spec.d.ts +1 -1
- package/dist/databases/all/join.spec.js +272 -6
- package/dist/databases/all/join.spec.js.map +1 -1
- package/dist/databases/all/nomodel.spec.d.ts +1 -1
- package/dist/databases/all/nomodel.spec.js +919 -6
- package/dist/databases/all/nomodel.spec.js.map +1 -1
- package/dist/databases/all/orderby.spec.d.ts +1 -1
- package/dist/databases/all/orderby.spec.js +187 -6
- package/dist/databases/all/orderby.spec.js.map +1 -1
- package/dist/databases/all/problems.spec.d.ts +1 -1
- package/dist/databases/all/problems.spec.js +76 -6
- package/dist/databases/all/problems.spec.js.map +1 -1
- package/dist/databases/all/sql_expressions.spec.d.ts +1 -1
- package/dist/databases/all/sql_expressions.spec.js +58 -6
- package/dist/databases/all/sql_expressions.spec.js.map +1 -1
- package/dist/databases/all/time.spec.d.ts +1 -1
- package/dist/databases/all/time.spec.js +609 -5
- package/dist/databases/all/time.spec.js.map +1 -1
- package/dist/databases/shared/test_list.js +1 -20
- package/dist/databases/shared/test_list.js.map +1 -1
- package/dist/index.d.ts +0 -8
- package/dist/index.js +1 -17
- package/dist/index.js.map +1 -1
- package/package.json +6 -6
- package/src/databases/all/db_index.spec.ts +137 -6
- package/src/databases/all/expr.spec.ts +661 -7
- package/src/databases/all/functions.spec.ts +1092 -6
- package/src/databases/all/join.spec.ts +309 -6
- package/src/databases/all/nomodel.spec.ts +1114 -7
- package/src/databases/all/orderby.spec.ts +229 -6
- package/src/databases/all/problems.spec.ts +82 -6
- package/src/databases/all/sql_expressions.spec.ts +65 -6
- package/src/databases/all/time.spec.ts +734 -5
- package/src/databases/shared/test_list.ts +1 -20
- package/src/index.ts +0 -9
- package/dist/databases/shared/db_index.d.ts +0 -3
- package/dist/databases/shared/db_index.js +0 -123
- package/dist/databases/shared/db_index.js.map +0 -1
- package/dist/databases/shared/expr.d.ts +0 -3
- package/dist/databases/shared/expr.js +0 -551
- package/dist/databases/shared/expr.js.map +0 -1
- package/dist/databases/shared/functions.d.ts +0 -3
- package/dist/databases/shared/functions.js +0 -754
- package/dist/databases/shared/functions.js.map +0 -1
- package/dist/databases/shared/join.d.ts +0 -3
- package/dist/databases/shared/join.js +0 -302
- package/dist/databases/shared/join.js.map +0 -1
- package/dist/databases/shared/nomodel.d.ts +0 -3
- package/dist/databases/shared/nomodel.js +0 -950
- package/dist/databases/shared/nomodel.js.map +0 -1
- package/dist/databases/shared/orderby.d.ts +0 -3
- package/dist/databases/shared/orderby.js +0 -217
- package/dist/databases/shared/orderby.js.map +0 -1
- package/dist/databases/shared/problems.d.ts +0 -3
- package/dist/databases/shared/problems.js +0 -106
- package/dist/databases/shared/problems.js.map +0 -1
- package/dist/databases/shared/sql_expressions.d.ts +0 -3
- package/dist/databases/shared/sql_expressions.js +0 -88
- package/dist/databases/shared/sql_expressions.js.map +0 -1
- package/dist/databases/shared/time.d.ts +0 -3
- package/dist/databases/shared/time.js +0 -640
- package/dist/databases/shared/time.js.map +0 -1
- package/src/databases/shared/db_index.ts +0 -167
- package/src/databases/shared/expr.ts +0 -695
- package/src/databases/shared/functions.ts +0 -1126
- package/src/databases/shared/join.ts +0 -340
- package/src/databases/shared/nomodel.ts +0 -1150
- package/src/databases/shared/orderby.ts +0 -260
- package/src/databases/shared/problems.ts +0 -113
- package/src/databases/shared/sql_expressions.ts +0 -96
- package/src/databases/shared/time.ts +0 -786
|
@@ -1,24 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.allDatabaseTestSets = void 0;
|
|
4
|
-
|
|
5
|
-
const expr_1 = require("./expr");
|
|
6
|
-
const functions_1 = require("./functions");
|
|
7
|
-
const join_1 = require("./join");
|
|
8
|
-
const nomodel_1 = require("./nomodel");
|
|
9
|
-
const orderby_1 = require("./orderby");
|
|
10
|
-
const problems_1 = require("./problems");
|
|
11
|
-
const sql_expressions_1 = require("./sql_expressions");
|
|
12
|
-
const time_1 = require("./time");
|
|
13
|
-
exports.allDatabaseTestSets = [
|
|
14
|
-
expr_1.exprSharedTests,
|
|
15
|
-
functions_1.functionsSharedTests,
|
|
16
|
-
db_index_1.indexSharedTests,
|
|
17
|
-
join_1.joinSharedTests,
|
|
18
|
-
nomodel_1.noModelSharedTests,
|
|
19
|
-
orderby_1.orderBySharedTests,
|
|
20
|
-
problems_1.problemsSharedTests,
|
|
21
|
-
sql_expressions_1.sqlExpressionsSharedTests,
|
|
22
|
-
time_1.timeSharedTests,
|
|
23
|
-
];
|
|
4
|
+
exports.allDatabaseTestSets = [];
|
|
24
5
|
//# sourceMappingURL=test_list.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"test_list.js","sourceRoot":"","sources":["../../../src/databases/shared/test_list.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"test_list.js","sourceRoot":"","sources":["../../../src/databases/shared/test_list.ts"],"names":[],"mappings":";;;AAIa,QAAA,mBAAmB,GAAsB,EAAE,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,10 +1,2 @@
|
|
|
1
1
|
export { allDatabaseTestSets } from './databases/shared/test_list';
|
|
2
2
|
export { RuntimeList, testRuntimeFor } from './runtimes';
|
|
3
|
-
export { exprSharedTests } from './databases/shared/expr';
|
|
4
|
-
export { indexSharedTests } from './databases/shared/db_index';
|
|
5
|
-
export { joinSharedTests } from './databases/shared/join';
|
|
6
|
-
export { noModelSharedTests } from './databases/shared/nomodel';
|
|
7
|
-
export { orderBySharedTests } from './databases/shared/orderby';
|
|
8
|
-
export { problemsSharedTests } from './databases/shared/problems';
|
|
9
|
-
export { sqlExpressionsSharedTests } from './databases/shared/sql_expressions';
|
|
10
|
-
export { timeSharedTests } from './databases/shared/time';
|
package/dist/index.js
CHANGED
|
@@ -22,26 +22,10 @@
|
|
|
22
22
|
* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
23
23
|
*/
|
|
24
24
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
25
|
-
exports.
|
|
25
|
+
exports.testRuntimeFor = exports.RuntimeList = exports.allDatabaseTestSets = void 0;
|
|
26
26
|
var test_list_1 = require("./databases/shared/test_list");
|
|
27
27
|
Object.defineProperty(exports, "allDatabaseTestSets", { enumerable: true, get: function () { return test_list_1.allDatabaseTestSets; } });
|
|
28
28
|
var runtimes_1 = require("./runtimes");
|
|
29
29
|
Object.defineProperty(exports, "RuntimeList", { enumerable: true, get: function () { return runtimes_1.RuntimeList; } });
|
|
30
30
|
Object.defineProperty(exports, "testRuntimeFor", { enumerable: true, get: function () { return runtimes_1.testRuntimeFor; } });
|
|
31
|
-
var expr_1 = require("./databases/shared/expr");
|
|
32
|
-
Object.defineProperty(exports, "exprSharedTests", { enumerable: true, get: function () { return expr_1.exprSharedTests; } });
|
|
33
|
-
var db_index_1 = require("./databases/shared/db_index");
|
|
34
|
-
Object.defineProperty(exports, "indexSharedTests", { enumerable: true, get: function () { return db_index_1.indexSharedTests; } });
|
|
35
|
-
var join_1 = require("./databases/shared/join");
|
|
36
|
-
Object.defineProperty(exports, "joinSharedTests", { enumerable: true, get: function () { return join_1.joinSharedTests; } });
|
|
37
|
-
var nomodel_1 = require("./databases/shared/nomodel");
|
|
38
|
-
Object.defineProperty(exports, "noModelSharedTests", { enumerable: true, get: function () { return nomodel_1.noModelSharedTests; } });
|
|
39
|
-
var orderby_1 = require("./databases/shared/orderby");
|
|
40
|
-
Object.defineProperty(exports, "orderBySharedTests", { enumerable: true, get: function () { return orderby_1.orderBySharedTests; } });
|
|
41
|
-
var problems_1 = require("./databases/shared/problems");
|
|
42
|
-
Object.defineProperty(exports, "problemsSharedTests", { enumerable: true, get: function () { return problems_1.problemsSharedTests; } });
|
|
43
|
-
var sql_expressions_1 = require("./databases/shared/sql_expressions");
|
|
44
|
-
Object.defineProperty(exports, "sqlExpressionsSharedTests", { enumerable: true, get: function () { return sql_expressions_1.sqlExpressionsSharedTests; } });
|
|
45
|
-
var time_1 = require("./databases/shared/time");
|
|
46
|
-
Object.defineProperty(exports, "timeSharedTests", { enumerable: true, get: function () { return time_1.timeSharedTests; } });
|
|
47
31
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;;;AAEH,0DAAiE;AAAzD,gHAAA,mBAAmB,OAAA;AAE3B,uCAAuD;AAA/C,uGAAA,WAAW,OAAA;AAAE,0GAAA,cAAc,OAAA
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;;;AAEH,0DAAiE;AAAzD,gHAAA,mBAAmB,OAAA;AAE3B,uCAAuD;AAA/C,uGAAA,WAAW,OAAA;AAAE,0GAAA,cAAc,OAAA"}
|
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.
|
|
22
|
-
"@malloydata/db-duckdb": "^0.0.
|
|
23
|
-
"@malloydata/db-postgres": "^0.0.
|
|
24
|
-
"@malloydata/malloy": "^0.0.
|
|
25
|
-
"@malloydata/render": "^0.0.
|
|
21
|
+
"@malloydata/db-bigquery": "^0.0.69-dev230809221417",
|
|
22
|
+
"@malloydata/db-duckdb": "^0.0.69-dev230809221417",
|
|
23
|
+
"@malloydata/db-postgres": "^0.0.69-dev230809221417",
|
|
24
|
+
"@malloydata/malloy": "^0.0.69-dev230809221417",
|
|
25
|
+
"@malloydata/render": "^0.0.69-dev230809221417",
|
|
26
26
|
"jsdom": "^22.1.0",
|
|
27
27
|
"luxon": "^1.26.4",
|
|
28
28
|
"madge": "^6.0.0"
|
|
@@ -31,5 +31,5 @@
|
|
|
31
31
|
"@types/jsdom": "^21.1.1",
|
|
32
32
|
"@types/luxon": "^1.26.4"
|
|
33
33
|
},
|
|
34
|
-
"version": "0.0.
|
|
34
|
+
"version": "0.0.69-dev230809221417"
|
|
35
35
|
}
|
|
@@ -26,12 +26,143 @@
|
|
|
26
26
|
|
|
27
27
|
import {RuntimeList, allDatabases} from '../../runtimes';
|
|
28
28
|
import {databasesFromEnvironmentOr} from '../../util';
|
|
29
|
-
import
|
|
29
|
+
import '../../util/db-jest-matchers';
|
|
30
30
|
|
|
31
31
|
const runtimes = new RuntimeList(databasesFromEnvironmentOr(allDatabases));
|
|
32
32
|
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
33
|
+
// No prebuilt shared model, each test is complete. Makes debugging easier.
|
|
34
|
+
afterAll(async () => {
|
|
35
|
+
await runtimes.closeAll();
|
|
36
|
+
});
|
|
37
|
+
|
|
38
|
+
runtimes.runtimeMap.forEach((runtime, databaseName) => {
|
|
39
|
+
it(`basic index - ${databaseName}`, async () => {
|
|
40
|
+
const model = await runtime.loadModel(
|
|
41
|
+
`
|
|
42
|
+
source: airports is table('malloytest.airports') {
|
|
43
|
+
}
|
|
44
|
+
`
|
|
45
|
+
);
|
|
46
|
+
let result = await model.search('airports', 'SANTA', 10);
|
|
47
|
+
|
|
48
|
+
// if (result !== undefined) {
|
|
49
|
+
// console.log(result);
|
|
50
|
+
// } else {
|
|
51
|
+
// console.log("no result");
|
|
52
|
+
// }
|
|
53
|
+
expect(result).toBeDefined();
|
|
54
|
+
if (result !== undefined) {
|
|
55
|
+
expect(result[0].fieldName).toBe('county');
|
|
56
|
+
expect(result[0].fieldValue).toBe('SANTA ROSA');
|
|
57
|
+
expect(result[0].weight).toBe(26);
|
|
58
|
+
expect(result.length).toBe(10);
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
result = await model.search('airports', 'SANTA A', 100, 'city');
|
|
62
|
+
if (result !== undefined) {
|
|
63
|
+
// console.log(result);
|
|
64
|
+
expect(result[0].fieldName).toBe('city');
|
|
65
|
+
expect(result[0].fieldValue).toBe('SANTA ANA');
|
|
66
|
+
}
|
|
67
|
+
});
|
|
68
|
+
|
|
69
|
+
it(`index value map - ${databaseName}`, async () => {
|
|
70
|
+
const model = await runtime.loadModel(
|
|
71
|
+
`
|
|
72
|
+
source: airports is table('malloytest.airports') {
|
|
73
|
+
}
|
|
74
|
+
`
|
|
75
|
+
);
|
|
76
|
+
const result = await model.searchValueMap('airports');
|
|
77
|
+
// if (result !== undefined) {
|
|
78
|
+
// console.log(result[4].values);
|
|
79
|
+
// } else {
|
|
80
|
+
// console.log("no result");
|
|
81
|
+
// }
|
|
82
|
+
expect(result).toBeDefined();
|
|
83
|
+
if (result !== undefined) {
|
|
84
|
+
expect(result[4].values[0].fieldValue).toBe('WASHINGTON');
|
|
85
|
+
expect(result[4].values[0].weight).toBe(214);
|
|
86
|
+
}
|
|
87
|
+
});
|
|
88
|
+
|
|
89
|
+
it(`index no sample rows - ${databaseName}`, async () => {
|
|
90
|
+
const result = await runtime
|
|
91
|
+
.loadQuery(
|
|
92
|
+
`
|
|
93
|
+
source: t is table('malloytest.state_facts') {
|
|
94
|
+
dimension: one is 'one'
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
query: t-> {index:one, state }
|
|
98
|
+
-> {project: fieldName, weight, fieldValue; order_by: 2 desc; where: fieldName = 'one'}
|
|
99
|
+
`
|
|
100
|
+
)
|
|
101
|
+
.run();
|
|
102
|
+
// console.log(result.data.toObject());
|
|
103
|
+
expect(result.data.path(0, 'fieldName').value).toBe('one');
|
|
104
|
+
expect(result.data.path(0, 'weight').value).toBe(51);
|
|
105
|
+
});
|
|
106
|
+
|
|
107
|
+
// bigquery doesn't support row count based sampling.
|
|
108
|
+
(databaseName === 'bigquery' ? it.skip : it)(
|
|
109
|
+
`index rows count - ${databaseName}`,
|
|
110
|
+
async () => {
|
|
111
|
+
const result = await runtime
|
|
112
|
+
.loadQuery(
|
|
113
|
+
`
|
|
114
|
+
source: t is table('malloytest.state_facts') {
|
|
115
|
+
dimension: one is 'one'
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
query: t-> {index:one, state; sample: 10 }
|
|
119
|
+
-> {project: fieldName, weight, fieldValue; order_by: 2 desc; where: fieldName = 'one'}
|
|
120
|
+
`
|
|
121
|
+
)
|
|
122
|
+
.run();
|
|
123
|
+
expect(result.data.path(0, 'fieldName').value).toBe('one');
|
|
124
|
+
expect(result.data.path(0, 'weight').value).toBe(10);
|
|
125
|
+
}
|
|
126
|
+
);
|
|
127
|
+
|
|
128
|
+
it(`index rows count - ${databaseName}`, async () => {
|
|
129
|
+
const result = await runtime
|
|
130
|
+
.loadQuery(
|
|
131
|
+
`
|
|
132
|
+
source: t is table('malloytest.flights') {
|
|
133
|
+
dimension: one is 'one'
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
query: t-> {index:one, tailnum; sample: 50% }
|
|
137
|
+
-> {project: fieldName, weight, fieldValue; order_by: 2 desc; where: fieldName = 'one'}
|
|
138
|
+
`
|
|
139
|
+
)
|
|
140
|
+
.run();
|
|
141
|
+
// console.log(result.sql);
|
|
142
|
+
// Hard to get consistent results here so just check that we get a value back.
|
|
143
|
+
//console.log(result.data.toObject());
|
|
144
|
+
expect(result.data.path(0, 'fieldName').value).toBe('one');
|
|
145
|
+
});
|
|
146
|
+
|
|
147
|
+
// it(`fanned data index - ${databaseName}`, async () => {
|
|
148
|
+
// const result = await runtime
|
|
149
|
+
// .loadModel(
|
|
150
|
+
// `
|
|
151
|
+
// source: movies is table('malloy-303216.imdb.movies') {
|
|
152
|
+
// }
|
|
153
|
+
// `
|
|
154
|
+
// )
|
|
155
|
+
// .search("movies", "Tom");
|
|
156
|
+
// // if (result !== undefined) {
|
|
157
|
+
// // console.log(result);
|
|
158
|
+
// // } else {
|
|
159
|
+
// // console.log("no result");
|
|
160
|
+
// // }
|
|
161
|
+
// expect(result).toBeDefined();
|
|
162
|
+
// if (result !== undefined) {
|
|
163
|
+
// expect(result[0].fieldName).toBe("county");
|
|
164
|
+
// expect(result[0].fieldValue).toBe("SANTA ROSA");
|
|
165
|
+
// expect(result[0].weight).toBe(26);
|
|
166
|
+
// }
|
|
167
|
+
// });
|
|
168
|
+
});
|