@malloydata/malloy-tests 0.0.98-dev231026204034 → 0.0.98-dev231026204054

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.
@@ -22,6 +22,7 @@
22
22
  * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
23
23
  */
24
24
  Object.defineProperty(exports, "__esModule", { value: true });
25
+ /* eslint-disable no-console */
25
26
  const runtimes_1 = require("../../runtimes");
26
27
  const util_1 = require("../../util");
27
28
  require("../../util/db-jest-matchers");
@@ -108,12 +109,31 @@ describe('Postgres tests', () => {
108
109
  zone,
109
110
  });
110
111
  test('can cast TIMESTAMPTZ to timestamp', async () => {
111
- await expect(`run: duckdb.sql("""
112
+ await expect(`run: postgres.sql("""
112
113
  SELECT TIMESTAMPTZ '2020-02-20 00:00:00 ${zone}' as t_tstz
113
114
  """) -> {
114
115
  select: mex_220 is t_tstz::timestamp
115
116
  }`).malloyResultMatches(runtime, { mex_220: zone_2020.toJSDate() });
116
117
  });
117
118
  });
119
+ describe('numbers', () => {
120
+ it.each([
121
+ 'SMALLINT',
122
+ 'INTEGER',
123
+ 'BIGINT',
124
+ 'DECIMAL',
125
+ 'NUMERIC',
126
+ 'REAL',
127
+ 'DOUBLE PRECISION',
128
+ ])('supports %s', async (sqlType) => {
129
+ const result = await runtime
130
+ .loadQuery(`run: postgres.sql("SELECT 10::${sqlType} as d")`)
131
+ .run();
132
+ const field = result.data.field.allFields[0];
133
+ expect(field.isAtomicField()).toBe(true);
134
+ expect(field.isNumber()).toBe(true);
135
+ expect(result.data.value[0]['d']).toEqual(10);
136
+ });
137
+ });
118
138
  });
119
139
  //# sourceMappingURL=postgres.spec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"postgres.spec.js","sourceRoot":"","sources":["../../../src/databases/postgres/postgres.spec.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;;AAKH,6CAA2C;AAE3C,qCAAuD;AACvD,uCAAqC;AACrC,iCAA+B;AAE/B,MAAM,CAAC,QAAQ,CAAC,GAAG,IAAA,kCAA2B,EAAC,CAAC,UAAU,CAAC,CAAC,CAAC;AAE7D,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;IAC9B,MAAM,WAAW,GAAG,IAAI,sBAAW,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;IAClD,MAAM,OAAO,GAAG,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACvD,IAAI,OAAO,KAAK,SAAS,EAAE;QACzB,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;KAC3C;IAED,8EAA8E;IAC9E,SAAS,CAAC,KAAK,IAAI,EAAE;QACnB,MAAM,OAAO,CAAC,UAAU,CAAC,MAAM,CAC7B,4CAA4C,CAC7C,CAAC;QACF,MAAM,OAAO,CAAC,GAAG,CAAC;YAChB,OAAO,CAAC,UAAU,CAAC,MAAM,CACvB,sFAAsF,CACvF;YACD,OAAO,CAAC,UAAU,CAAC,MAAM,CACvB,mEAAmE,CACpE;SACF,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,KAAK,IAAI,EAAE;QAClB,MAAM,WAAW,CAAC,QAAQ,EAAE,CAAC;IAC/B,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kBAAkB,EAAE,KAAK,IAAI,EAAE;QAChC,MAAM,MAAM,CACV,qDAAqD,CACtD,CAAC,mBAAmB,CAAC,OAAO,EAAE,EAAC,CAAC,EAAE,CAAC,EAAC,CAAC,CAAC;IACzC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yEAAyE,EAAE,KAAK,IAAI,EAAE;QACvF,MAAM,MAAM,CAAC;;KAEZ,CAAC,CAAC,mBAAmB,CAAC,OAAO,EAAE,EAAC,UAAU,EAAE,CAAC,EAAC,CAAC,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0CAA0C,EAAE,KAAK,IAAI,EAAE;QACxD,MAAM,MAAM,CAAC;;;;;;GAMd,CAAC,CAAC,mBAAmB,CAAC,OAAO,EAAE,EAAC,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAC,CAAC,CAAC;IACxD,CAAC,CAAC,CAAC;IAEH,KAAK,UAAU,SAAS,CAAC,EAAW,EAAE,EAAU;QAC9C,IAAI;YACF,MAAM,UAAU,GAAG,MAAM,EAAE;iBACxB,SAAS,CAAC,sCAAsC,EAAE,IAAI,CAAC;iBACvD,GAAG,EAAE,CAAC;YACT,MAAM,GAAG,GAAG,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,KAAK,CAAC;YACjD,OAAO,GAAG,KAAK,CAAC,CAAC;SAClB;QAAC,OAAO,CAAC,EAAE;YACV,OAAO,KAAK,CAAC;SACd;IACH,CAAC;IAED,EAAE,CAAC,qDAAqD,EAAE,KAAK,IAAI,EAAE;QACnE,IAAI,MAAM,SAAS,CAAC,OAAO,EAAE,2BAA2B,CAAC,EAAE;YACzD,MAAM,MAAM,CAAC;;OAEZ,CAAC,CAAC,mBAAmB,CAAC,OAAO,EAAE,EAAC,GAAG,EAAE,CAAC,EAAC,CAAC,CAAC;SAC3C;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iDAAiD,EAAE,KAAK,IAAI,EAAE;QAC/D,IAAI,MAAM,SAAS,CAAC,OAAO,EAAE,uCAAuC,CAAC,EAAE;YACrE,MAAM,MAAM,CAAC;;OAEZ,CAAC,CAAC,mBAAmB,CAAC,OAAO,EAAE,EAAC,GAAG,EAAE,CAAC,EAAC,CAAC,CAAC;SAC3C;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yBAAyB,EAAE,KAAK,IAAI,EAAE;QACvC,MAAM,MAAM,GAAG,MAAM,OAAO;aACzB,SAAS,CAAC,yDAAyD,CAAC;aACpE,GAAG,EAAE,CAAC;QACT,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;IACvD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;QACjD,MAAM,MAAM,CACV,6EAA6E,CAC9E,CAAC,mBAAmB,CAAC,OAAO,EAAE,EAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAC,CAAC,CAAC;IACzD,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,MAAM,EAAE,GAAG,EAAE;QACpB,MAAM,IAAI,GAAG,qBAAqB,CAAC,CAAC,gBAAgB;QACpD,MAAM,SAAS,GAAG,gBAAQ,CAAC,UAAU,CAAC;YACpC,IAAI,EAAE,IAAI;YACV,KAAK,EAAE,CAAC;YACR,GAAG,EAAE,EAAE;YACP,IAAI,EAAE,CAAC;YACP,MAAM,EAAE,CAAC;YACT,MAAM,EAAE,CAAC;YACT,IAAI;SACL,CAAC,CAAC;QACH,IAAI,CAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;YACnD,MAAM,MAAM,CACV;wDACgD,IAAI;;;YAGhD,CACL,CAAC,mBAAmB,CAAC,OAAO,EAAE,EAAC,OAAO,EAAE,SAAS,CAAC,QAAQ,EAAE,EAAC,CAAC,CAAC;QAClE,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"postgres.spec.js","sourceRoot":"","sources":["../../../src/databases/postgres/postgres.spec.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;;AAEH,+BAA+B;AAE/B,6CAA2C;AAE3C,qCAAuD;AACvD,uCAAqC;AACrC,iCAA+B;AAE/B,MAAM,CAAC,QAAQ,CAAC,GAAG,IAAA,kCAA2B,EAAC,CAAC,UAAU,CAAC,CAAC,CAAC;AAE7D,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;IAC9B,MAAM,WAAW,GAAG,IAAI,sBAAW,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;IAClD,MAAM,OAAO,GAAG,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACvD,IAAI,OAAO,KAAK,SAAS,EAAE;QACzB,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;KAC3C;IAED,8EAA8E;IAC9E,SAAS,CAAC,KAAK,IAAI,EAAE;QACnB,MAAM,OAAO,CAAC,UAAU,CAAC,MAAM,CAC7B,4CAA4C,CAC7C,CAAC;QACF,MAAM,OAAO,CAAC,GAAG,CAAC;YAChB,OAAO,CAAC,UAAU,CAAC,MAAM,CACvB,sFAAsF,CACvF;YACD,OAAO,CAAC,UAAU,CAAC,MAAM,CACvB,mEAAmE,CACpE;SACF,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,KAAK,IAAI,EAAE;QAClB,MAAM,WAAW,CAAC,QAAQ,EAAE,CAAC;IAC/B,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kBAAkB,EAAE,KAAK,IAAI,EAAE;QAChC,MAAM,MAAM,CACV,qDAAqD,CACtD,CAAC,mBAAmB,CAAC,OAAO,EAAE,EAAC,CAAC,EAAE,CAAC,EAAC,CAAC,CAAC;IACzC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yEAAyE,EAAE,KAAK,IAAI,EAAE;QACvF,MAAM,MAAM,CAAC;;KAEZ,CAAC,CAAC,mBAAmB,CAAC,OAAO,EAAE,EAAC,UAAU,EAAE,CAAC,EAAC,CAAC,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0CAA0C,EAAE,KAAK,IAAI,EAAE;QACxD,MAAM,MAAM,CAAC;;;;;;GAMd,CAAC,CAAC,mBAAmB,CAAC,OAAO,EAAE,EAAC,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAC,CAAC,CAAC;IACxD,CAAC,CAAC,CAAC;IAEH,KAAK,UAAU,SAAS,CAAC,EAAW,EAAE,EAAU;QAC9C,IAAI;YACF,MAAM,UAAU,GAAG,MAAM,EAAE;iBACxB,SAAS,CAAC,sCAAsC,EAAE,IAAI,CAAC;iBACvD,GAAG,EAAE,CAAC;YACT,MAAM,GAAG,GAAG,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,KAAK,CAAC;YACjD,OAAO,GAAG,KAAK,CAAC,CAAC;SAClB;QAAC,OAAO,CAAC,EAAE;YACV,OAAO,KAAK,CAAC;SACd;IACH,CAAC;IAED,EAAE,CAAC,qDAAqD,EAAE,KAAK,IAAI,EAAE;QACnE,IAAI,MAAM,SAAS,CAAC,OAAO,EAAE,2BAA2B,CAAC,EAAE;YACzD,MAAM,MAAM,CAAC;;OAEZ,CAAC,CAAC,mBAAmB,CAAC,OAAO,EAAE,EAAC,GAAG,EAAE,CAAC,EAAC,CAAC,CAAC;SAC3C;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iDAAiD,EAAE,KAAK,IAAI,EAAE;QAC/D,IAAI,MAAM,SAAS,CAAC,OAAO,EAAE,uCAAuC,CAAC,EAAE;YACrE,MAAM,MAAM,CAAC;;OAEZ,CAAC,CAAC,mBAAmB,CAAC,OAAO,EAAE,EAAC,GAAG,EAAE,CAAC,EAAC,CAAC,CAAC;SAC3C;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yBAAyB,EAAE,KAAK,IAAI,EAAE;QACvC,MAAM,MAAM,GAAG,MAAM,OAAO;aACzB,SAAS,CAAC,yDAAyD,CAAC;aACpE,GAAG,EAAE,CAAC;QACT,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;IACvD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;QACjD,MAAM,MAAM,CACV,6EAA6E,CAC9E,CAAC,mBAAmB,CAAC,OAAO,EAAE,EAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAC,CAAC,CAAC;IACzD,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,MAAM,EAAE,GAAG,EAAE;QACpB,MAAM,IAAI,GAAG,qBAAqB,CAAC,CAAC,gBAAgB;QACpD,MAAM,SAAS,GAAG,gBAAQ,CAAC,UAAU,CAAC;YACpC,IAAI,EAAE,IAAI;YACV,KAAK,EAAE,CAAC;YACR,GAAG,EAAE,EAAE;YACP,IAAI,EAAE,CAAC;YACP,MAAM,EAAE,CAAC;YACT,MAAM,EAAE,CAAC;YACT,IAAI;SACL,CAAC,CAAC;QACH,IAAI,CAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;YACnD,MAAM,MAAM,CACV;wDACgD,IAAI;;;YAGhD,CACL,CAAC,mBAAmB,CAAC,OAAO,EAAE,EAAC,OAAO,EAAE,SAAS,CAAC,QAAQ,EAAE,EAAC,CAAC,CAAC;QAClE,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,SAAS,EAAE,GAAG,EAAE;QACvB,EAAE,CAAC,IAAI,CAAC;YACN,UAAU;YACV,SAAS;YACT,QAAQ;YACR,SAAS;YACT,SAAS;YACT,MAAM;YACN,kBAAkB;SACnB,CAAC,CAAC,aAAa,EAAE,KAAK,EAAC,OAAO,EAAC,EAAE;YAChC,MAAM,MAAM,GAAG,MAAM,OAAO;iBACzB,SAAS,CAAC,iCAAiC,OAAO,SAAS,CAAC;iBAC5D,GAAG,EAAE,CAAC;YACT,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;YAC7C,MAAM,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACzC,MAAM,CAAE,KAAqB,CAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACrD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAChD,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
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.98-dev231026204034",
22
- "@malloydata/db-duckdb": "^0.0.98-dev231026204034",
23
- "@malloydata/db-postgres": "^0.0.98-dev231026204034",
24
- "@malloydata/malloy": "^0.0.98-dev231026204034",
25
- "@malloydata/render": "^0.0.98-dev231026204034",
21
+ "@malloydata/db-bigquery": "^0.0.98-dev231026204054",
22
+ "@malloydata/db-duckdb": "^0.0.98-dev231026204054",
23
+ "@malloydata/db-postgres": "^0.0.98-dev231026204054",
24
+ "@malloydata/malloy": "^0.0.98-dev231026204054",
25
+ "@malloydata/render": "^0.0.98-dev231026204054",
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.98-dev231026204034"
34
+ "version": "0.0.98-dev231026204054"
35
35
  }
@@ -23,9 +23,8 @@
23
23
 
24
24
  /* eslint-disable no-console */
25
25
 
26
- import {ok} from 'assert';
27
26
  import {RuntimeList} from '../../runtimes';
28
- import {Runtime} from '@malloydata/malloy';
27
+ import {AtomicField, Runtime} from '@malloydata/malloy';
29
28
  import {describeIfDatabaseAvailable} from '../../util';
30
29
  import '../../util/db-jest-matchers';
31
30
  import {DateTime} from 'luxon';
@@ -134,7 +133,7 @@ describe('Postgres tests', () => {
134
133
  });
135
134
  test('can cast TIMESTAMPTZ to timestamp', async () => {
136
135
  await expect(
137
- `run: duckdb.sql("""
136
+ `run: postgres.sql("""
138
137
  SELECT TIMESTAMPTZ '2020-02-20 00:00:00 ${zone}' as t_tstz
139
138
  """) -> {
140
139
  select: mex_220 is t_tstz::timestamp
@@ -142,4 +141,24 @@ describe('Postgres tests', () => {
142
141
  ).malloyResultMatches(runtime, {mex_220: zone_2020.toJSDate()});
143
142
  });
144
143
  });
144
+
145
+ describe('numbers', () => {
146
+ it.each([
147
+ 'SMALLINT',
148
+ 'INTEGER',
149
+ 'BIGINT',
150
+ 'DECIMAL',
151
+ 'NUMERIC',
152
+ 'REAL',
153
+ 'DOUBLE PRECISION',
154
+ ])('supports %s', async sqlType => {
155
+ const result = await runtime
156
+ .loadQuery(`run: postgres.sql("SELECT 10::${sqlType} as d")`)
157
+ .run();
158
+ const field = result.data.field.allFields[0];
159
+ expect(field.isAtomicField()).toBe(true);
160
+ expect((field as AtomicField).isNumber()).toBe(true);
161
+ expect(result.data.value[0]['d']).toEqual(10);
162
+ });
163
+ });
145
164
  });