@expo/entity-database-adapter-knex 0.16.0 → 0.20.0
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/README.md +5 -5
- package/build/PostgresEntityDatabaseAdapter.js +7 -7
- package/build/PostgresEntityDatabaseAdapter.js.map +1 -1
- package/build/PostgresEntityDatabaseAdapterProvider.js.map +1 -1
- package/build/__integration-tests__/PostgresEntityIntegration-test.js +53 -52
- package/build/__integration-tests__/PostgresEntityIntegration-test.js.map +1 -1
- package/build/__integration-tests__/PostgresInvalidSetup-test.js +14 -13
- package/build/__integration-tests__/PostgresInvalidSetup-test.js.map +1 -1
- package/build/__integration-tests__/errors-test.js +20 -19
- package/build/__integration-tests__/errors-test.js.map +1 -1
- package/build/errors/__tests__/wrapNativePostgresCallAsync-test.d.ts +1 -0
- package/build/errors/__tests__/wrapNativePostgresCallAsync-test.js +24 -0
- package/build/errors/__tests__/wrapNativePostgresCallAsync-test.js.map +1 -0
- package/build/errors/wrapNativePostgresCallAsync.d.ts +1 -0
- package/build/errors/{wrapNativePostgresCall.js → wrapNativePostgresCallAsync.js} +9 -4
- package/build/errors/wrapNativePostgresCallAsync.js.map +1 -0
- package/build/testfixtures/ErrorsTestEntity.d.ts +4 -4
- package/build/testfixtures/ErrorsTestEntity.js +3 -3
- package/build/testfixtures/ErrorsTestEntity.js.map +1 -1
- package/build/testfixtures/InvalidTestEntity.d.ts +4 -4
- package/build/testfixtures/InvalidTestEntity.js +1 -1
- package/build/testfixtures/InvalidTestEntity.js.map +1 -1
- package/build/testfixtures/PostgresTestEntity.d.ts +4 -4
- package/build/testfixtures/PostgresTestEntity.js.map +1 -1
- package/build/testfixtures/PostgresTriggerTestEntity.d.ts +4 -4
- package/build/testfixtures/PostgresTriggerTestEntity.js.map +1 -1
- package/build/testfixtures/PostgresValidatorTestEntity.d.ts +4 -4
- package/build/testfixtures/PostgresValidatorTestEntity.js.map +1 -1
- package/package.json +3 -2
- package/src/PostgresEntityDatabaseAdapter.ts +11 -13
- package/src/PostgresEntityDatabaseAdapterProvider.ts +2 -1
- package/src/__integration-tests__/PostgresEntityIntegration-test.ts +6 -5
- package/src/__integration-tests__/PostgresInvalidSetup-test.ts +5 -4
- package/src/__integration-tests__/errors-test.ts +9 -8
- package/src/errors/__tests__/wrapNativePostgresCallAsync-test.ts +19 -0
- package/src/errors/{wrapNativePostgresCall.ts → wrapNativePostgresCallAsync.ts} +9 -4
- package/src/testfixtures/ErrorsTestEntity.ts +8 -8
- package/src/testfixtures/InvalidTestEntity.ts +6 -6
- package/src/testfixtures/PostgresTestEntity.ts +4 -4
- package/src/testfixtures/PostgresTriggerTestEntity.ts +22 -23
- package/src/testfixtures/PostgresValidatorTestEntity.ts +22 -23
- package/CHANGELOG.md +0 -192
- package/build/errors/wrapNativePostgresCall.d.ts +0 -1
- package/build/errors/wrapNativePostgresCall.js.map +0 -1
package/README.md
CHANGED
|
@@ -14,11 +14,11 @@ import { knex, Knex } from 'knex';
|
|
|
14
14
|
const knexInstance = knex({
|
|
15
15
|
client: 'pg',
|
|
16
16
|
connection: {
|
|
17
|
-
user: process.env
|
|
18
|
-
password: process.env
|
|
19
|
-
host: process.env
|
|
20
|
-
port: parseInt(process.env
|
|
21
|
-
database: process.env
|
|
17
|
+
user: process.env['PGUSER'],
|
|
18
|
+
password: process.env['PGPASSWORD'],
|
|
19
|
+
host: process.env['PGHOST'],
|
|
20
|
+
port: parseInt(nullthrows(process.env['PGPORT']), 10),
|
|
21
|
+
database: process.env['PGDATABASE'],
|
|
22
22
|
},
|
|
23
23
|
});
|
|
24
24
|
|
|
@@ -4,7 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
const entity_1 = require("@expo/entity");
|
|
7
|
-
const
|
|
7
|
+
const wrapNativePostgresCallAsync_1 = __importDefault(require("./errors/wrapNativePostgresCallAsync"));
|
|
8
8
|
class PostgresEntityDatabaseAdapter extends entity_1.EntityDatabaseAdapter {
|
|
9
9
|
getFieldTransformerMap() {
|
|
10
10
|
return new Map([
|
|
@@ -32,7 +32,7 @@ class PostgresEntityDatabaseAdapter extends entity_1.EntityDatabaseAdapter {
|
|
|
32
32
|
]);
|
|
33
33
|
}
|
|
34
34
|
async fetchManyWhereInternalAsync(queryInterface, tableName, tableField, tableValues) {
|
|
35
|
-
return await
|
|
35
|
+
return await (0, wrapNativePostgresCallAsync_1.default)(() => queryInterface
|
|
36
36
|
.select()
|
|
37
37
|
.from(tableName)
|
|
38
38
|
.whereRaw('?? = ANY(?)', [tableField, tableValues]));
|
|
@@ -84,7 +84,7 @@ class PostgresEntityDatabaseAdapter extends entity_1.EntityDatabaseAdapter {
|
|
|
84
84
|
}
|
|
85
85
|
}
|
|
86
86
|
query = this.applyQueryModifiersToQuery(query, querySelectionModifiers);
|
|
87
|
-
return await
|
|
87
|
+
return await (0, wrapNativePostgresCallAsync_1.default)(() => query);
|
|
88
88
|
}
|
|
89
89
|
async fetchManyByRawWhereClauseInternalAsync(queryInterface, tableName, rawWhereClause, bindings, querySelectionModifiers) {
|
|
90
90
|
let query = queryInterface
|
|
@@ -92,16 +92,16 @@ class PostgresEntityDatabaseAdapter extends entity_1.EntityDatabaseAdapter {
|
|
|
92
92
|
.from(tableName)
|
|
93
93
|
.whereRaw(rawWhereClause, bindings);
|
|
94
94
|
query = this.applyQueryModifiersToQuery(query, querySelectionModifiers);
|
|
95
|
-
return await
|
|
95
|
+
return await (0, wrapNativePostgresCallAsync_1.default)(() => query);
|
|
96
96
|
}
|
|
97
97
|
async insertInternalAsync(queryInterface, tableName, object) {
|
|
98
|
-
return await
|
|
98
|
+
return await (0, wrapNativePostgresCallAsync_1.default)(() => queryInterface.insert(object).into(tableName).returning('*'));
|
|
99
99
|
}
|
|
100
100
|
async updateInternalAsync(queryInterface, tableName, tableIdField, id, object) {
|
|
101
|
-
return await
|
|
101
|
+
return await (0, wrapNativePostgresCallAsync_1.default)(() => queryInterface.update(object).into(tableName).where(tableIdField, id).returning('*'));
|
|
102
102
|
}
|
|
103
103
|
async deleteInternalAsync(queryInterface, tableName, tableIdField, id) {
|
|
104
|
-
return await
|
|
104
|
+
return await (0, wrapNativePostgresCallAsync_1.default)(() => queryInterface.into(tableName).where(tableIdField, id).del());
|
|
105
105
|
}
|
|
106
106
|
}
|
|
107
107
|
exports.default = PostgresEntityDatabaseAdapter;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PostgresEntityDatabaseAdapter.js","sourceRoot":"","sources":["../src/PostgresEntityDatabaseAdapter.ts"],"names":[],"mappings":";;;;;AAAA,yCASsB;AAGtB,
|
|
1
|
+
{"version":3,"file":"PostgresEntityDatabaseAdapter.js","sourceRoot":"","sources":["../src/PostgresEntityDatabaseAdapter.ts"],"names":[],"mappings":";;;;;AAAA,yCASsB;AAGtB,uGAA+E;AAE/E,MAAqB,6BAAuC,SAAQ,8BAA8B;IACtF,sBAAsB;QAC9B,OAAO,IAAI,GAAG,CAAgC;YAC5C;gBACE,uBAAc,CAAC,IAAI;gBACnB;oBACE;;;uBAGG;oBACH,KAAK,EAAE,CAAC,GAAU,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC;iBAC3C;aACF;YACD;gBACE,4BAAmB,CAAC,IAAI;gBACxB;oBACE;;;;uBAIG;oBACH,KAAK,EAAE,CAAC,GAAgB,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;iBAC9E;aACF;SACF,CAAC,CAAC;IACL,CAAC;IAES,KAAK,CAAC,2BAA2B,CACzC,cAAoB,EACpB,SAAiB,EACjB,UAAkB,EAClB,WAA2B;QAE3B,OAAO,MAAM,IAAA,qCAA2B,EAAC,GAAG,EAAE,CAC5C,cAAc;aACX,MAAM,EAAE;aACR,IAAI,CAAC,SAAS,CAAC;aACf,QAAQ,CAAC,aAAa,EAAE,CAAC,UAAU,EAAE,WAAoB,CAAC,CAAC,CAC/D,CAAC;IACJ,CAAC;IAEO,0BAA0B,CAChC,KAAwB,EACxB,uBAAqD;QAErD,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,uBAAuB,CAAC;QAE3D,IAAI,GAAG,GAAG,KAAK,CAAC;QAEhB,IAAI,OAAO,KAAK,SAAS,EAAE;YACzB,KAAK,MAAM,oBAAoB,IAAI,OAAO,EAAE;gBAC1C,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,oBAAoB,CAAC,UAAU,EAAE,oBAAoB,CAAC,KAAK,CAAC,CAAC;aAChF;SACF;QAED,IAAI,MAAM,KAAK,SAAS,EAAE;YACxB,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;SAC1B;QAED,IAAI,KAAK,KAAK,SAAS,EAAE;YACvB,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;SACxB;QAED,OAAO,GAAG,CAAC;IACb,CAAC;IAES,KAAK,CAAC,gDAAgD,CAC9D,cAAoB,EACpB,SAAiB,EACjB,qCAA+E,EAC/E,oCAA6E,EAC7E,uBAAqD;QAErD,IAAI,KAAK,GAAG,cAAc,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAEpD,IAAI,qCAAqC,CAAC,MAAM,GAAG,CAAC,EAAE;YACpD,MAAM,WAAW,GAA2B,EAAE,CAAC;YAC/C,MAAM,4CAA4C,GAChD,qCAAqC,CAAC,MAAM,CAAC,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,UAAU,KAAK,IAAI,CAAC,CAAC;YACxF,MAAM,yCAAyC,GAC7C,qCAAqC,CAAC,MAAM,CAAC,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,UAAU,KAAK,IAAI,CAAC,CAAC;YAExF,IAAI,4CAA4C,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC3D,KAAK,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,IAAI,4CAA4C,EAAE;oBACrF,WAAW,CAAC,UAAU,CAAC,GAAG,UAAU,CAAC;iBACtC;gBACD,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;aAClC;YACD,IAAI,yCAAyC,CAAC,MAAM,GAAG,CAAC,EAAE;gBACxD,KAAK,MAAM,EAAE,UAAU,EAAE,IAAI,yCAAyC,EAAE;oBACtE,KAAK,GAAG,KAAK,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;iBACrC;aACF;SACF;QAED,IAAI,oCAAoC,CAAC,MAAM,GAAG,CAAC,EAAE;YACnD,KAAK,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE,IAAI,oCAAoC,EAAE;gBAC9E,MAAM,kBAAkB,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,KAAK,IAAI,CAAC,CAAC;gBACnF,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,EAAE;oBAC9B,OAAO,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAC,UAAU,EAAE,CAAC,GAAG,kBAAkB,CAAC,CAAC,CAAC,CAAC;oBACvE,kEAAkE;oBAClE,IAAI,kBAAkB,CAAC,MAAM,KAAK,WAAW,CAAC,MAAM,EAAE;wBACpD,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;qBACjC;gBACH,CAAC,CAAC,CAAC;aACJ;SACF;QAED,KAAK,GAAG,IAAI,CAAC,0BAA0B,CAAC,KAAK,EAAE,uBAAuB,CAAC,CAAC;QACxE,OAAO,MAAM,IAAA,qCAA2B,EAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC;IACxD,CAAC;IAES,KAAK,CAAC,sCAAsC,CACpD,cAAoB,EACpB,SAAiB,EACjB,cAAsB,EACtB,QAAwB,EACxB,uBAAqD;QAErD,IAAI,KAAK,GAAG,cAAc;aACvB,MAAM,EAAE;aACR,IAAI,CAAC,SAAS,CAAC;aACf,QAAQ,CAAC,cAAc,EAAE,QAAe,CAAC,CAAC;QAC7C,KAAK,GAAG,IAAI,CAAC,0BAA0B,CAAC,KAAK,EAAE,uBAAuB,CAAC,CAAC;QACxE,OAAO,MAAM,IAAA,qCAA2B,EAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC;IACxD,CAAC;IAES,KAAK,CAAC,mBAAmB,CACjC,cAAoB,EACpB,SAAiB,EACjB,MAAc;QAEd,OAAO,MAAM,IAAA,qCAA2B,EAAC,GAAG,EAAE,CAC5C,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAC7D,CAAC;IACJ,CAAC;IAES,KAAK,CAAC,mBAAmB,CACjC,cAAoB,EACpB,SAAiB,EACjB,YAAoB,EACpB,EAAO,EACP,MAAc;QAEd,OAAO,MAAM,IAAA,qCAA2B,EAAC,GAAG,EAAE,CAC5C,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CACrF,CAAC;IACJ,CAAC;IAES,KAAK,CAAC,mBAAmB,CACjC,cAAoB,EACpB,SAAiB,EACjB,YAAoB,EACpB,EAAO;QAEP,OAAO,MAAM,IAAA,qCAA2B,EAAC,GAAG,EAAE,CAC5C,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,CAC7D,CAAC;IACJ,CAAC;CACF;AA/JD,gDA+JC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PostgresEntityDatabaseAdapterProvider.js","sourceRoot":"","sources":["../src/PostgresEntityDatabaseAdapterProvider.ts"],"names":[],"mappings":";;;;;AAMA,oGAA4E;AAE5E,MAAqB,qCAAqC;
|
|
1
|
+
{"version":3,"file":"PostgresEntityDatabaseAdapterProvider.js","sourceRoot":"","sources":["../src/PostgresEntityDatabaseAdapterProvider.ts"],"names":[],"mappings":";;;;;AAMA,oGAA4E;AAE5E,MAAqB,qCAAqC;IAGxD,kBAAkB,CAChB,mBAAiD;QAEjD,OAAO,IAAI,uCAA6B,CAAC,mBAAmB,CAAC,CAAC;IAChE,CAAC;CACF;AARD,wDAQC"}
|
|
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
const entity_1 = require("@expo/entity");
|
|
7
7
|
const results_1 = require("@expo/results");
|
|
8
8
|
const knex_1 = require("knex");
|
|
9
|
+
const nullthrows_1 = __importDefault(require("nullthrows"));
|
|
9
10
|
const PostgresTestEntity_1 = __importDefault(require("../testfixtures/PostgresTestEntity"));
|
|
10
11
|
const PostgresTriggerTestEntity_1 = __importDefault(require("../testfixtures/PostgresTriggerTestEntity"));
|
|
11
12
|
const PostgresValidatorTestEntity_1 = __importDefault(require("../testfixtures/PostgresValidatorTestEntity"));
|
|
@@ -13,14 +14,14 @@ const createKnexIntegrationTestEntityCompanionProvider_1 = require("../testfixtu
|
|
|
13
14
|
describe('postgres entity integration', () => {
|
|
14
15
|
let knexInstance;
|
|
15
16
|
beforeAll(() => {
|
|
16
|
-
knexInstance = knex_1.knex({
|
|
17
|
+
knexInstance = (0, knex_1.knex)({
|
|
17
18
|
client: 'pg',
|
|
18
19
|
connection: {
|
|
19
|
-
user: process.env
|
|
20
|
-
password: process.env
|
|
20
|
+
user: (0, nullthrows_1.default)(process.env['PGUSER']),
|
|
21
|
+
password: (0, nullthrows_1.default)(process.env['PGPASSWORD']),
|
|
21
22
|
host: 'localhost',
|
|
22
|
-
port: parseInt(process.env
|
|
23
|
-
database: process.env
|
|
23
|
+
port: parseInt((0, nullthrows_1.default)(process.env['PGPORT']), 10),
|
|
24
|
+
database: (0, nullthrows_1.default)(process.env['PGDATABASE']),
|
|
24
25
|
},
|
|
25
26
|
});
|
|
26
27
|
});
|
|
@@ -32,8 +33,8 @@ describe('postgres entity integration', () => {
|
|
|
32
33
|
await knexInstance.destroy();
|
|
33
34
|
});
|
|
34
35
|
it('supports parallel partial updates', async () => {
|
|
35
|
-
const vc = new entity_1.ViewerContext(createKnexIntegrationTestEntityCompanionProvider_1.createKnexIntegrationTestEntityCompanionProvider(knexInstance));
|
|
36
|
-
const entity = await results_1.enforceAsyncResult(PostgresTestEntity_1.default.creator(vc).setField('name', 'hello').createAsync());
|
|
36
|
+
const vc = new entity_1.ViewerContext((0, createKnexIntegrationTestEntityCompanionProvider_1.createKnexIntegrationTestEntityCompanionProvider)(knexInstance));
|
|
37
|
+
const entity = await (0, results_1.enforceAsyncResult)(PostgresTestEntity_1.default.creator(vc).setField('name', 'hello').createAsync());
|
|
37
38
|
// update two different fields at the same time (from the same entity)
|
|
38
39
|
await Promise.all([
|
|
39
40
|
PostgresTestEntity_1.default.updater(entity).setField('hasACat', true).updateAsync(),
|
|
@@ -47,39 +48,39 @@ describe('postgres entity integration', () => {
|
|
|
47
48
|
});
|
|
48
49
|
describe('empty creates and updates', () => {
|
|
49
50
|
it('allows empty create', async () => {
|
|
50
|
-
const vc = new entity_1.ViewerContext(createKnexIntegrationTestEntityCompanionProvider_1.createKnexIntegrationTestEntityCompanionProvider(knexInstance));
|
|
51
|
-
const entity = await results_1.enforceAsyncResult(PostgresTestEntity_1.default.creator(vc).createAsync());
|
|
51
|
+
const vc = new entity_1.ViewerContext((0, createKnexIntegrationTestEntityCompanionProvider_1.createKnexIntegrationTestEntityCompanionProvider)(knexInstance));
|
|
52
|
+
const entity = await (0, results_1.enforceAsyncResult)(PostgresTestEntity_1.default.creator(vc).createAsync());
|
|
52
53
|
expect(entity.getID()).toBeTruthy();
|
|
53
54
|
});
|
|
54
55
|
it('throws knex error upon empty update', async () => {
|
|
55
|
-
const vc = new entity_1.ViewerContext(createKnexIntegrationTestEntityCompanionProvider_1.createKnexIntegrationTestEntityCompanionProvider(knexInstance));
|
|
56
|
-
const entity = await results_1.enforceAsyncResult(PostgresTestEntity_1.default.creator(vc).setField('name', 'hello').createAsync());
|
|
56
|
+
const vc = new entity_1.ViewerContext((0, createKnexIntegrationTestEntityCompanionProvider_1.createKnexIntegrationTestEntityCompanionProvider)(knexInstance));
|
|
57
|
+
const entity = await (0, results_1.enforceAsyncResult)(PostgresTestEntity_1.default.creator(vc).setField('name', 'hello').createAsync());
|
|
57
58
|
await expect(PostgresTestEntity_1.default.updater(entity).updateAsync()).rejects.toThrow();
|
|
58
59
|
});
|
|
59
60
|
it('throws error upon empty update for stub database adapter to match behavior', async () => {
|
|
60
|
-
const vc = new entity_1.ViewerContext(entity_1.createUnitTestEntityCompanionProvider());
|
|
61
|
-
const entity = await results_1.enforceAsyncResult(PostgresTestEntity_1.default.creator(vc).setField('name', 'hello').createAsync());
|
|
61
|
+
const vc = new entity_1.ViewerContext((0, entity_1.createUnitTestEntityCompanionProvider)());
|
|
62
|
+
const entity = await (0, results_1.enforceAsyncResult)(PostgresTestEntity_1.default.creator(vc).setField('name', 'hello').createAsync());
|
|
62
63
|
await expect(PostgresTestEntity_1.default.updater(entity).updateAsync()).rejects.toThrow();
|
|
63
64
|
});
|
|
64
65
|
});
|
|
65
66
|
it('supports transactions', async () => {
|
|
66
|
-
const vc1 = new entity_1.ViewerContext(createKnexIntegrationTestEntityCompanionProvider_1.createKnexIntegrationTestEntityCompanionProvider(knexInstance));
|
|
67
|
+
const vc1 = new entity_1.ViewerContext((0, createKnexIntegrationTestEntityCompanionProvider_1.createKnexIntegrationTestEntityCompanionProvider)(knexInstance));
|
|
67
68
|
// put one in the DB
|
|
68
|
-
const firstEntity = await results_1.enforceAsyncResult(PostgresTestEntity_1.default.creator(vc1).setField('name', 'hello').createAsync());
|
|
69
|
-
await results_1.enforceAsyncResult(PostgresTestEntity_1.default.loader(vc1).loadByIDAsync(firstEntity.getID()));
|
|
69
|
+
const firstEntity = await (0, results_1.enforceAsyncResult)(PostgresTestEntity_1.default.creator(vc1).setField('name', 'hello').createAsync());
|
|
70
|
+
await (0, results_1.enforceAsyncResult)(PostgresTestEntity_1.default.loader(vc1).loadByIDAsync(firstEntity.getID()));
|
|
70
71
|
const errorToThrow = new Error('Intentional error');
|
|
71
72
|
await expect(vc1.runInTransactionForDatabaseAdaptorFlavorAsync('postgres', async (queryContext) => {
|
|
72
73
|
// put another in the DB that will be rolled back due to error thrown
|
|
73
|
-
await results_1.enforceAsyncResult(PostgresTestEntity_1.default.creator(vc1, queryContext).setField('name', 'hello').createAsync());
|
|
74
|
+
await (0, results_1.enforceAsyncResult)(PostgresTestEntity_1.default.creator(vc1, queryContext).setField('name', 'hello').createAsync());
|
|
74
75
|
throw errorToThrow;
|
|
75
76
|
})).rejects.toEqual(errorToThrow);
|
|
76
|
-
const entities = await entity_1.enforceResultsAsync(PostgresTestEntity_1.default.loader(vc1).loadManyByFieldEqualingAsync('name', 'hello'));
|
|
77
|
+
const entities = await (0, entity_1.enforceResultsAsync)(PostgresTestEntity_1.default.loader(vc1).loadManyByFieldEqualingAsync('name', 'hello'));
|
|
77
78
|
expect(entities).toHaveLength(1);
|
|
78
79
|
});
|
|
79
80
|
describe('JSON fields', () => {
|
|
80
81
|
it('supports both types of array fields', async () => {
|
|
81
|
-
const vc1 = new entity_1.ViewerContext(createKnexIntegrationTestEntityCompanionProvider_1.createKnexIntegrationTestEntityCompanionProvider(knexInstance));
|
|
82
|
-
const entity = await results_1.enforceAsyncResult(PostgresTestEntity_1.default.creator(vc1)
|
|
82
|
+
const vc1 = new entity_1.ViewerContext((0, createKnexIntegrationTestEntityCompanionProvider_1.createKnexIntegrationTestEntityCompanionProvider)(knexInstance));
|
|
83
|
+
const entity = await (0, results_1.enforceAsyncResult)(PostgresTestEntity_1.default.creator(vc1)
|
|
83
84
|
.setField('stringArray', ['hello', 'world'])
|
|
84
85
|
.setField('jsonArrayField', ['hello', 'world'])
|
|
85
86
|
.createAsync());
|
|
@@ -87,18 +88,18 @@ describe('postgres entity integration', () => {
|
|
|
87
88
|
expect(entity.getField('jsonArrayField')).toEqual(['hello', 'world']);
|
|
88
89
|
});
|
|
89
90
|
it('supports object field', async () => {
|
|
90
|
-
const vc1 = new entity_1.ViewerContext(createKnexIntegrationTestEntityCompanionProvider_1.createKnexIntegrationTestEntityCompanionProvider(knexInstance));
|
|
91
|
-
const entity = await results_1.enforceAsyncResult(PostgresTestEntity_1.default.creator(vc1)
|
|
91
|
+
const vc1 = new entity_1.ViewerContext((0, createKnexIntegrationTestEntityCompanionProvider_1.createKnexIntegrationTestEntityCompanionProvider)(knexInstance));
|
|
92
|
+
const entity = await (0, results_1.enforceAsyncResult)(PostgresTestEntity_1.default.creator(vc1)
|
|
92
93
|
.setField('jsonObjectField', { hello: 'world' })
|
|
93
94
|
.createAsync());
|
|
94
95
|
expect(entity.getField('jsonObjectField')).toEqual({ hello: 'world' });
|
|
95
96
|
});
|
|
96
97
|
it('supports MaybeJSONArray field', async () => {
|
|
97
|
-
const vc1 = new entity_1.ViewerContext(createKnexIntegrationTestEntityCompanionProvider_1.createKnexIntegrationTestEntityCompanionProvider(knexInstance));
|
|
98
|
-
const entity1 = await results_1.enforceAsyncResult(PostgresTestEntity_1.default.creator(vc1)
|
|
98
|
+
const vc1 = new entity_1.ViewerContext((0, createKnexIntegrationTestEntityCompanionProvider_1.createKnexIntegrationTestEntityCompanionProvider)(knexInstance));
|
|
99
|
+
const entity1 = await (0, results_1.enforceAsyncResult)(PostgresTestEntity_1.default.creator(vc1)
|
|
99
100
|
.setField('maybeJsonArrayField', ['hello', 'world'])
|
|
100
101
|
.createAsync());
|
|
101
|
-
const entity2 = await results_1.enforceAsyncResult(PostgresTestEntity_1.default.creator(vc1)
|
|
102
|
+
const entity2 = await (0, results_1.enforceAsyncResult)(PostgresTestEntity_1.default.creator(vc1)
|
|
102
103
|
.setField('maybeJsonArrayField', { hello: 'world' })
|
|
103
104
|
.createAsync());
|
|
104
105
|
expect(entity1.getField('maybeJsonArrayField')).toEqual(['hello', 'world']);
|
|
@@ -107,18 +108,18 @@ describe('postgres entity integration', () => {
|
|
|
107
108
|
});
|
|
108
109
|
describe('conjunction field equality loading', () => {
|
|
109
110
|
it('supports single fieldValue and multiple fieldValues', async () => {
|
|
110
|
-
const vc1 = new entity_1.ViewerContext(createKnexIntegrationTestEntityCompanionProvider_1.createKnexIntegrationTestEntityCompanionProvider(knexInstance));
|
|
111
|
-
await results_1.enforceAsyncResult(PostgresTestEntity_1.default.creator(vc1)
|
|
111
|
+
const vc1 = new entity_1.ViewerContext((0, createKnexIntegrationTestEntityCompanionProvider_1.createKnexIntegrationTestEntityCompanionProvider)(knexInstance));
|
|
112
|
+
await (0, results_1.enforceAsyncResult)(PostgresTestEntity_1.default.creator(vc1)
|
|
112
113
|
.setField('name', 'hello')
|
|
113
114
|
.setField('hasACat', false)
|
|
114
115
|
.setField('hasADog', true)
|
|
115
116
|
.createAsync());
|
|
116
|
-
await results_1.enforceAsyncResult(PostgresTestEntity_1.default.creator(vc1)
|
|
117
|
+
await (0, results_1.enforceAsyncResult)(PostgresTestEntity_1.default.creator(vc1)
|
|
117
118
|
.setField('name', 'world')
|
|
118
119
|
.setField('hasACat', false)
|
|
119
120
|
.setField('hasADog', true)
|
|
120
121
|
.createAsync());
|
|
121
|
-
await results_1.enforceAsyncResult(PostgresTestEntity_1.default.creator(vc1)
|
|
122
|
+
await (0, results_1.enforceAsyncResult)(PostgresTestEntity_1.default.creator(vc1)
|
|
122
123
|
.setField('name', 'wat')
|
|
123
124
|
.setField('hasACat', false)
|
|
124
125
|
.setField('hasADog', false)
|
|
@@ -144,10 +145,10 @@ describe('postgres entity integration', () => {
|
|
|
144
145
|
expect(results2).toHaveLength(3);
|
|
145
146
|
});
|
|
146
147
|
it('supports query modifiers', async () => {
|
|
147
|
-
const vc1 = new entity_1.ViewerContext(createKnexIntegrationTestEntityCompanionProvider_1.createKnexIntegrationTestEntityCompanionProvider(knexInstance));
|
|
148
|
-
await results_1.enforceAsyncResult(PostgresTestEntity_1.default.creator(vc1).setField('name', 'a').createAsync());
|
|
149
|
-
await results_1.enforceAsyncResult(PostgresTestEntity_1.default.creator(vc1).setField('name', 'b').createAsync());
|
|
150
|
-
await results_1.enforceAsyncResult(PostgresTestEntity_1.default.creator(vc1).setField('name', 'c').createAsync());
|
|
148
|
+
const vc1 = new entity_1.ViewerContext((0, createKnexIntegrationTestEntityCompanionProvider_1.createKnexIntegrationTestEntityCompanionProvider)(knexInstance));
|
|
149
|
+
await (0, results_1.enforceAsyncResult)(PostgresTestEntity_1.default.creator(vc1).setField('name', 'a').createAsync());
|
|
150
|
+
await (0, results_1.enforceAsyncResult)(PostgresTestEntity_1.default.creator(vc1).setField('name', 'b').createAsync());
|
|
151
|
+
await (0, results_1.enforceAsyncResult)(PostgresTestEntity_1.default.creator(vc1).setField('name', 'c').createAsync());
|
|
151
152
|
const results = await PostgresTestEntity_1.default.loader(vc1)
|
|
152
153
|
.enforcing()
|
|
153
154
|
.loadManyByFieldEqualityConjunctionAsync([], {
|
|
@@ -164,20 +165,20 @@ describe('postgres entity integration', () => {
|
|
|
164
165
|
expect(results.map((e) => e.getField('name'))).toEqual(['b', 'a']);
|
|
165
166
|
});
|
|
166
167
|
it('supports null field values', async () => {
|
|
167
|
-
const vc1 = new entity_1.ViewerContext(createKnexIntegrationTestEntityCompanionProvider_1.createKnexIntegrationTestEntityCompanionProvider(knexInstance));
|
|
168
|
-
await results_1.enforceAsyncResult(PostgresTestEntity_1.default.creator(vc1)
|
|
168
|
+
const vc1 = new entity_1.ViewerContext((0, createKnexIntegrationTestEntityCompanionProvider_1.createKnexIntegrationTestEntityCompanionProvider)(knexInstance));
|
|
169
|
+
await (0, results_1.enforceAsyncResult)(PostgresTestEntity_1.default.creator(vc1)
|
|
169
170
|
.setField('name', 'a')
|
|
170
171
|
.setField('hasADog', true)
|
|
171
172
|
.createAsync());
|
|
172
|
-
await results_1.enforceAsyncResult(PostgresTestEntity_1.default.creator(vc1)
|
|
173
|
+
await (0, results_1.enforceAsyncResult)(PostgresTestEntity_1.default.creator(vc1)
|
|
173
174
|
.setField('name', 'b')
|
|
174
175
|
.setField('hasADog', true)
|
|
175
176
|
.createAsync());
|
|
176
|
-
await results_1.enforceAsyncResult(PostgresTestEntity_1.default.creator(vc1)
|
|
177
|
+
await (0, results_1.enforceAsyncResult)(PostgresTestEntity_1.default.creator(vc1)
|
|
177
178
|
.setField('name', null)
|
|
178
179
|
.setField('hasADog', true)
|
|
179
180
|
.createAsync());
|
|
180
|
-
await results_1.enforceAsyncResult(PostgresTestEntity_1.default.creator(vc1)
|
|
181
|
+
await (0, results_1.enforceAsyncResult)(PostgresTestEntity_1.default.creator(vc1)
|
|
181
182
|
.setField('name', null)
|
|
182
183
|
.setField('hasADog', false)
|
|
183
184
|
.createAsync());
|
|
@@ -205,8 +206,8 @@ describe('postgres entity integration', () => {
|
|
|
205
206
|
});
|
|
206
207
|
describe('raw where clause loading', () => {
|
|
207
208
|
it('loads by raw where clause', async () => {
|
|
208
|
-
const vc1 = new entity_1.ViewerContext(createKnexIntegrationTestEntityCompanionProvider_1.createKnexIntegrationTestEntityCompanionProvider(knexInstance));
|
|
209
|
-
await results_1.enforceAsyncResult(PostgresTestEntity_1.default.creator(vc1)
|
|
209
|
+
const vc1 = new entity_1.ViewerContext((0, createKnexIntegrationTestEntityCompanionProvider_1.createKnexIntegrationTestEntityCompanionProvider)(knexInstance));
|
|
210
|
+
await (0, results_1.enforceAsyncResult)(PostgresTestEntity_1.default.creator(vc1)
|
|
210
211
|
.setField('name', 'hello')
|
|
211
212
|
.setField('hasACat', false)
|
|
212
213
|
.setField('hasADog', true)
|
|
@@ -217,8 +218,8 @@ describe('postgres entity integration', () => {
|
|
|
217
218
|
expect(results).toHaveLength(1);
|
|
218
219
|
});
|
|
219
220
|
it('throws with invalid where clause', async () => {
|
|
220
|
-
const vc1 = new entity_1.ViewerContext(createKnexIntegrationTestEntityCompanionProvider_1.createKnexIntegrationTestEntityCompanionProvider(knexInstance));
|
|
221
|
-
await results_1.enforceAsyncResult(PostgresTestEntity_1.default.creator(vc1)
|
|
221
|
+
const vc1 = new entity_1.ViewerContext((0, createKnexIntegrationTestEntityCompanionProvider_1.createKnexIntegrationTestEntityCompanionProvider)(knexInstance));
|
|
222
|
+
await (0, results_1.enforceAsyncResult)(PostgresTestEntity_1.default.creator(vc1)
|
|
222
223
|
.setField('name', 'hello')
|
|
223
224
|
.setField('hasACat', false)
|
|
224
225
|
.setField('hasADog', true)
|
|
@@ -228,16 +229,16 @@ describe('postgres entity integration', () => {
|
|
|
228
229
|
.loadManyByRawWhereClauseAsync('invalid_column = ?', ['hello'])).rejects.toThrow();
|
|
229
230
|
});
|
|
230
231
|
it('supports query modifiers', async () => {
|
|
231
|
-
const vc1 = new entity_1.ViewerContext(createKnexIntegrationTestEntityCompanionProvider_1.createKnexIntegrationTestEntityCompanionProvider(knexInstance));
|
|
232
|
-
await results_1.enforceAsyncResult(PostgresTestEntity_1.default.creator(vc1)
|
|
232
|
+
const vc1 = new entity_1.ViewerContext((0, createKnexIntegrationTestEntityCompanionProvider_1.createKnexIntegrationTestEntityCompanionProvider)(knexInstance));
|
|
233
|
+
await (0, results_1.enforceAsyncResult)(PostgresTestEntity_1.default.creator(vc1)
|
|
233
234
|
.setField('name', 'a')
|
|
234
235
|
.setField('hasADog', true)
|
|
235
236
|
.createAsync());
|
|
236
|
-
await results_1.enforceAsyncResult(PostgresTestEntity_1.default.creator(vc1)
|
|
237
|
+
await (0, results_1.enforceAsyncResult)(PostgresTestEntity_1.default.creator(vc1)
|
|
237
238
|
.setField('name', 'b')
|
|
238
239
|
.setField('hasADog', true)
|
|
239
240
|
.createAsync());
|
|
240
|
-
await results_1.enforceAsyncResult(PostgresTestEntity_1.default.creator(vc1)
|
|
241
|
+
await (0, results_1.enforceAsyncResult)(PostgresTestEntity_1.default.creator(vc1)
|
|
241
242
|
.setField('name', 'c')
|
|
242
243
|
.setField('hasADog', true)
|
|
243
244
|
.createAsync());
|
|
@@ -276,7 +277,7 @@ describe('postgres entity integration', () => {
|
|
|
276
277
|
describe('trigger transaction behavior', () => {
|
|
277
278
|
describe('create', () => {
|
|
278
279
|
it('rolls back transaction when trigger throws except afterCommit', async () => {
|
|
279
|
-
const vc1 = new entity_1.ViewerContext(createKnexIntegrationTestEntityCompanionProvider_1.createKnexIntegrationTestEntityCompanionProvider(knexInstance));
|
|
280
|
+
const vc1 = new entity_1.ViewerContext((0, createKnexIntegrationTestEntityCompanionProvider_1.createKnexIntegrationTestEntityCompanionProvider)(knexInstance));
|
|
280
281
|
await expect(PostgresTriggerTestEntity_1.default.creator(vc1)
|
|
281
282
|
.setField('name', 'beforeCreate')
|
|
282
283
|
.enforceCreateAsync()).rejects.toThrowError('name cannot have value beforeCreate');
|
|
@@ -307,7 +308,7 @@ describe('postgres entity integration', () => {
|
|
|
307
308
|
});
|
|
308
309
|
describe('update', () => {
|
|
309
310
|
it('rolls back transaction when trigger throws except afterCommit', async () => {
|
|
310
|
-
const vc1 = new entity_1.ViewerContext(createKnexIntegrationTestEntityCompanionProvider_1.createKnexIntegrationTestEntityCompanionProvider(knexInstance));
|
|
311
|
+
const vc1 = new entity_1.ViewerContext((0, createKnexIntegrationTestEntityCompanionProvider_1.createKnexIntegrationTestEntityCompanionProvider)(knexInstance));
|
|
311
312
|
const entity = await PostgresTriggerTestEntity_1.default.creator(vc1)
|
|
312
313
|
.setField('name', 'blah')
|
|
313
314
|
.enforceCreateAsync();
|
|
@@ -345,7 +346,7 @@ describe('postgres entity integration', () => {
|
|
|
345
346
|
});
|
|
346
347
|
describe('delete', () => {
|
|
347
348
|
it('rolls back transaction when trigger throws except afterCommit', async () => {
|
|
348
|
-
const vc1 = new entity_1.ViewerContext(createKnexIntegrationTestEntityCompanionProvider_1.createKnexIntegrationTestEntityCompanionProvider(knexInstance));
|
|
349
|
+
const vc1 = new entity_1.ViewerContext((0, createKnexIntegrationTestEntityCompanionProvider_1.createKnexIntegrationTestEntityCompanionProvider)(knexInstance));
|
|
349
350
|
const entityBeforeDelete = await PostgresTriggerTestEntity_1.default.creator(vc1)
|
|
350
351
|
.setField('name', 'beforeDelete')
|
|
351
352
|
.enforceCreateAsync();
|
|
@@ -365,7 +366,7 @@ describe('postgres entity integration', () => {
|
|
|
365
366
|
describe('validation transaction behavior', () => {
|
|
366
367
|
describe('create', () => {
|
|
367
368
|
it('rolls back transaction when trigger throws ', async () => {
|
|
368
|
-
const vc1 = new entity_1.ViewerContext(createKnexIntegrationTestEntityCompanionProvider_1.createKnexIntegrationTestEntityCompanionProvider(knexInstance));
|
|
369
|
+
const vc1 = new entity_1.ViewerContext((0, createKnexIntegrationTestEntityCompanionProvider_1.createKnexIntegrationTestEntityCompanionProvider)(knexInstance));
|
|
369
370
|
await expect(PostgresValidatorTestEntity_1.default.creator(vc1)
|
|
370
371
|
.setField('name', 'beforeCreateAndBeforeUpdate')
|
|
371
372
|
.enforceCreateAsync()).rejects.toThrowError('name cannot have value beforeCreateAndBeforeUpdate');
|
|
@@ -376,7 +377,7 @@ describe('postgres entity integration', () => {
|
|
|
376
377
|
});
|
|
377
378
|
describe('update', () => {
|
|
378
379
|
it('rolls back transaction when trigger throws ', async () => {
|
|
379
|
-
const vc1 = new entity_1.ViewerContext(createKnexIntegrationTestEntityCompanionProvider_1.createKnexIntegrationTestEntityCompanionProvider(knexInstance));
|
|
380
|
+
const vc1 = new entity_1.ViewerContext((0, createKnexIntegrationTestEntityCompanionProvider_1.createKnexIntegrationTestEntityCompanionProvider)(knexInstance));
|
|
380
381
|
const entity = await PostgresValidatorTestEntity_1.default.creator(vc1)
|
|
381
382
|
.setField('name', 'blah')
|
|
382
383
|
.enforceCreateAsync();
|
|
@@ -390,7 +391,7 @@ describe('postgres entity integration', () => {
|
|
|
390
391
|
});
|
|
391
392
|
describe('delete', () => {
|
|
392
393
|
it('validation should not run on a delete mutation', async () => {
|
|
393
|
-
const vc1 = new entity_1.ViewerContext(createKnexIntegrationTestEntityCompanionProvider_1.createKnexIntegrationTestEntityCompanionProvider(knexInstance));
|
|
394
|
+
const vc1 = new entity_1.ViewerContext((0, createKnexIntegrationTestEntityCompanionProvider_1.createKnexIntegrationTestEntityCompanionProvider)(knexInstance));
|
|
394
395
|
const entityToDelete = await PostgresValidatorTestEntity_1.default.creator(vc1)
|
|
395
396
|
.setField('name', 'shouldBeDeleted')
|
|
396
397
|
.enforceCreateAsync();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PostgresEntityIntegration-test.js","sourceRoot":"","sources":["../../src/__integration-tests__/PostgresEntityIntegration-test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"PostgresEntityIntegration-test.js","sourceRoot":"","sources":["../../src/__integration-tests__/PostgresEntityIntegration-test.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,19 +6,20 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
const entity_1 = require("@expo/entity");
|
|
7
7
|
const results_1 = require("@expo/results");
|
|
8
8
|
const knex_1 = require("knex");
|
|
9
|
+
const nullthrows_1 = __importDefault(require("nullthrows"));
|
|
9
10
|
const InvalidTestEntity_1 = __importDefault(require("../testfixtures/InvalidTestEntity"));
|
|
10
11
|
const createKnexIntegrationTestEntityCompanionProvider_1 = require("../testfixtures/createKnexIntegrationTestEntityCompanionProvider");
|
|
11
12
|
describe('postgres entity integration', () => {
|
|
12
13
|
let knexInstance;
|
|
13
14
|
beforeAll(() => {
|
|
14
|
-
knexInstance = knex_1.knex({
|
|
15
|
+
knexInstance = (0, knex_1.knex)({
|
|
15
16
|
client: 'pg',
|
|
16
17
|
connection: {
|
|
17
|
-
user: process.env
|
|
18
|
-
password: process.env
|
|
18
|
+
user: (0, nullthrows_1.default)(process.env['PGUSER']),
|
|
19
|
+
password: (0, nullthrows_1.default)(process.env['PGPASSWORD']),
|
|
19
20
|
host: 'localhost',
|
|
20
|
-
port: parseInt(process.env
|
|
21
|
-
database: process.env
|
|
21
|
+
port: parseInt((0, nullthrows_1.default)(process.env['PGPORT']), 10),
|
|
22
|
+
database: (0, nullthrows_1.default)(process.env['PGDATABASE']),
|
|
22
23
|
},
|
|
23
24
|
});
|
|
24
25
|
});
|
|
@@ -31,20 +32,20 @@ describe('postgres entity integration', () => {
|
|
|
31
32
|
});
|
|
32
33
|
describe('invalid operation result counts', () => {
|
|
33
34
|
it('throws after deletion of multiple rows or no rows', async () => {
|
|
34
|
-
const vc = new entity_1.ViewerContext(createKnexIntegrationTestEntityCompanionProvider_1.createKnexIntegrationTestEntityCompanionProvider(knexInstance));
|
|
35
|
-
const entity1 = await results_1.enforceAsyncResult(InvalidTestEntity_1.default.creator(vc).setField('id', 1).setField('name', 'hello').createAsync());
|
|
36
|
-
await results_1.enforceAsyncResult(InvalidTestEntity_1.default.creator(vc).setField('id', 1).setField('name', 'world').createAsync());
|
|
35
|
+
const vc = new entity_1.ViewerContext((0, createKnexIntegrationTestEntityCompanionProvider_1.createKnexIntegrationTestEntityCompanionProvider)(knexInstance));
|
|
36
|
+
const entity1 = await (0, results_1.enforceAsyncResult)(InvalidTestEntity_1.default.creator(vc).setField('id', 1).setField('name', 'hello').createAsync());
|
|
37
|
+
await (0, results_1.enforceAsyncResult)(InvalidTestEntity_1.default.creator(vc).setField('id', 1).setField('name', 'world').createAsync());
|
|
37
38
|
await expect(InvalidTestEntity_1.default.deleteAsync(entity1)).rejects.toThrowError('Excessive deletions from database adapter delete');
|
|
38
39
|
});
|
|
39
40
|
it('throws after update of multiple rows', async () => {
|
|
40
|
-
const vc = new entity_1.ViewerContext(createKnexIntegrationTestEntityCompanionProvider_1.createKnexIntegrationTestEntityCompanionProvider(knexInstance));
|
|
41
|
-
const entity1 = await results_1.enforceAsyncResult(InvalidTestEntity_1.default.creator(vc).setField('id', 1).setField('name', 'hello').createAsync());
|
|
42
|
-
await results_1.enforceAsyncResult(InvalidTestEntity_1.default.creator(vc).setField('id', 1).setField('name', 'world').createAsync());
|
|
41
|
+
const vc = new entity_1.ViewerContext((0, createKnexIntegrationTestEntityCompanionProvider_1.createKnexIntegrationTestEntityCompanionProvider)(knexInstance));
|
|
42
|
+
const entity1 = await (0, results_1.enforceAsyncResult)(InvalidTestEntity_1.default.creator(vc).setField('id', 1).setField('name', 'hello').createAsync());
|
|
43
|
+
await (0, results_1.enforceAsyncResult)(InvalidTestEntity_1.default.creator(vc).setField('id', 1).setField('name', 'world').createAsync());
|
|
43
44
|
await expect(InvalidTestEntity_1.default.updater(entity1).setField('name', 'blah').enforceUpdateAsync()).rejects.toThrowError('Excessive results from database adapter update');
|
|
44
45
|
});
|
|
45
46
|
it('throws after update of no rows', async () => {
|
|
46
|
-
const vc = new entity_1.ViewerContext(createKnexIntegrationTestEntityCompanionProvider_1.createKnexIntegrationTestEntityCompanionProvider(knexInstance));
|
|
47
|
-
const entity1 = await results_1.enforceAsyncResult(InvalidTestEntity_1.default.creator(vc).setField('id', 1).setField('name', 'hello').createAsync());
|
|
47
|
+
const vc = new entity_1.ViewerContext((0, createKnexIntegrationTestEntityCompanionProvider_1.createKnexIntegrationTestEntityCompanionProvider)(knexInstance));
|
|
48
|
+
const entity1 = await (0, results_1.enforceAsyncResult)(InvalidTestEntity_1.default.creator(vc).setField('id', 1).setField('name', 'hello').createAsync());
|
|
48
49
|
await InvalidTestEntity_1.default.deleteAsync(entity1);
|
|
49
50
|
await expect(InvalidTestEntity_1.default.updater(entity1).setField('name', 'blah').enforceUpdateAsync()).rejects.toThrowError('Empty results from database adapter update');
|
|
50
51
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PostgresInvalidSetup-test.js","sourceRoot":"","sources":["../../src/__integration-tests__/PostgresInvalidSetup-test.ts"],"names":[],"mappings":";;;;;AAAA,yCAA6C;AAC7C,2CAAmD;AACnD,+BAAkC;
|
|
1
|
+
{"version":3,"file":"PostgresInvalidSetup-test.js","sourceRoot":"","sources":["../../src/__integration-tests__/PostgresInvalidSetup-test.ts"],"names":[],"mappings":"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"}
|