@expo/entity-database-adapter-knex 0.44.0 → 0.46.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/build/src/EntityFields.js.map +1 -0
- package/build/{PostgresEntityDatabaseAdapter.d.ts → src/PostgresEntityDatabaseAdapter.d.ts} +2 -2
- package/build/{PostgresEntityDatabaseAdapter.js → src/PostgresEntityDatabaseAdapter.js} +10 -12
- package/build/src/PostgresEntityDatabaseAdapter.js.map +1 -0
- package/build/{PostgresEntityDatabaseAdapterProvider.d.ts → src/PostgresEntityDatabaseAdapterProvider.d.ts} +2 -2
- package/build/src/PostgresEntityDatabaseAdapterProvider.js +11 -0
- package/build/src/PostgresEntityDatabaseAdapterProvider.js.map +1 -0
- package/build/{PostgresEntityQueryContextProvider.d.ts → src/PostgresEntityQueryContextProvider.d.ts} +1 -1
- package/build/{PostgresEntityQueryContextProvider.js → src/PostgresEntityQueryContextProvider.js} +2 -1
- package/build/src/PostgresEntityQueryContextProvider.js.map +1 -0
- package/build/src/__integration-tests__/EntityCreationUtils-test.d.ts +1 -0
- package/build/src/__integration-tests__/EntityCreationUtils-test.js +105 -0
- package/build/src/__integration-tests__/EntityCreationUtils-test.js.map +1 -0
- package/build/src/__integration-tests__/PostgresEntityIntegration-test.d.ts +1 -0
- package/build/src/__integration-tests__/PostgresEntityIntegration-test.js +497 -0
- package/build/src/__integration-tests__/PostgresEntityIntegration-test.js.map +1 -0
- package/build/src/__integration-tests__/PostgresEntityQueryContextProvider-test.d.ts +1 -0
- package/build/src/__integration-tests__/PostgresEntityQueryContextProvider-test.js +294 -0
- package/build/src/__integration-tests__/PostgresEntityQueryContextProvider-test.js.map +1 -0
- package/build/src/__integration-tests__/PostgresInvalidSetup-test.d.ts +1 -0
- package/build/src/__integration-tests__/PostgresInvalidSetup-test.js +70 -0
- package/build/src/__integration-tests__/PostgresInvalidSetup-test.js.map +1 -0
- package/build/src/__integration-tests__/errors-test.d.ts +1 -0
- package/build/src/__integration-tests__/errors-test.js +128 -0
- package/build/src/__integration-tests__/errors-test.js.map +1 -0
- package/build/src/__testfixtures__/ErrorsTestEntity.d.ts +24 -0
- package/build/src/__testfixtures__/ErrorsTestEntity.js +107 -0
- package/build/src/__testfixtures__/ErrorsTestEntity.js.map +1 -0
- package/build/src/__testfixtures__/InvalidTestEntity.d.ts +19 -0
- package/build/src/__testfixtures__/InvalidTestEntity.js +62 -0
- package/build/src/__testfixtures__/InvalidTestEntity.js.map +1 -0
- package/build/src/__testfixtures__/PostgresTestEntity.d.ts +31 -0
- package/build/src/__testfixtures__/PostgresTestEntity.js +96 -0
- package/build/src/__testfixtures__/PostgresTestEntity.js.map +1 -0
- package/build/src/__testfixtures__/PostgresTriggerTestEntity.d.ts +19 -0
- package/build/src/__testfixtures__/PostgresTriggerTestEntity.js +101 -0
- package/build/src/__testfixtures__/PostgresTriggerTestEntity.js.map +1 -0
- package/build/src/__testfixtures__/PostgresUniqueTestEntity.d.ts +25 -0
- package/build/src/__testfixtures__/PostgresUniqueTestEntity.js +71 -0
- package/build/src/__testfixtures__/PostgresUniqueTestEntity.js.map +1 -0
- package/build/src/__testfixtures__/PostgresValidatorTestEntity.d.ts +19 -0
- package/build/src/__testfixtures__/PostgresValidatorTestEntity.js +77 -0
- package/build/src/__testfixtures__/PostgresValidatorTestEntity.js.map +1 -0
- package/build/src/__testfixtures__/createKnexIntegrationTestEntityCompanionProvider.d.ts +3 -0
- package/build/src/__testfixtures__/createKnexIntegrationTestEntityCompanionProvider.js +27 -0
- package/build/src/__testfixtures__/createKnexIntegrationTestEntityCompanionProvider.js.map +1 -0
- package/build/src/__tests__/EntityFields-test.d.ts +1 -0
- package/build/src/__tests__/EntityFields-test.js +8 -0
- package/build/src/__tests__/EntityFields-test.js.map +1 -0
- package/build/src/errors/__tests__/wrapNativePostgresCallAsync-test.d.ts +1 -0
- package/build/src/errors/__tests__/wrapNativePostgresCallAsync-test.js +22 -0
- package/build/src/errors/__tests__/wrapNativePostgresCallAsync-test.js.map +1 -0
- package/build/src/errors/wrapNativePostgresCallAsync.d.ts +1 -0
- package/build/{errors → src/errors}/wrapNativePostgresCallAsync.js +1 -1
- package/build/src/errors/wrapNativePostgresCallAsync.js.map +1 -0
- package/build/src/index.d.ts +9 -0
- package/build/src/index.js +27 -0
- package/build/src/index.js.map +1 -0
- package/build/tsconfig.tsbuildinfo +1 -0
- package/package.json +13 -26
- package/src/PostgresEntityDatabaseAdapter.ts +5 -5
- package/src/PostgresEntityDatabaseAdapterProvider.ts +3 -5
- package/src/PostgresEntityQueryContextProvider.ts +1 -1
- package/src/__integration-tests__/EntityCreationUtils-test.ts +224 -0
- package/src/__integration-tests__/PostgresEntityIntegration-test.ts +20 -19
- package/src/__integration-tests__/PostgresEntityQueryContextProvider-test.ts +3 -2
- package/src/__integration-tests__/PostgresInvalidSetup-test.ts +5 -4
- package/src/__integration-tests__/errors-test.ts +3 -2
- package/src/__testfixtures__/ErrorsTestEntity.ts +6 -6
- package/src/__testfixtures__/InvalidTestEntity.ts +6 -10
- package/src/__testfixtures__/PostgresTestEntity.ts +8 -12
- package/src/__testfixtures__/PostgresTriggerTestEntity.ts +7 -7
- package/src/__testfixtures__/PostgresUniqueTestEntity.ts +28 -5
- package/src/__testfixtures__/PostgresValidatorTestEntity.ts +6 -6
- package/src/__testfixtures__/createKnexIntegrationTestEntityCompanionProvider.ts +4 -4
- package/src/errors/__tests__/wrapNativePostgresCallAsync-test.ts +3 -1
- package/src/errors/wrapNativePostgresCallAsync.ts +2 -2
- package/src/index.ts +4 -4
- package/build/EntityFields.js.map +0 -1
- package/build/PostgresEntityDatabaseAdapter.js.map +0 -1
- package/build/PostgresEntityDatabaseAdapterProvider.js +0 -13
- package/build/PostgresEntityDatabaseAdapterProvider.js.map +0 -1
- package/build/PostgresEntityQueryContextProvider.js.map +0 -1
- package/build/errors/wrapNativePostgresCallAsync.d.ts +0 -1
- package/build/errors/wrapNativePostgresCallAsync.js.map +0 -1
- package/build/index.d.ts +0 -9
- package/build/index.js +0 -35
- package/build/index.js.map +0 -1
- package/build/tsconfig.build.tsbuildinfo +0 -1
- /package/build/{EntityFields.d.ts → src/EntityFields.d.ts} +0 -0
- /package/build/{EntityFields.js → src/EntityFields.js} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EntityFields.js","sourceRoot":"","sources":["../../src/EntityFields.ts"],"names":[],"mappings":";;;AAAA,yCAAqD;AAErD;;GAEG;AACH,MAAa,cAAsD,SAAQ,8BAG1E;IACW,0BAA0B,CAAC,KAAY;QAC/C,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC;CACF;AAPD,wCAOC;AAED;;;GAGG;AACH,MAAa,mBAEX,SAAQ,8BAAyD;IACvD,0BAA0B,CAAC,MAAW;QAC9C,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AAND,kDAMC;AAED;;GAEG;AACH,MAAa,WAAmD,SAAQ,8BAGvE;IACW,0BAA0B,CAAC,KAAa;QAChD,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC;IACnC,CAAC;CACF;AAPD,kCAOC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { EntityDatabaseAdapter, FieldTransformerMap,
|
|
1
|
+
import { EntityDatabaseAdapter, FieldTransformerMap, TableFieldMultiValueEqualityCondition, TableFieldSingleValueEqualityCondition, TableQuerySelectionModifiers, TableQuerySelectionModifiersWithOrderByRaw } from '@expo/entity';
|
|
2
2
|
import { Knex } from 'knex';
|
|
3
|
-
export
|
|
3
|
+
export declare class PostgresEntityDatabaseAdapter<TFields extends Record<string, any>, TIDField extends keyof TFields> extends EntityDatabaseAdapter<TFields, TIDField> {
|
|
4
4
|
protected getFieldTransformerMap(): FieldTransformerMap;
|
|
5
5
|
protected fetchManyWhereInternalAsync(queryInterface: Knex, tableName: string, tableColumns: readonly string[], tableTuples: any[][]): Promise<object[]>;
|
|
6
6
|
private applyQueryModifiersToQueryOrderByRaw;
|
|
@@ -1,11 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PostgresEntityDatabaseAdapter = void 0;
|
|
6
4
|
const entity_1 = require("@expo/entity");
|
|
7
5
|
const EntityFields_1 = require("./EntityFields");
|
|
8
|
-
const wrapNativePostgresCallAsync_1 =
|
|
6
|
+
const wrapNativePostgresCallAsync_1 = require("./errors/wrapNativePostgresCallAsync");
|
|
9
7
|
class PostgresEntityDatabaseAdapter extends entity_1.EntityDatabaseAdapter {
|
|
10
8
|
getFieldTransformerMap() {
|
|
11
9
|
return new Map([
|
|
@@ -54,7 +52,7 @@ class PostgresEntityDatabaseAdapter extends entity_1.EntityDatabaseAdapter {
|
|
|
54
52
|
// We could use the IN operator for single column queries as well, but we prefer to use ANY to at least keep some
|
|
55
53
|
// consistency in the query shape for the stats table.
|
|
56
54
|
if (tableColumns.length === 1) {
|
|
57
|
-
return await (0, wrapNativePostgresCallAsync_1.
|
|
55
|
+
return await (0, wrapNativePostgresCallAsync_1.wrapNativePostgresCallAsync)(() => queryInterface
|
|
58
56
|
.select()
|
|
59
57
|
.from(tableName)
|
|
60
58
|
.whereRaw(`(??) = ANY(?)`, [
|
|
@@ -62,7 +60,7 @@ class PostgresEntityDatabaseAdapter extends entity_1.EntityDatabaseAdapter {
|
|
|
62
60
|
tableTuples.map((tableTuple) => tableTuple[0]),
|
|
63
61
|
]));
|
|
64
62
|
}
|
|
65
|
-
return await (0, wrapNativePostgresCallAsync_1.
|
|
63
|
+
return await (0, wrapNativePostgresCallAsync_1.wrapNativePostgresCallAsync)(() => queryInterface.select().from(tableName).whereIn(tableColumns, tableTuples));
|
|
66
64
|
}
|
|
67
65
|
applyQueryModifiersToQueryOrderByRaw(query, querySelectionModifiers) {
|
|
68
66
|
let ret = this.applyQueryModifiersToQuery(query, querySelectionModifiers);
|
|
@@ -119,7 +117,7 @@ class PostgresEntityDatabaseAdapter extends entity_1.EntityDatabaseAdapter {
|
|
|
119
117
|
}
|
|
120
118
|
}
|
|
121
119
|
query = this.applyQueryModifiersToQuery(query, querySelectionModifiers);
|
|
122
|
-
return await (0, wrapNativePostgresCallAsync_1.
|
|
120
|
+
return await (0, wrapNativePostgresCallAsync_1.wrapNativePostgresCallAsync)(() => query);
|
|
123
121
|
}
|
|
124
122
|
async fetchManyByRawWhereClauseInternalAsync(queryInterface, tableName, rawWhereClause, bindings, querySelectionModifiers) {
|
|
125
123
|
let query = queryInterface
|
|
@@ -127,17 +125,17 @@ class PostgresEntityDatabaseAdapter extends entity_1.EntityDatabaseAdapter {
|
|
|
127
125
|
.from(tableName)
|
|
128
126
|
.whereRaw(rawWhereClause, bindings);
|
|
129
127
|
query = this.applyQueryModifiersToQueryOrderByRaw(query, querySelectionModifiers);
|
|
130
|
-
return await (0, wrapNativePostgresCallAsync_1.
|
|
128
|
+
return await (0, wrapNativePostgresCallAsync_1.wrapNativePostgresCallAsync)(() => query);
|
|
131
129
|
}
|
|
132
130
|
async insertInternalAsync(queryInterface, tableName, object) {
|
|
133
|
-
return await (0, wrapNativePostgresCallAsync_1.
|
|
131
|
+
return await (0, wrapNativePostgresCallAsync_1.wrapNativePostgresCallAsync)(() => queryInterface.insert(object).into(tableName).returning('*'));
|
|
134
132
|
}
|
|
135
133
|
async updateInternalAsync(queryInterface, tableName, tableIdField, id, object) {
|
|
136
|
-
return await (0, wrapNativePostgresCallAsync_1.
|
|
134
|
+
return await (0, wrapNativePostgresCallAsync_1.wrapNativePostgresCallAsync)(() => queryInterface.update(object).into(tableName).where(tableIdField, id).returning('*'));
|
|
137
135
|
}
|
|
138
136
|
async deleteInternalAsync(queryInterface, tableName, tableIdField, id) {
|
|
139
|
-
return await (0, wrapNativePostgresCallAsync_1.
|
|
137
|
+
return await (0, wrapNativePostgresCallAsync_1.wrapNativePostgresCallAsync)(() => queryInterface.into(tableName).where(tableIdField, id).del());
|
|
140
138
|
}
|
|
141
139
|
}
|
|
142
|
-
exports.
|
|
140
|
+
exports.PostgresEntityDatabaseAdapter = PostgresEntityDatabaseAdapter;
|
|
143
141
|
//# sourceMappingURL=PostgresEntityDatabaseAdapter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PostgresEntityDatabaseAdapter.js","sourceRoot":"","sources":["../../src/PostgresEntityDatabaseAdapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export
|
|
1
|
+
import { EntityConfiguration, EntityDatabaseAdapter, IEntityDatabaseAdapterProvider } from '@expo/entity';
|
|
2
|
+
export declare class PostgresEntityDatabaseAdapterProvider implements IEntityDatabaseAdapterProvider {
|
|
3
3
|
getDatabaseAdapter<TFields extends Record<string, any>, TIDField extends keyof TFields>(entityConfiguration: EntityConfiguration<TFields, TIDField>): EntityDatabaseAdapter<TFields, TIDField>;
|
|
4
4
|
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PostgresEntityDatabaseAdapterProvider = void 0;
|
|
4
|
+
const PostgresEntityDatabaseAdapter_1 = require("./PostgresEntityDatabaseAdapter");
|
|
5
|
+
class PostgresEntityDatabaseAdapterProvider {
|
|
6
|
+
getDatabaseAdapter(entityConfiguration) {
|
|
7
|
+
return new PostgresEntityDatabaseAdapter_1.PostgresEntityDatabaseAdapter(entityConfiguration);
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
exports.PostgresEntityDatabaseAdapterProvider = PostgresEntityDatabaseAdapterProvider;
|
|
11
|
+
//# sourceMappingURL=PostgresEntityDatabaseAdapterProvider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PostgresEntityDatabaseAdapterProvider.js","sourceRoot":"","sources":["../../src/PostgresEntityDatabaseAdapterProvider.ts"],"names":[],"mappings":";;;AAMA,mFAAgF;AAEhF,MAAa,qCAAqC;IAChD,kBAAkB,CAChB,mBAA2D;QAE3D,OAAO,IAAI,6DAA6B,CAAC,mBAAmB,CAAC,CAAC;IAChE,CAAC;CACF;AAND,sFAMC"}
|
|
@@ -3,7 +3,7 @@ import { Knex } from 'knex';
|
|
|
3
3
|
/**
|
|
4
4
|
* Query context provider for knex (postgres).
|
|
5
5
|
*/
|
|
6
|
-
export
|
|
6
|
+
export declare class PostgresEntityQueryContextProvider extends EntityQueryContextProvider {
|
|
7
7
|
private readonly knexInstance;
|
|
8
8
|
constructor(knexInstance: Knex);
|
|
9
9
|
protected getQueryInterface(): any;
|
package/build/{PostgresEntityQueryContextProvider.js → src/PostgresEntityQueryContextProvider.js}
RENAMED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PostgresEntityQueryContextProvider = void 0;
|
|
3
4
|
const entity_1 = require("@expo/entity");
|
|
4
5
|
/**
|
|
5
6
|
* Query context provider for knex (postgres).
|
|
@@ -39,5 +40,5 @@ class PostgresEntityQueryContextProvider extends entity_1.EntityQueryContextProv
|
|
|
39
40
|
};
|
|
40
41
|
}
|
|
41
42
|
}
|
|
42
|
-
exports.
|
|
43
|
+
exports.PostgresEntityQueryContextProvider = PostgresEntityQueryContextProvider;
|
|
43
44
|
//# sourceMappingURL=PostgresEntityQueryContextProvider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PostgresEntityQueryContextProvider.js","sourceRoot":"","sources":["../../src/PostgresEntityQueryContextProvider.ts"],"names":[],"mappings":";;;AAAA,yCAIsB;AAGtB;;GAEG;AACH,MAAa,kCAAmC,SAAQ,mCAA0B;IACnD;IAA7B,YAA6B,YAAkB;QAC7C,KAAK,EAAE,CAAC;QADmB,iBAAY,GAAZ,YAAY,CAAM;IAE/C,CAAC;IAES,iBAAiB;QACzB,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAES,uBAAuB,CAC/B,iBAAqC;QAErC,OAAO,CAAC,gBAAgB,EAAE,EAAE,CAC1B,IAAI,CAAC,YAAY,CAAC,WAAW,CAC3B,gBAAgB,EAChB,iBAAiB;YACf,CAAC,CAAC,kCAAkC,CAAC,wBAAwB,CAAC,iBAAiB,CAAC;YAChF,CAAC,CAAC,SAAS,CACd,CAAC;IACN,CAAC;IAES,6BAA6B,CACrC,mBAAwB;QAExB,OAAO,CAAC,gBAAgB,EAAE,EAAE,CAAE,mBAA4B,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC;IAC3F,CAAC;IAEO,MAAM,CAAC,wBAAwB,CACrC,iBAAoC;QAEpC,MAAM,qBAAqB,GAAG,CAC5B,cAAyC,EACnB,EAAE;YACxB,QAAQ,cAAc,EAAE,CAAC;gBACvB,KAAK,kCAAyB,CAAC,cAAc;oBAC3C,OAAO,gBAAgB,CAAC;gBAC1B,KAAK,kCAAyB,CAAC,eAAe;oBAC5C,OAAO,iBAAiB,CAAC;gBAC3B,KAAK,kCAAyB,CAAC,YAAY;oBACzC,OAAO,cAAc,CAAC;YAC1B,CAAC;QACH,CAAC,CAAC;QAEF,OAAO;YACL,GAAG,CAAC,iBAAiB,CAAC,cAAc;gBAClC,CAAC,CAAC,EAAE,cAAc,EAAE,qBAAqB,CAAC,iBAAiB,CAAC,cAAc,CAAC,EAAE;gBAC7E,CAAC,CAAC,EAAE,CAAC;SACR,CAAC;IACJ,CAAC;CACF;AAjDD,gFAiDC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const entity_1 = require("@expo/entity");
|
|
7
|
+
const globals_1 = require("@jest/globals");
|
|
8
|
+
const knex_1 = __importDefault(require("knex"));
|
|
9
|
+
const nullthrows_1 = __importDefault(require("nullthrows"));
|
|
10
|
+
const PostgresUniqueTestEntity_1 = require("../__testfixtures__/PostgresUniqueTestEntity");
|
|
11
|
+
const createKnexIntegrationTestEntityCompanionProvider_1 = require("../__testfixtures__/createKnexIntegrationTestEntityCompanionProvider");
|
|
12
|
+
(0, globals_1.describe)(entity_1.createWithUniqueConstraintRecoveryAsync, () => {
|
|
13
|
+
let knexInstance;
|
|
14
|
+
(0, globals_1.beforeAll)(() => {
|
|
15
|
+
knexInstance = (0, knex_1.default)({
|
|
16
|
+
client: 'pg',
|
|
17
|
+
connection: {
|
|
18
|
+
user: (0, nullthrows_1.default)(process.env['PGUSER']),
|
|
19
|
+
password: (0, nullthrows_1.default)(process.env['PGPASSWORD']),
|
|
20
|
+
host: 'localhost',
|
|
21
|
+
port: parseInt((0, nullthrows_1.default)(process.env['PGPORT']), 10),
|
|
22
|
+
database: (0, nullthrows_1.default)(process.env['PGDATABASE']),
|
|
23
|
+
},
|
|
24
|
+
});
|
|
25
|
+
});
|
|
26
|
+
(0, globals_1.beforeEach)(async () => {
|
|
27
|
+
await PostgresUniqueTestEntity_1.PostgresUniqueTestEntity.createOrTruncatePostgresTableAsync(knexInstance);
|
|
28
|
+
});
|
|
29
|
+
(0, globals_1.afterAll)(async () => {
|
|
30
|
+
await PostgresUniqueTestEntity_1.PostgresUniqueTestEntity.dropPostgresTableAsync(knexInstance);
|
|
31
|
+
await knexInstance.destroy();
|
|
32
|
+
});
|
|
33
|
+
globals_1.describe.each([true, false])('is parallel creations %p', (parallel) => {
|
|
34
|
+
(0, globals_1.it)('recovers when the same entity is created twice outside of transaction', async () => {
|
|
35
|
+
const vc1 = new entity_1.ViewerContext((0, createKnexIntegrationTestEntityCompanionProvider_1.createKnexIntegrationTestEntityCompanionProvider)(knexInstance));
|
|
36
|
+
const args = {
|
|
37
|
+
name: 'unique',
|
|
38
|
+
};
|
|
39
|
+
let createdEntities;
|
|
40
|
+
if (parallel) {
|
|
41
|
+
createdEntities = await Promise.all([
|
|
42
|
+
(0, entity_1.createWithUniqueConstraintRecoveryAsync)(vc1, PostgresUniqueTestEntity_1.PostgresUniqueTestEntity, PostgresUniqueTestEntity_1.PostgresUniqueTestEntity.getByNameAsync, args, PostgresUniqueTestEntity_1.PostgresUniqueTestEntity.createWithNameAsync, args),
|
|
43
|
+
(0, entity_1.createWithUniqueConstraintRecoveryAsync)(vc1, PostgresUniqueTestEntity_1.PostgresUniqueTestEntity, PostgresUniqueTestEntity_1.PostgresUniqueTestEntity.getByNameAsync, args, PostgresUniqueTestEntity_1.PostgresUniqueTestEntity.createWithNameAsync, args),
|
|
44
|
+
]);
|
|
45
|
+
}
|
|
46
|
+
else {
|
|
47
|
+
createdEntities = [
|
|
48
|
+
await (0, entity_1.createWithUniqueConstraintRecoveryAsync)(vc1, PostgresUniqueTestEntity_1.PostgresUniqueTestEntity, PostgresUniqueTestEntity_1.PostgresUniqueTestEntity.getByNameAsync, args, PostgresUniqueTestEntity_1.PostgresUniqueTestEntity.createWithNameAsync, args),
|
|
49
|
+
await (0, entity_1.createWithUniqueConstraintRecoveryAsync)(vc1, PostgresUniqueTestEntity_1.PostgresUniqueTestEntity, PostgresUniqueTestEntity_1.PostgresUniqueTestEntity.getByNameAsync, args, PostgresUniqueTestEntity_1.PostgresUniqueTestEntity.createWithNameAsync, args),
|
|
50
|
+
];
|
|
51
|
+
}
|
|
52
|
+
(0, globals_1.expect)(createdEntities[0].getID()).toEqual(createdEntities[1].getID());
|
|
53
|
+
});
|
|
54
|
+
(0, globals_1.it)('recovers when the same entity is created twice within same transaction', async () => {
|
|
55
|
+
const vc1 = new entity_1.ViewerContext((0, createKnexIntegrationTestEntityCompanionProvider_1.createKnexIntegrationTestEntityCompanionProvider)(knexInstance));
|
|
56
|
+
const args = {
|
|
57
|
+
name: 'unique',
|
|
58
|
+
};
|
|
59
|
+
const createdEntities = await vc1.runInTransactionForDatabaseAdaptorFlavorAsync('postgres', async (queryContext) => {
|
|
60
|
+
if (parallel) {
|
|
61
|
+
return await Promise.all([
|
|
62
|
+
(0, entity_1.createWithUniqueConstraintRecoveryAsync)(vc1, PostgresUniqueTestEntity_1.PostgresUniqueTestEntity, PostgresUniqueTestEntity_1.PostgresUniqueTestEntity.getByNameAsync, args, PostgresUniqueTestEntity_1.PostgresUniqueTestEntity.createWithNameAsync, args, queryContext),
|
|
63
|
+
(0, entity_1.createWithUniqueConstraintRecoveryAsync)(vc1, PostgresUniqueTestEntity_1.PostgresUniqueTestEntity, PostgresUniqueTestEntity_1.PostgresUniqueTestEntity.getByNameAsync, args, PostgresUniqueTestEntity_1.PostgresUniqueTestEntity.createWithNameAsync, args, queryContext),
|
|
64
|
+
]);
|
|
65
|
+
}
|
|
66
|
+
else {
|
|
67
|
+
return [
|
|
68
|
+
await (0, entity_1.createWithUniqueConstraintRecoveryAsync)(vc1, PostgresUniqueTestEntity_1.PostgresUniqueTestEntity, PostgresUniqueTestEntity_1.PostgresUniqueTestEntity.getByNameAsync, args, PostgresUniqueTestEntity_1.PostgresUniqueTestEntity.createWithNameAsync, args, queryContext),
|
|
69
|
+
await (0, entity_1.createWithUniqueConstraintRecoveryAsync)(vc1, PostgresUniqueTestEntity_1.PostgresUniqueTestEntity, PostgresUniqueTestEntity_1.PostgresUniqueTestEntity.getByNameAsync, args, PostgresUniqueTestEntity_1.PostgresUniqueTestEntity.createWithNameAsync, args, queryContext),
|
|
70
|
+
];
|
|
71
|
+
}
|
|
72
|
+
});
|
|
73
|
+
(0, globals_1.expect)((0, nullthrows_1.default)(createdEntities[0]).getID()).toEqual((0, nullthrows_1.default)(createdEntities[1]).getID());
|
|
74
|
+
});
|
|
75
|
+
(0, globals_1.it)('recovers when the same entity is created twice within two transactions', async () => {
|
|
76
|
+
const vc1 = new entity_1.ViewerContext((0, createKnexIntegrationTestEntityCompanionProvider_1.createKnexIntegrationTestEntityCompanionProvider)(knexInstance));
|
|
77
|
+
const args = {
|
|
78
|
+
name: 'unique',
|
|
79
|
+
};
|
|
80
|
+
let createdEntities;
|
|
81
|
+
if (parallel) {
|
|
82
|
+
createdEntities = await Promise.all([
|
|
83
|
+
await vc1.runInTransactionForDatabaseAdaptorFlavorAsync('postgres', async (queryContext) => {
|
|
84
|
+
return await (0, entity_1.createWithUniqueConstraintRecoveryAsync)(vc1, PostgresUniqueTestEntity_1.PostgresUniqueTestEntity, PostgresUniqueTestEntity_1.PostgresUniqueTestEntity.getByNameAsync, args, PostgresUniqueTestEntity_1.PostgresUniqueTestEntity.createWithNameAsync, args, queryContext);
|
|
85
|
+
}),
|
|
86
|
+
await vc1.runInTransactionForDatabaseAdaptorFlavorAsync('postgres', async (queryContext) => {
|
|
87
|
+
return await (0, entity_1.createWithUniqueConstraintRecoveryAsync)(vc1, PostgresUniqueTestEntity_1.PostgresUniqueTestEntity, PostgresUniqueTestEntity_1.PostgresUniqueTestEntity.getByNameAsync, args, PostgresUniqueTestEntity_1.PostgresUniqueTestEntity.createWithNameAsync, args, queryContext);
|
|
88
|
+
}),
|
|
89
|
+
]);
|
|
90
|
+
}
|
|
91
|
+
else {
|
|
92
|
+
createdEntities = [
|
|
93
|
+
await vc1.runInTransactionForDatabaseAdaptorFlavorAsync('postgres', async (queryContext) => {
|
|
94
|
+
return await (0, entity_1.createWithUniqueConstraintRecoveryAsync)(vc1, PostgresUniqueTestEntity_1.PostgresUniqueTestEntity, PostgresUniqueTestEntity_1.PostgresUniqueTestEntity.getByNameAsync, args, PostgresUniqueTestEntity_1.PostgresUniqueTestEntity.createWithNameAsync, args, queryContext);
|
|
95
|
+
}),
|
|
96
|
+
await vc1.runInTransactionForDatabaseAdaptorFlavorAsync('postgres', async (queryContext) => {
|
|
97
|
+
return await (0, entity_1.createWithUniqueConstraintRecoveryAsync)(vc1, PostgresUniqueTestEntity_1.PostgresUniqueTestEntity, PostgresUniqueTestEntity_1.PostgresUniqueTestEntity.getByNameAsync, args, PostgresUniqueTestEntity_1.PostgresUniqueTestEntity.createWithNameAsync, args, queryContext);
|
|
98
|
+
}),
|
|
99
|
+
];
|
|
100
|
+
}
|
|
101
|
+
(0, globals_1.expect)((0, nullthrows_1.default)(createdEntities[0]).getID()).toEqual((0, nullthrows_1.default)(createdEntities[1]).getID());
|
|
102
|
+
});
|
|
103
|
+
});
|
|
104
|
+
});
|
|
105
|
+
//# sourceMappingURL=EntityCreationUtils-test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EntityCreationUtils-test.js","sourceRoot":"","sources":["../../../src/__integration-tests__/EntityCreationUtils-test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|