pqb 0.7.2 → 0.7.3
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/CHANGELOG.md +6 -0
- package/dist/index.d.ts +22 -2
- package/dist/index.esm.js +5 -4
- package/dist/index.esm.js.map +1 -1
- package/dist/index.js +5 -4
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/src/columnSchema/columnType.test.ts +2 -1
- package/src/columnSchema/columnTypes.ts +4 -2
- package/src/db.test.ts +4 -4
- package/src/queryMethods/json.test.ts +3 -3
- package/src/queryMethods/log.test.ts +12 -1
- package/src/test-utils/test-utils.ts +1 -0
package/package.json
CHANGED
|
@@ -142,6 +142,7 @@ describe('column base', () => {
|
|
|
142
142
|
adapter,
|
|
143
143
|
columnTypes: {
|
|
144
144
|
...columnTypes,
|
|
145
|
+
text: (min = 0, max = Infinity) => columnTypes.text(min, max),
|
|
145
146
|
numberTimestamp: () => numberTimestamp,
|
|
146
147
|
dateTimestamp: () => dateTimestamp,
|
|
147
148
|
},
|
|
@@ -291,7 +292,7 @@ describe('column base', () => {
|
|
|
291
292
|
describe('timestamp().asDate()', () => {
|
|
292
293
|
it('should parse and encode timestamp as a number', async () => {
|
|
293
294
|
columnTypes
|
|
294
|
-
.text()
|
|
295
|
+
.text(0, 100)
|
|
295
296
|
.encode((input: number) => input)
|
|
296
297
|
.parse((text) => parseInt(text))
|
|
297
298
|
.as(columnTypes.integer());
|
|
@@ -98,6 +98,8 @@ export const getColumnTypes = <
|
|
|
98
98
|
return fn(types);
|
|
99
99
|
};
|
|
100
100
|
|
|
101
|
+
const text = (min: number, max: number) => new TextColumn().min(min).max(max);
|
|
102
|
+
|
|
101
103
|
export const columnTypes = {
|
|
102
104
|
smallint: () => new SmallIntColumn(),
|
|
103
105
|
integer: () => new IntegerColumn(),
|
|
@@ -126,8 +128,8 @@ export const columnTypes = {
|
|
|
126
128
|
new VarCharColumn(limit),
|
|
127
129
|
char: <Limit extends number | undefined = undefined>(limit?: Limit) =>
|
|
128
130
|
new CharColumn(limit),
|
|
129
|
-
text
|
|
130
|
-
string:
|
|
131
|
+
text,
|
|
132
|
+
string: text,
|
|
131
133
|
bytea: () => new ByteaColumn(),
|
|
132
134
|
date: () => new DateColumn(),
|
|
133
135
|
timestamp: <Precision extends number | undefined = undefined>(
|
package/src/db.test.ts
CHANGED
|
@@ -100,7 +100,7 @@ describe('db', () => {
|
|
|
100
100
|
|
|
101
101
|
expect(() =>
|
|
102
102
|
db('table', (t) => ({
|
|
103
|
-
name: t.text(),
|
|
103
|
+
name: t.text(0, 100),
|
|
104
104
|
})),
|
|
105
105
|
).toThrow(`Table table has no primary key`);
|
|
106
106
|
});
|
|
@@ -110,7 +110,7 @@ describe('db', () => {
|
|
|
110
110
|
|
|
111
111
|
expect(() =>
|
|
112
112
|
db('table', (t) => ({
|
|
113
|
-
name: t.text(),
|
|
113
|
+
name: t.text(0, 100),
|
|
114
114
|
})),
|
|
115
115
|
).toThrow(`Table table has no primary key`);
|
|
116
116
|
});
|
|
@@ -131,7 +131,7 @@ describe('db', () => {
|
|
|
131
131
|
});
|
|
132
132
|
|
|
133
133
|
db('table', (t) => ({
|
|
134
|
-
name: t.text(),
|
|
134
|
+
name: t.text(0, 100),
|
|
135
135
|
}));
|
|
136
136
|
|
|
137
137
|
expect(logger.warn).toBeCalledWith('Table table has no primary key');
|
|
@@ -147,7 +147,7 @@ describe('db', () => {
|
|
|
147
147
|
});
|
|
148
148
|
|
|
149
149
|
db('table', (t) => ({
|
|
150
|
-
name: t.text(),
|
|
150
|
+
name: t.text(0, 100),
|
|
151
151
|
}));
|
|
152
152
|
|
|
153
153
|
expect(logger.warn).not.toBeCalled();
|
|
@@ -306,7 +306,7 @@ describe('json methods', () => {
|
|
|
306
306
|
const q = User.all();
|
|
307
307
|
|
|
308
308
|
const query = q.jsonPathQuery(
|
|
309
|
-
columnTypes.text(),
|
|
309
|
+
columnTypes.text(0, 100),
|
|
310
310
|
'data',
|
|
311
311
|
'$.name',
|
|
312
312
|
'name',
|
|
@@ -332,7 +332,7 @@ describe('json methods', () => {
|
|
|
332
332
|
const q = User.all();
|
|
333
333
|
|
|
334
334
|
const query = q.jsonPathQuery(
|
|
335
|
-
columnTypes.text(),
|
|
335
|
+
columnTypes.text(0, 100),
|
|
336
336
|
'data',
|
|
337
337
|
'$.name',
|
|
338
338
|
'name',
|
|
@@ -357,7 +357,7 @@ describe('json methods', () => {
|
|
|
357
357
|
const q = User.all();
|
|
358
358
|
|
|
359
359
|
const query = q.jsonPathQuery(
|
|
360
|
-
columnTypes.array(columnTypes.text()),
|
|
360
|
+
columnTypes.array(columnTypes.text(0, 100)),
|
|
361
361
|
q.jsonSet('data', ['tags'], ['tag']),
|
|
362
362
|
'$.tags',
|
|
363
363
|
'tags',
|
|
@@ -49,9 +49,15 @@ describe('query log', () => {
|
|
|
49
49
|
const logger = {
|
|
50
50
|
log: jest.fn(),
|
|
51
51
|
error: jest.fn(),
|
|
52
|
+
warn: noop,
|
|
52
53
|
};
|
|
53
54
|
|
|
54
|
-
const db = createDb({
|
|
55
|
+
const db = createDb({
|
|
56
|
+
adapter,
|
|
57
|
+
columnTypes,
|
|
58
|
+
log: true,
|
|
59
|
+
logger,
|
|
60
|
+
});
|
|
55
61
|
|
|
56
62
|
await db('user').where({ name: 'name' });
|
|
57
63
|
|
|
@@ -72,6 +78,7 @@ describe('query log', () => {
|
|
|
72
78
|
const logger = {
|
|
73
79
|
log: jest.fn(),
|
|
74
80
|
error: jest.fn(),
|
|
81
|
+
warn: noop,
|
|
75
82
|
};
|
|
76
83
|
|
|
77
84
|
const db = createDb({
|
|
@@ -96,6 +103,7 @@ describe('query log', () => {
|
|
|
96
103
|
const logger = {
|
|
97
104
|
log: jest.fn(),
|
|
98
105
|
error: jest.fn(),
|
|
106
|
+
warn: noop,
|
|
99
107
|
};
|
|
100
108
|
|
|
101
109
|
const db = createDb({ adapter, columnTypes, log: true, logger });
|
|
@@ -121,6 +129,7 @@ describe('query log', () => {
|
|
|
121
129
|
const logger = {
|
|
122
130
|
log: jest.fn(),
|
|
123
131
|
error: jest.fn(),
|
|
132
|
+
warn: noop,
|
|
124
133
|
};
|
|
125
134
|
|
|
126
135
|
const db = createDb({
|
|
@@ -147,6 +156,7 @@ describe('query log', () => {
|
|
|
147
156
|
const logger = {
|
|
148
157
|
log: jest.fn(),
|
|
149
158
|
error: jest.fn(),
|
|
159
|
+
warn: noop,
|
|
150
160
|
};
|
|
151
161
|
|
|
152
162
|
const db = createDb({
|
|
@@ -175,6 +185,7 @@ describe('query log', () => {
|
|
|
175
185
|
const logger = {
|
|
176
186
|
log: jest.fn(),
|
|
177
187
|
error: jest.fn(),
|
|
188
|
+
warn: noop,
|
|
178
189
|
};
|
|
179
190
|
|
|
180
191
|
const db = createDb({
|