@natlibfi/melinda-rest-api-commons 6.2.0-alpha.1 → 6.2.0-alpha.2
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 -3
- package/dist/helpers/fix-strip-f884s.js.map +1 -1
- package/dist/mongo.d.ts +1 -0
- package/dist/mongo.d.ts.map +1 -1
- package/dist/mongo.js +25 -2
- package/dist/mongo.js.map +1 -1
- package/dist/mongoLog.d.ts +1 -0
- package/dist/mongoLog.d.ts.map +1 -1
- package/dist/mongoLog.js +11 -2
- package/dist/mongoLog.js.map +1 -1
- package/package.json +1 -1
- package/test/mongo-add-blob-size.test.ts +6 -0
- package/test/mongo-check-and-check-state.test.ts +6 -0
- package/test/mongo-check-and-set-import-job-state.test.ts +6 -0
- package/test/mongo-check-timeout.test.ts +6 -0
- package/test/mongo-create-bulk.test.ts +6 -0
- package/test/mongo-create-prio.test.ts +6 -0
- package/test/mongo-error-branches.test.ts +98 -3
- package/test/mongo-get-one.test.ts +6 -0
- package/test/mongo-get-stream.test.ts +6 -0
- package/test/mongo-push-ids.test.ts +6 -0
- package/test/mongo-push-messages.test.ts +6 -0
- package/test/mongo-query-by-id.test.ts +6 -0
- package/test/mongo-query.test.ts +6 -0
- package/test/mongo-read-content.test.ts +6 -0
- package/test/mongo-remove.test.ts +6 -0
- package/test/mongo-set-blob-size.test.ts +6 -0
- package/test/mongo-set-import-job-state.test.ts +6 -0
- package/test/mongo-set-operation.test.ts +6 -0
- package/test/mongo-set-operations.test.ts +6 -0
- package/test/mongo-set-state.test.ts +6 -0
- package/test/mongoLog-protect.test.ts +1 -0
- package/test/mongoLog.test.ts +6 -0
package/README.md
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
# Shared modules for microservices of Melinda
|
|
1
|
+
# Shared modules for microservices of the Melinda REST API
|
|
2
2
|
[](https://npmjs.org/package/@natlibfi/melinda-rest-api-commons)
|
|
3
3
|

|
|
4
4
|
|
|
5
|
-
Shared modules for microservices of Melinda
|
|
5
|
+
Shared modules for microservices of the Melinda REST API
|
|
6
6
|
|
|
7
7
|
## API
|
|
8
8
|
|
|
@@ -53,6 +53,7 @@ Creates the queue-item operator on a Mongo collection. `db` defaults to
|
|
|
53
53
|
| `setOperations({correlationId, addOperation, removeOperation?})` | Add and/or remove operations on a queue item | `QueueItem` |
|
|
54
54
|
| `addBlobSize({correlationId})` | Increment the `blobSize` of a queue item waiting for records | `QueueItem \| null` |
|
|
55
55
|
| `setBlobSize({correlationId, blobSize})` | Set the `blobSize` of a queue item | `QueueItem \| null` |
|
|
56
|
+
| `close()` | Close the Mongo connection (idempotent, always resolves) | `void` |
|
|
56
57
|
|
|
57
58
|
**`CheckAndSetResult`** — the discriminated result of
|
|
58
59
|
`checkAndSetState` / `checkAndSetImportJobState` (branch on `status`, read
|
|
@@ -81,11 +82,12 @@ defaults to `'rest-api'`.
|
|
|
81
82
|
| `getListOfLogs(logItemType?)` | Get the list of `correlationId`s that have logs of a given type (default `MERGE_LOG`) | `string[]` |
|
|
82
83
|
| `getListOfCatalogers()` | Get the list of catalogers over all logs | `string[]` |
|
|
83
84
|
| `getListOfCorrelationIds()` | Get the list of `correlationId`s over all logs | `string[]` |
|
|
84
|
-
| `getExpandedListOfLogs(params)` | Aggregated log list per `correlationId` + `logItemType` with cataloger, creation time and record count; optional filters `logItemTypes`, `catalogers`, `dateBefore`, `dateAfter` (a provided `logItemTypes` is validated element-wise, unknown element rejects with 400) | `ExpandedLogListItem[]` |
|
|
85
|
+
| `getExpandedListOfLogs(params)` | Aggregated log list per `correlationId` + `logItemType` with cataloger, creation time and record count; optional filters `logItemTypes`, `catalogers`, `dateBefore`, `dateAfter` (a provided `logItemTypes` is validated element-wise, unknown element rejects with 400; `dateBefore` is an exclusive upper bound and `dateAfter` an inclusive lower bound on `creationTime`, UTC `'YYYY-MM-DD'` or `Date`, defaults now / epoch = no effective filter) | `ExpandedLogListItem[]` |
|
|
85
86
|
| `protect(correlationId, blobSequence?)` | Mark matching log items as protected (idempotent) | `UpdateResult` |
|
|
86
87
|
| `unprotect(correlationId, blobSequence?)` | Mark matching log items as unprotected, so regular cleaning can remove them | `UpdateResult` |
|
|
87
88
|
| `remove(correlationId, force?)` | Remove log items for a `correlationId`; protected items are kept unless `force` | `DeleteResult` |
|
|
88
89
|
| `removeBySequences(correlationId, sequences?, force?)` | Remove log items for a `correlationId` matching blob sequences; protected items are kept unless `force` | `DeleteResult` |
|
|
90
|
+
| `close()` | Close the Mongo connection (idempotent, always resolves) | `void` |
|
|
89
91
|
|
|
90
92
|
### `amqpFactory(AMQP_URL, runHealthCheck?)`
|
|
91
93
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fix-strip-f884s.js","sourceRoot":"","sources":["../../src/helpers/fix-strip-f884s.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"fix-strip-f884s.js","sourceRoot":"","sources":["../../src/helpers/fix-strip-f884s.ts"],"names":[],"mappings":"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"}
|
package/dist/mongo.d.ts
CHANGED
|
@@ -157,6 +157,7 @@ export interface MongoOperator {
|
|
|
157
157
|
correlationId: string;
|
|
158
158
|
blobSize: number;
|
|
159
159
|
}) => Promise<WithId<QueueItem> | null>;
|
|
160
|
+
close: () => Promise<void>;
|
|
160
161
|
}
|
|
161
162
|
export default function (MONGO_URI: string, collection: string, db?: string, deps?: {
|
|
162
163
|
operator?: unknown;
|
package/dist/mongo.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mongo.d.ts","sourceRoot":"","sources":["../src/mongo.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"mongo.d.ts","sourceRoot":"","sources":["../src/mongo.ts"],"names":[],"mappings":"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"}
|
package/dist/mongo.js
CHANGED
|
@@ -12,10 +12,12 @@ export default async function (MONGO_URI, collection, db = 'rest-api', deps = {}
|
|
|
12
12
|
const debug = createDebugLogger('@natlibfi/melinda-rest-api-commons/mongo');
|
|
13
13
|
const debugDev = debug.extend(':dev');
|
|
14
14
|
const stubbed = Boolean(deps.operator) && Boolean(deps.gridFSBucket);
|
|
15
|
+
let client;
|
|
16
|
+
let closed = false;
|
|
15
17
|
let gridFSBucket = deps.gridFSBucket;
|
|
16
18
|
let operator = deps.operator;
|
|
17
19
|
if (!stubbed) {
|
|
18
|
-
|
|
20
|
+
client = await MongoClient.connect(MONGO_URI);
|
|
19
21
|
const realDb = client.db(db);
|
|
20
22
|
gridFSBucket = gridFSBucket ?? new GridFSBucket(realDb, { bucketName: collection });
|
|
21
23
|
operator = operator ?? realDb.collection(collection);
|
|
@@ -42,8 +44,15 @@ export default async function (MONGO_URI, collection, db = 'rest-api', deps = {}
|
|
|
42
44
|
setOperation: (params) => withMongoError(() => setOperation(params)),
|
|
43
45
|
setOperations: (params) => withMongoError(() => setOperations(params)),
|
|
44
46
|
addBlobSize: (params) => withMongoError(() => addBlobSize(params)),
|
|
45
|
-
setBlobSize: (params) => withMongoError(() => setBlobSize(params))
|
|
47
|
+
setBlobSize: (params) => withMongoError(() => setBlobSize(params)),
|
|
48
|
+
close
|
|
46
49
|
};
|
|
50
|
+
async function close() {
|
|
51
|
+
if (closed)
|
|
52
|
+
return;
|
|
53
|
+
closed = true;
|
|
54
|
+
await client?.close();
|
|
55
|
+
}
|
|
47
56
|
async function createPrio({ correlationId, cataloger, oCatalogerIn, operation, operationSettings }) {
|
|
48
57
|
debugDev('createPrio');
|
|
49
58
|
const time = new Date();
|
|
@@ -185,6 +194,13 @@ export default async function (MONGO_URI, collection, db = 'rest-api', deps = {}
|
|
|
185
194
|
}
|
|
186
195
|
async function checkAndSetState({ correlationId, state, errorMessage = undefined, errorStatus = undefined }) {
|
|
187
196
|
assertString(correlationId, 'correlationId');
|
|
197
|
+
const existing = await operator.findOne({ correlationId }, { projection: { _id: 0 } });
|
|
198
|
+
if (!existing ||
|
|
199
|
+
existing.queueItemState === QUEUE_ITEM_STATE.ABORT ||
|
|
200
|
+
existing.queueItemState === QUEUE_ITEM_STATE.ERROR ||
|
|
201
|
+
existing.queueItemState === QUEUE_ITEM_STATE.DONE) {
|
|
202
|
+
return { status: 'unchanged', queueItem: existing };
|
|
203
|
+
}
|
|
188
204
|
const timeOut = await checkTimeOut({ correlationId });
|
|
189
205
|
if (timeOut) {
|
|
190
206
|
const queueItem = await setState({ correlationId, state, errorMessage, errorStatus });
|
|
@@ -196,6 +212,13 @@ export default async function (MONGO_URI, collection, db = 'rest-api', deps = {}
|
|
|
196
212
|
}
|
|
197
213
|
async function checkAndSetImportJobState({ correlationId, operation, importJobState }) {
|
|
198
214
|
assertString(correlationId, 'correlationId');
|
|
215
|
+
const existing = await operator.findOne({ correlationId }, { projection: { _id: 0 } });
|
|
216
|
+
if (!existing ||
|
|
217
|
+
existing.queueItemState === QUEUE_ITEM_STATE.ABORT ||
|
|
218
|
+
existing.queueItemState === QUEUE_ITEM_STATE.ERROR ||
|
|
219
|
+
existing.queueItemState === QUEUE_ITEM_STATE.DONE) {
|
|
220
|
+
return { status: 'unchanged', queueItem: existing };
|
|
221
|
+
}
|
|
199
222
|
logger.debug(`${correlationId}, ${importJobState}, ${operation}`);
|
|
200
223
|
const timeOut = await checkTimeOut({ correlationId, operation, importJobState });
|
|
201
224
|
if (timeOut) {
|
package/dist/mongo.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mongo.js","sourceRoot":"","sources":["../src/mongo.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mongo.js","sourceRoot":"","sources":["../src/mongo.ts"],"names":[],"mappings":"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"}
|
package/dist/mongoLog.d.ts
CHANGED
|
@@ -43,6 +43,7 @@ export interface MongoLogOperator {
|
|
|
43
43
|
unprotect: (correlationId: string, blobSequence?: number | string) => Promise<UpdateResult>;
|
|
44
44
|
remove: (correlationId: string, force?: boolean) => Promise<DeleteResult>;
|
|
45
45
|
removeBySequences: (correlationId: string, sequences?: (number | string)[], force?: boolean) => Promise<DeleteResult>;
|
|
46
|
+
close: () => Promise<void>;
|
|
46
47
|
}
|
|
47
48
|
export default function (MONGO_URI: string, dbName?: string, deps?: {
|
|
48
49
|
collection?: unknown;
|
package/dist/mongoLog.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mongoLog.d.ts","sourceRoot":"","sources":["../src/mongoLog.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"mongoLog.d.ts","sourceRoot":"","sources":["../src/mongoLog.ts"],"names":[],"mappings":"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"}
|
package/dist/mongoLog.js
CHANGED
|
@@ -22,9 +22,11 @@ export default async function (MONGO_URI, dbName = 'rest-api', deps = {}) {
|
|
|
22
22
|
}
|
|
23
23
|
throw new ApiError(httpStatus.BAD_REQUEST, 'blobSequence must be a number or a numeric string');
|
|
24
24
|
}
|
|
25
|
+
let client;
|
|
26
|
+
let closed = false;
|
|
25
27
|
let logCollection = deps.collection;
|
|
26
28
|
if (!deps.collection) {
|
|
27
|
-
|
|
29
|
+
client = await MongoClient.connect(MONGO_URI);
|
|
28
30
|
logCollection = client.db(dbName).collection(collection);
|
|
29
31
|
}
|
|
30
32
|
return {
|
|
@@ -38,8 +40,15 @@ export default async function (MONGO_URI, dbName = 'rest-api', deps = {}) {
|
|
|
38
40
|
protect,
|
|
39
41
|
unprotect,
|
|
40
42
|
remove,
|
|
41
|
-
removeBySequences
|
|
43
|
+
removeBySequences,
|
|
44
|
+
close
|
|
42
45
|
};
|
|
46
|
+
async function close() {
|
|
47
|
+
if (closed)
|
|
48
|
+
return;
|
|
49
|
+
closed = true;
|
|
50
|
+
await client?.close();
|
|
51
|
+
}
|
|
43
52
|
function isKnownLogItemType(value) {
|
|
44
53
|
const knownLogItemTypes = Object.values(LOG_ITEM_TYPE);
|
|
45
54
|
return knownLogItemTypes.includes(value);
|
package/dist/mongoLog.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mongoLog.js","sourceRoot":"","sources":["../src/mongoLog.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mongoLog.js","sourceRoot":"","sources":["../src/mongoLog.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -8,6 +8,7 @@ import {getMongoOperator, handleError, compareToFirstDbEntry} from './testUtils.
|
|
|
8
8
|
|
|
9
9
|
|
|
10
10
|
let mongoFixtures: any;
|
|
11
|
+
const openedOperators: any[] = [];
|
|
11
12
|
const debug = createDebugLogger('@natlibfi/melinda-rest-api-commons/mongo:add-blob-size:test');
|
|
12
13
|
|
|
13
14
|
generateTests({
|
|
@@ -34,6 +35,10 @@ generateTests({
|
|
|
34
35
|
},
|
|
35
36
|
after: async () => {
|
|
36
37
|
//debug(`<< After`);
|
|
38
|
+
// close the operators the tests opened (one per test) before the server
|
|
39
|
+
for (const op of openedOperators) {
|
|
40
|
+
await op.close();
|
|
41
|
+
}
|
|
37
42
|
await mongoFixtures.close();
|
|
38
43
|
}
|
|
39
44
|
}
|
|
@@ -61,6 +66,7 @@ async function callback(callbackParams: Record<string, any>) {
|
|
|
61
66
|
} = callbackParams;
|
|
62
67
|
|
|
63
68
|
const mongoOperator = await getMongoOperator(mongoFixtures);
|
|
69
|
+
openedOperators.push(mongoOperator);
|
|
64
70
|
const expectedResult = await getFixture('expectedResult.json');
|
|
65
71
|
|
|
66
72
|
await doPreFillDb(preFillDb);
|
|
@@ -8,6 +8,7 @@ import {getMongoOperator, handleError, compareToFirstDbEntry} from './testUtils.
|
|
|
8
8
|
|
|
9
9
|
|
|
10
10
|
let mongoFixtures: any;
|
|
11
|
+
const openedOperators: any[] = [];
|
|
11
12
|
const debug = createDebugLogger('@natlibfi/melinda-rest-api-commons/mongo:test');
|
|
12
13
|
|
|
13
14
|
generateTests({
|
|
@@ -34,6 +35,10 @@ generateTests({
|
|
|
34
35
|
},
|
|
35
36
|
after: async () => {
|
|
36
37
|
//debug(`<< After`);
|
|
38
|
+
// close the operators the tests opened (one per test) before the server
|
|
39
|
+
for (const op of openedOperators) {
|
|
40
|
+
await op.close();
|
|
41
|
+
}
|
|
37
42
|
await mongoFixtures.close();
|
|
38
43
|
}
|
|
39
44
|
}
|
|
@@ -62,6 +67,7 @@ async function callback(callbackParams: Record<string, any>) {
|
|
|
62
67
|
} = callbackParams;
|
|
63
68
|
|
|
64
69
|
const mongoOperator = await getMongoOperator(mongoFixtures);
|
|
70
|
+
openedOperators.push(mongoOperator);
|
|
65
71
|
const expectedResult = await getFixture('expectedResult.json');
|
|
66
72
|
|
|
67
73
|
await doPreFillDb(preFillDb);
|
|
@@ -7,6 +7,7 @@ import createDebugLogger from 'debug';
|
|
|
7
7
|
import {getMongoOperator, handleError, compareToFirstDbEntry} from './testUtils.ts';
|
|
8
8
|
|
|
9
9
|
let mongoFixtures: any;
|
|
10
|
+
const openedOperators: any[] = [];
|
|
10
11
|
const debug = createDebugLogger('@natlibfi/melinda-rest-api-commons/mongo:check-and-set-import-job-state-test');
|
|
11
12
|
|
|
12
13
|
generateTests({
|
|
@@ -33,6 +34,10 @@ generateTests({
|
|
|
33
34
|
},
|
|
34
35
|
after: async () => {
|
|
35
36
|
//debug(`<< After`);
|
|
37
|
+
// close the operators the tests opened (one per test) before the server
|
|
38
|
+
for (const op of openedOperators) {
|
|
39
|
+
await op.close();
|
|
40
|
+
}
|
|
36
41
|
await mongoFixtures.close();
|
|
37
42
|
}
|
|
38
43
|
}
|
|
@@ -61,6 +66,7 @@ async function callback(callbackParams: Record<string, any>) {
|
|
|
61
66
|
} = callbackParams;
|
|
62
67
|
|
|
63
68
|
const mongoOperator = await getMongoOperator(mongoFixtures);
|
|
69
|
+
openedOperators.push(mongoOperator);
|
|
64
70
|
const expectedResult = await getFixture('expectedResult.json');
|
|
65
71
|
|
|
66
72
|
await doPreFillDb(preFillDb);
|
|
@@ -8,6 +8,7 @@ import {getMongoOperator, handleError, compareToFirstDbEntry} from './testUtils.
|
|
|
8
8
|
|
|
9
9
|
|
|
10
10
|
let mongoFixtures: any;
|
|
11
|
+
const openedOperators: any[] = [];
|
|
11
12
|
const debug = createDebugLogger('@natlibfi/melinda-rest-api-commons/mongo:check-timeout:test');
|
|
12
13
|
|
|
13
14
|
generateTests({
|
|
@@ -34,6 +35,10 @@ generateTests({
|
|
|
34
35
|
},
|
|
35
36
|
after: async () => {
|
|
36
37
|
//debug(`<< After`);
|
|
38
|
+
// close the operators the tests opened (one per test) before the server
|
|
39
|
+
for (const op of openedOperators) {
|
|
40
|
+
await op.close();
|
|
41
|
+
}
|
|
37
42
|
await mongoFixtures.close();
|
|
38
43
|
}
|
|
39
44
|
}
|
|
@@ -62,6 +67,7 @@ async function callback(callbackParams: Record<string, any>) {
|
|
|
62
67
|
} = callbackParams;
|
|
63
68
|
|
|
64
69
|
const mongoOperator = await getMongoOperator(mongoFixtures);
|
|
70
|
+
openedOperators.push(mongoOperator);
|
|
65
71
|
const expectedResult = await getFixture('expectedResult.json');
|
|
66
72
|
|
|
67
73
|
await doPreFillDb(preFillDb);
|
|
@@ -6,6 +6,7 @@ import createDebugLogger from 'debug';
|
|
|
6
6
|
import {getMongoOperator, handleError, compareToFirstDbEntry} from './testUtils.ts';
|
|
7
7
|
|
|
8
8
|
let mongoFixtures: any;
|
|
9
|
+
const openedOperators: any[] = [];
|
|
9
10
|
const debug = createDebugLogger('@natlibfi/melinda-rest-api-commons/mongo:test:create-bulk');
|
|
10
11
|
|
|
11
12
|
generateTests({
|
|
@@ -32,6 +33,10 @@ generateTests({
|
|
|
32
33
|
},
|
|
33
34
|
after: async () => {
|
|
34
35
|
//debug(`<< After`);
|
|
36
|
+
// close the operators the tests opened (one per test) before the server
|
|
37
|
+
for (const op of openedOperators) {
|
|
38
|
+
await op.close();
|
|
39
|
+
}
|
|
35
40
|
await mongoFixtures.close();
|
|
36
41
|
}
|
|
37
42
|
}
|
|
@@ -59,6 +64,7 @@ async function callback(callbackParams: Record<string, any>) {
|
|
|
59
64
|
} = callbackParams;
|
|
60
65
|
|
|
61
66
|
const mongoOperator = await getMongoOperator(mongoFixtures);
|
|
67
|
+
openedOperators.push(mongoOperator);
|
|
62
68
|
const expectedResult = await getFixture('expectedResult.json');
|
|
63
69
|
|
|
64
70
|
await doPreFillDb(preFillDb);
|
|
@@ -7,6 +7,7 @@ import {getMongoOperator, handleError, compareToFirstDbEntry} from './testUtils.
|
|
|
7
7
|
// import {handleError, compareToFirstDbEntry, compareToDbEntry, formatQueueItem, streamToString} from './testUtils.js';
|
|
8
8
|
|
|
9
9
|
let mongoFixtures: any;
|
|
10
|
+
const openedOperators: any[] = [];
|
|
10
11
|
const debug = createDebugLogger('@natlibfi/melinda-rest-api-commons/mongo:create-prio-test');
|
|
11
12
|
|
|
12
13
|
generateTests({
|
|
@@ -33,6 +34,10 @@ generateTests({
|
|
|
33
34
|
},
|
|
34
35
|
after: async () => {
|
|
35
36
|
//debug(`<< After`);
|
|
37
|
+
// close the operators the tests opened (one per test) before the server
|
|
38
|
+
for (const op of openedOperators) {
|
|
39
|
+
await op.close();
|
|
40
|
+
}
|
|
36
41
|
await mongoFixtures.close();
|
|
37
42
|
}
|
|
38
43
|
}
|
|
@@ -58,6 +63,7 @@ async function callback(callbackParams: Record<string, any>) {
|
|
|
58
63
|
} = callbackParams;
|
|
59
64
|
|
|
60
65
|
const mongoOperator = await getMongoOperator(mongoFixtures);
|
|
66
|
+
openedOperators.push(mongoOperator);
|
|
61
67
|
const expectedResult = await getFixture('expectedResult.json');
|
|
62
68
|
|
|
63
69
|
await doPreFillDb(preFillDb);
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import assert from 'node:assert';
|
|
2
|
-
import {test} from 'node:test';
|
|
2
|
+
import {test, after} from 'node:test';
|
|
3
3
|
import {Readable, PassThrough} from 'node:stream';
|
|
4
4
|
import httpStatus from 'http-status';
|
|
5
5
|
import {MongoDriverError} from 'mongodb';
|
|
@@ -9,6 +9,9 @@ import createMongoLog from '../src/mongoLog.ts';
|
|
|
9
9
|
|
|
10
10
|
const DUMMY_URI = 'mongodb://stub:27017/rest-api';
|
|
11
11
|
const COLLECTION = 'foobar';
|
|
12
|
+
// every test creates its own (stubbed) operators; close them all at the
|
|
13
|
+
// end - close is a no-op for stubbed factories, which is the point
|
|
14
|
+
const stubOperators: any[] = [];
|
|
12
15
|
|
|
13
16
|
// the deps seam takes unknown-typed dependencies, so plain stub objects
|
|
14
17
|
// are fine to inject (the driver types are never exercised here)
|
|
@@ -35,7 +38,9 @@ function makeGridFSBucket(overrides: Record<string, any> = {}) {
|
|
|
35
38
|
* @param deps the injected stub operator/gridFSBucket
|
|
36
39
|
*/
|
|
37
40
|
async function makeMongo(deps: Record<string, any>) {
|
|
38
|
-
|
|
41
|
+
const mongo = await createMongo(DUMMY_URI, COLLECTION, 'rest-api', deps);
|
|
42
|
+
stubOperators.push(mongo);
|
|
43
|
+
return mongo;
|
|
39
44
|
}
|
|
40
45
|
|
|
41
46
|
// The 400-guard tests pass intentionally malformed inputs (non-string
|
|
@@ -214,6 +219,88 @@ test('checkTimeOut returns false (no crash) when the queueItem does not exist',
|
|
|
214
219
|
assert.equal(result, false);
|
|
215
220
|
});
|
|
216
221
|
|
|
222
|
+
// checkAndSetState / checkAndSetImportJobState must report a missing item
|
|
223
|
+
// as 'unchanged' (with a null queueItem) — not as a timeout
|
|
224
|
+
|
|
225
|
+
test('checkAndSetState returns {status: "unchanged", queueItem: null} when the queueItem does not exist', async () => {
|
|
226
|
+
const mongo = await makeMongo({
|
|
227
|
+
operator: makeOperator({findOne: async () => null}),
|
|
228
|
+
gridFSBucket: makeGridFSBucket()
|
|
229
|
+
});
|
|
230
|
+
const result = await mongo.checkAndSetState({correlationId: 'NOPE', state: 'VALIDATING'});
|
|
231
|
+
assert.deepStrictEqual(result, {status: 'unchanged', queueItem: null});
|
|
232
|
+
});
|
|
233
|
+
|
|
234
|
+
test('checkAndSetImportJobState returns {status: "unchanged", queueItem: null} when the queueItem does not exist', async () => {
|
|
235
|
+
const mongo = await makeMongo({
|
|
236
|
+
operator: makeOperator({findOne: async () => null}),
|
|
237
|
+
gridFSBucket: makeGridFSBucket()
|
|
238
|
+
});
|
|
239
|
+
const result = await mongo.checkAndSetImportJobState({correlationId: 'NOPE', operation: 'FIX', importJobState: 'DONE'});
|
|
240
|
+
assert.deepStrictEqual(result, {status: 'unchanged', queueItem: null});
|
|
241
|
+
});
|
|
242
|
+
|
|
243
|
+
// a pre-existing ABORT item must be reported as 'unchanged' (not
|
|
244
|
+
// 'timeout', which is reserved for items aborted by checkTimeOut in this
|
|
245
|
+
// call) and the document must be left untouched
|
|
246
|
+
|
|
247
|
+
test('checkAndSetState reports a pre-existing ABORT as "unchanged" without writing', async () => {
|
|
248
|
+
const doc = {correlationId: 'FOO', queueItemState: 'ABORT', errorStatus: 408, errorMessage: 'Timeout in VALIDATING'};
|
|
249
|
+
const writes: unknown[] = [];
|
|
250
|
+
const mongo = await makeMongo({
|
|
251
|
+
operator: makeOperator({
|
|
252
|
+
findOne: async () => doc,
|
|
253
|
+
findOneAndUpdate: async (filter: unknown, update: unknown) => {
|
|
254
|
+
writes.push({filter, update});
|
|
255
|
+
return doc;
|
|
256
|
+
}
|
|
257
|
+
}),
|
|
258
|
+
gridFSBucket: makeGridFSBucket()
|
|
259
|
+
});
|
|
260
|
+
const result = await mongo.checkAndSetState({correlationId: 'FOO', state: 'VALIDATING'});
|
|
261
|
+
assert.deepStrictEqual(result, {status: 'unchanged', queueItem: doc});
|
|
262
|
+
assert.deepStrictEqual(writes, []);
|
|
263
|
+
});
|
|
264
|
+
|
|
265
|
+
test('checkAndSetImportJobState reports a pre-existing ABORT as "unchanged" without writing', async () => {
|
|
266
|
+
const doc = {correlationId: 'FOO', queueItemState: 'ABORT', errorStatus: 408, errorMessage: 'Timeout in VALIDATING'};
|
|
267
|
+
const writes: unknown[] = [];
|
|
268
|
+
const mongo = await makeMongo({
|
|
269
|
+
operator: makeOperator({
|
|
270
|
+
findOne: async () => doc,
|
|
271
|
+
findOneAndUpdate: async (filter: unknown, update: unknown) => {
|
|
272
|
+
writes.push({filter, update});
|
|
273
|
+
return doc;
|
|
274
|
+
}
|
|
275
|
+
}),
|
|
276
|
+
gridFSBucket: makeGridFSBucket()
|
|
277
|
+
});
|
|
278
|
+
const result = await mongo.checkAndSetImportJobState({correlationId: 'FOO', operation: 'FIX', importJobState: 'DONE'});
|
|
279
|
+
assert.deepStrictEqual(result, {status: 'unchanged', queueItem: doc});
|
|
280
|
+
assert.deepStrictEqual(writes, []);
|
|
281
|
+
});
|
|
282
|
+
|
|
283
|
+
// a pre-existing DONE item is terminal too (like ABORT/ERROR) and must be
|
|
284
|
+
// reported as 'unchanged' without touching the document
|
|
285
|
+
|
|
286
|
+
test('checkAndSetState reports a pre-existing DONE as "unchanged" without writing', async () => {
|
|
287
|
+
const doc = {correlationId: 'FOO', queueItemState: 'DONE'};
|
|
288
|
+
const writes: unknown[] = [];
|
|
289
|
+
const mongo = await makeMongo({
|
|
290
|
+
operator: makeOperator({
|
|
291
|
+
findOne: async () => doc,
|
|
292
|
+
findOneAndUpdate: async (filter: unknown, update: unknown) => {
|
|
293
|
+
writes.push({filter, update});
|
|
294
|
+
return doc;
|
|
295
|
+
}
|
|
296
|
+
}),
|
|
297
|
+
gridFSBucket: makeGridFSBucket()
|
|
298
|
+
});
|
|
299
|
+
const result = await mongo.checkAndSetState({correlationId: 'FOO', state: 'VALIDATING'});
|
|
300
|
+
assert.deepStrictEqual(result, {status: 'unchanged', queueItem: doc});
|
|
301
|
+
assert.deepStrictEqual(writes, []);
|
|
302
|
+
});
|
|
303
|
+
|
|
217
304
|
test('setOperation rejects with ApiError 404 for a non-matching correlationId', async () => {
|
|
218
305
|
const mongo = await makeMongo({
|
|
219
306
|
operator: makeOperator({findOne: async () => null}),
|
|
@@ -750,9 +837,17 @@ function makeLogCollection(overrides: Record<string, any> = {}) {
|
|
|
750
837
|
* @param deps the injected stub collection
|
|
751
838
|
*/
|
|
752
839
|
async function makeMongoLog(deps: Record<string, any>) {
|
|
753
|
-
|
|
840
|
+
const mongoLog = await createMongoLog(DUMMY_URI, 'rest-api', deps);
|
|
841
|
+
stubOperators.push(mongoLog);
|
|
842
|
+
return mongoLog;
|
|
754
843
|
}
|
|
755
844
|
|
|
845
|
+
after(async () => {
|
|
846
|
+
for (const op of stubOperators) {
|
|
847
|
+
await op.close();
|
|
848
|
+
}
|
|
849
|
+
});
|
|
850
|
+
|
|
756
851
|
function mongoErrored500(text: string) {
|
|
757
852
|
return (error: unknown) => {
|
|
758
853
|
assert.ok(error instanceof ApiError);
|
|
@@ -8,6 +8,7 @@ import {getMongoOperator, handleError} from './testUtils.ts';
|
|
|
8
8
|
|
|
9
9
|
|
|
10
10
|
let mongoFixtures: any;
|
|
11
|
+
const openedOperators: any[] = [];
|
|
11
12
|
const debug = createDebugLogger('@natlibfi/melinda-rest-api-commons/mongo:get-one:test');
|
|
12
13
|
|
|
13
14
|
generateTests({
|
|
@@ -34,6 +35,10 @@ generateTests({
|
|
|
34
35
|
},
|
|
35
36
|
after: async () => {
|
|
36
37
|
//debug(`<< After`);
|
|
38
|
+
// close the operators the tests opened (one per test) before the server
|
|
39
|
+
for (const op of openedOperators) {
|
|
40
|
+
await op.close();
|
|
41
|
+
}
|
|
37
42
|
await mongoFixtures.close();
|
|
38
43
|
}
|
|
39
44
|
}
|
|
@@ -60,6 +65,7 @@ async function callback(callbackParams: Record<string, any>) {
|
|
|
60
65
|
} = callbackParams;
|
|
61
66
|
|
|
62
67
|
const mongoOperator = await getMongoOperator(mongoFixtures);
|
|
68
|
+
openedOperators.push(mongoOperator);
|
|
63
69
|
//const expectedResult = await getFixture('expectedResult.json');
|
|
64
70
|
|
|
65
71
|
await doPreFillDb(preFillDb);
|
|
@@ -7,6 +7,7 @@ import createDebugLogger from 'debug';
|
|
|
7
7
|
import {getMongoOperator, handleError, streamToString} from './testUtils.ts';
|
|
8
8
|
|
|
9
9
|
let mongoFixtures: any;
|
|
10
|
+
const openedOperators: any[] = [];
|
|
10
11
|
const debug = createDebugLogger('@natlibfi/melinda-rest-api-commons/mongo:get-stream:test');
|
|
11
12
|
|
|
12
13
|
generateTests({
|
|
@@ -33,6 +34,10 @@ generateTests({
|
|
|
33
34
|
},
|
|
34
35
|
after: async () => {
|
|
35
36
|
//debug(`<< After`);
|
|
37
|
+
// close the operators the tests opened (one per test) before the server
|
|
38
|
+
for (const op of openedOperators) {
|
|
39
|
+
await op.close();
|
|
40
|
+
}
|
|
36
41
|
await mongoFixtures.close();
|
|
37
42
|
}
|
|
38
43
|
}
|
|
@@ -60,6 +65,7 @@ async function callback(callbackParams: Record<string, any>) {
|
|
|
60
65
|
} = callbackParams;
|
|
61
66
|
|
|
62
67
|
const mongoOperator = await getMongoOperator(mongoFixtures);
|
|
68
|
+
openedOperators.push(mongoOperator);
|
|
63
69
|
//const expectedResult = await getFixture('expectedResult.json');
|
|
64
70
|
|
|
65
71
|
await doPreFillDb(preFillDb);
|
|
@@ -7,6 +7,7 @@ import {getMongoOperator, handleError, compareToFirstDbEntry} from './testUtils.
|
|
|
7
7
|
|
|
8
8
|
|
|
9
9
|
let mongoFixtures: any;
|
|
10
|
+
const openedOperators: any[] = [];
|
|
10
11
|
const debug = createDebugLogger('@natlibfi/melinda-rest-api-commons/mongo:push-ids:test');
|
|
11
12
|
|
|
12
13
|
generateTests({
|
|
@@ -33,6 +34,10 @@ generateTests({
|
|
|
33
34
|
},
|
|
34
35
|
after: async () => {
|
|
35
36
|
//debug(`<< After`);
|
|
37
|
+
// close the operators the tests opened (one per test) before the server
|
|
38
|
+
for (const op of openedOperators) {
|
|
39
|
+
await op.close();
|
|
40
|
+
}
|
|
36
41
|
await mongoFixtures.close();
|
|
37
42
|
}
|
|
38
43
|
}
|
|
@@ -59,6 +64,7 @@ async function callback(callbackParams: Record<string, any>) {
|
|
|
59
64
|
} = callbackParams;
|
|
60
65
|
|
|
61
66
|
const mongoOperator = await getMongoOperator(mongoFixtures);
|
|
67
|
+
openedOperators.push(mongoOperator);
|
|
62
68
|
const expectedResult = await getFixture('expectedResult.json');
|
|
63
69
|
|
|
64
70
|
await doPreFillDb(preFillDb);
|
|
@@ -7,6 +7,7 @@ import createDebugLogger from 'debug';
|
|
|
7
7
|
import {getMongoOperator, handleError, compareToFirstDbEntry} from './testUtils.ts';
|
|
8
8
|
|
|
9
9
|
let mongoFixtures: any;
|
|
10
|
+
const openedOperators: any[] = [];
|
|
10
11
|
const debug = createDebugLogger('@natlibfi/melinda-rest-api-commons/mongo:push-messages:test');
|
|
11
12
|
|
|
12
13
|
generateTests({
|
|
@@ -33,6 +34,10 @@ generateTests({
|
|
|
33
34
|
},
|
|
34
35
|
after: async () => {
|
|
35
36
|
//debug(`<< After`);
|
|
37
|
+
// close the operators the tests opened (one per test) before the server
|
|
38
|
+
for (const op of openedOperators) {
|
|
39
|
+
await op.close();
|
|
40
|
+
}
|
|
36
41
|
await mongoFixtures.close();
|
|
37
42
|
}
|
|
38
43
|
}
|
|
@@ -59,6 +64,7 @@ async function callback(callbackParams: Record<string, any>) {
|
|
|
59
64
|
} = callbackParams;
|
|
60
65
|
|
|
61
66
|
const mongoOperator = await getMongoOperator(mongoFixtures);
|
|
67
|
+
openedOperators.push(mongoOperator);
|
|
62
68
|
const expectedResult = await getFixture('expectedResult.json');
|
|
63
69
|
|
|
64
70
|
await doPreFillDb(preFillDb);
|
|
@@ -8,6 +8,7 @@ import {getMongoOperator, handleError, compareToDbEntry, formatQueueItem} from '
|
|
|
8
8
|
|
|
9
9
|
|
|
10
10
|
let mongoFixtures: any;
|
|
11
|
+
const openedOperators: any[] = [];
|
|
11
12
|
const debug = createDebugLogger('@natlibfi/melinda-rest-api-commons/mongo:query-by-id:test');
|
|
12
13
|
|
|
13
14
|
generateTests({
|
|
@@ -34,6 +35,10 @@ generateTests({
|
|
|
34
35
|
},
|
|
35
36
|
after: async () => {
|
|
36
37
|
//debug(`<< After`);
|
|
38
|
+
// close the operators the tests opened (one per test) before the server
|
|
39
|
+
for (const op of openedOperators) {
|
|
40
|
+
await op.close();
|
|
41
|
+
}
|
|
37
42
|
await mongoFixtures.close();
|
|
38
43
|
}
|
|
39
44
|
}
|
|
@@ -63,6 +68,7 @@ async function callback(callbackParams: Record<string, any>) {
|
|
|
63
68
|
} = callbackParams;
|
|
64
69
|
|
|
65
70
|
const mongoOperator = await getMongoOperator(mongoFixtures);
|
|
71
|
+
openedOperators.push(mongoOperator);
|
|
66
72
|
const expectedResult = await getFixture('expectedResult.json');
|
|
67
73
|
|
|
68
74
|
await doPreFillDb(preFillDb);
|
package/test/mongo-query.test.ts
CHANGED
|
@@ -7,6 +7,7 @@ import createDebugLogger from 'debug';
|
|
|
7
7
|
import {getMongoOperator, handleError} from './testUtils.ts';
|
|
8
8
|
|
|
9
9
|
let mongoFixtures: any;
|
|
10
|
+
const openedOperators: any[] = [];
|
|
10
11
|
const debug = createDebugLogger('@natlibfi/melinda-rest-api-commons/mongo:test');
|
|
11
12
|
|
|
12
13
|
generateTests({
|
|
@@ -33,6 +34,10 @@ generateTests({
|
|
|
33
34
|
},
|
|
34
35
|
after: async () => {
|
|
35
36
|
//debug(`<< After`);
|
|
37
|
+
// close the operators the tests opened (one per test) before the server
|
|
38
|
+
for (const op of openedOperators) {
|
|
39
|
+
await op.close();
|
|
40
|
+
}
|
|
36
41
|
await mongoFixtures.close();
|
|
37
42
|
}
|
|
38
43
|
}
|
|
@@ -59,6 +64,7 @@ async function callback(callbackParams: Record<string, any>) {
|
|
|
59
64
|
} = callbackParams;
|
|
60
65
|
|
|
61
66
|
const mongoOperator = await getMongoOperator(mongoFixtures);
|
|
67
|
+
openedOperators.push(mongoOperator);
|
|
62
68
|
//const expectedResult = await getFixture('expectedResult.json');
|
|
63
69
|
|
|
64
70
|
await doPreFillDb(preFillDb);
|
|
@@ -8,6 +8,7 @@ import {getMongoOperator, handleError, streamToString} from './testUtils.ts';
|
|
|
8
8
|
|
|
9
9
|
|
|
10
10
|
let mongoFixtures: any;
|
|
11
|
+
const openedOperators: any[] = [];
|
|
11
12
|
const debug = createDebugLogger('@natlibfi/melinda-rest-api-commons/mongo:read-content:test');
|
|
12
13
|
|
|
13
14
|
generateTests({
|
|
@@ -34,6 +35,10 @@ generateTests({
|
|
|
34
35
|
},
|
|
35
36
|
after: async () => {
|
|
36
37
|
//debug(`<< After`);
|
|
38
|
+
// close the operators the tests opened (one per test) before the server
|
|
39
|
+
for (const op of openedOperators) {
|
|
40
|
+
await op.close();
|
|
41
|
+
}
|
|
37
42
|
await mongoFixtures.close();
|
|
38
43
|
}
|
|
39
44
|
}
|
|
@@ -61,6 +66,7 @@ async function callback(callbackParams: Record<string, any>) {
|
|
|
61
66
|
} = callbackParams;
|
|
62
67
|
|
|
63
68
|
const mongoOperator = await getMongoOperator(mongoFixtures);
|
|
69
|
+
openedOperators.push(mongoOperator);
|
|
64
70
|
//const expectedResult = await getFixture('expectedResult.json');
|
|
65
71
|
|
|
66
72
|
await doPreFillDb(preFillDb);
|
|
@@ -8,6 +8,7 @@ import {getMongoOperator, handleError, compareToFirstDbEntry} from './testUtils.
|
|
|
8
8
|
|
|
9
9
|
|
|
10
10
|
let mongoFixtures: any;
|
|
11
|
+
const openedOperators: any[] = [];
|
|
11
12
|
const debug = createDebugLogger('@natlibfi/melinda-rest-api-commons/mongo:remove:test');
|
|
12
13
|
|
|
13
14
|
generateTests({
|
|
@@ -34,6 +35,10 @@ generateTests({
|
|
|
34
35
|
},
|
|
35
36
|
after: async () => {
|
|
36
37
|
//debug(`<< After`);
|
|
38
|
+
// close the operators the tests opened (one per test) before the server
|
|
39
|
+
for (const op of openedOperators) {
|
|
40
|
+
await op.close();
|
|
41
|
+
}
|
|
37
42
|
await mongoFixtures.close();
|
|
38
43
|
}
|
|
39
44
|
}
|
|
@@ -64,6 +69,7 @@ async function callback(callbackParams: Record<string, any>) {
|
|
|
64
69
|
} = callbackParams;
|
|
65
70
|
|
|
66
71
|
const mongoOperator = await getMongoOperator(mongoFixtures);
|
|
72
|
+
openedOperators.push(mongoOperator);
|
|
67
73
|
const expectedResult = await getFixture('expectedResult.json');
|
|
68
74
|
|
|
69
75
|
await doPreFillDb(preFillDb);
|
|
@@ -7,6 +7,7 @@ import createDebugLogger from 'debug';
|
|
|
7
7
|
import {getMongoOperator, handleError, compareToFirstDbEntry} from './testUtils.ts';
|
|
8
8
|
|
|
9
9
|
let mongoFixtures: any;
|
|
10
|
+
const openedOperators: any[] = [];
|
|
10
11
|
const debug = createDebugLogger('@natlibfi/melinda-rest-api-commons/mongo:set-blob-size:test');
|
|
11
12
|
|
|
12
13
|
generateTests({
|
|
@@ -33,6 +34,10 @@ generateTests({
|
|
|
33
34
|
},
|
|
34
35
|
after: async () => {
|
|
35
36
|
//debug(`<< After`);
|
|
37
|
+
// close the operators the tests opened (one per test) before the server
|
|
38
|
+
for (const op of openedOperators) {
|
|
39
|
+
await op.close();
|
|
40
|
+
}
|
|
36
41
|
await mongoFixtures.close();
|
|
37
42
|
}
|
|
38
43
|
}
|
|
@@ -59,6 +64,7 @@ async function callback(callbackParams: Record<string, any>) {
|
|
|
59
64
|
} = callbackParams;
|
|
60
65
|
|
|
61
66
|
const mongoOperator = await getMongoOperator(mongoFixtures);
|
|
67
|
+
openedOperators.push(mongoOperator);
|
|
62
68
|
const expectedResult = await getFixture('expectedResult.json');
|
|
63
69
|
|
|
64
70
|
await doPreFillDb(preFillDb);
|
|
@@ -8,6 +8,7 @@ import {getMongoOperator, handleError, compareToFirstDbEntry} from './testUtils.
|
|
|
8
8
|
|
|
9
9
|
|
|
10
10
|
let mongoFixtures: any;
|
|
11
|
+
const openedOperators: any[] = [];
|
|
11
12
|
const debug = createDebugLogger('@natlibfi/melinda-rest-api-commons/mongo:set-import-job-state:test');
|
|
12
13
|
|
|
13
14
|
generateTests({
|
|
@@ -34,6 +35,10 @@ generateTests({
|
|
|
34
35
|
},
|
|
35
36
|
after: async () => {
|
|
36
37
|
//debug(`<< After`);
|
|
38
|
+
// close the operators the tests opened (one per test) before the server
|
|
39
|
+
for (const op of openedOperators) {
|
|
40
|
+
await op.close();
|
|
41
|
+
}
|
|
37
42
|
await mongoFixtures.close();
|
|
38
43
|
}
|
|
39
44
|
}
|
|
@@ -60,6 +65,7 @@ async function callback(callbackParams: Record<string, any>) {
|
|
|
60
65
|
} = callbackParams;
|
|
61
66
|
|
|
62
67
|
const mongoOperator = await getMongoOperator(mongoFixtures);
|
|
68
|
+
openedOperators.push(mongoOperator);
|
|
63
69
|
const expectedResult = await getFixture('expectedResult.json');
|
|
64
70
|
|
|
65
71
|
await doPreFillDb(preFillDb);
|
|
@@ -7,6 +7,7 @@ import createDebugLogger from 'debug';
|
|
|
7
7
|
import {getMongoOperator, handleError, compareToFirstDbEntry} from './testUtils.ts';
|
|
8
8
|
|
|
9
9
|
let mongoFixtures: any;
|
|
10
|
+
const openedOperators: any[] = [];
|
|
10
11
|
const debug = createDebugLogger('@natlibfi/melinda-rest-api-commons/mongo:set-operation:test');
|
|
11
12
|
|
|
12
13
|
generateTests({
|
|
@@ -33,6 +34,10 @@ generateTests({
|
|
|
33
34
|
},
|
|
34
35
|
after: async () => {
|
|
35
36
|
//debug(`<< After`);
|
|
37
|
+
// close the operators the tests opened (one per test) before the server
|
|
38
|
+
for (const op of openedOperators) {
|
|
39
|
+
await op.close();
|
|
40
|
+
}
|
|
36
41
|
await mongoFixtures.close();
|
|
37
42
|
}
|
|
38
43
|
}
|
|
@@ -59,6 +64,7 @@ async function callback(callbackParams: Record<string, any>) {
|
|
|
59
64
|
} = callbackParams;
|
|
60
65
|
|
|
61
66
|
const mongoOperator = await getMongoOperator(mongoFixtures);
|
|
67
|
+
openedOperators.push(mongoOperator);
|
|
62
68
|
const expectedResult = await getFixture('expectedResult.json');
|
|
63
69
|
|
|
64
70
|
await doPreFillDb(preFillDb);
|
|
@@ -7,6 +7,7 @@ import createDebugLogger from 'debug';
|
|
|
7
7
|
import {getMongoOperator, handleError, compareToFirstDbEntry} from './testUtils.ts';
|
|
8
8
|
|
|
9
9
|
let mongoFixtures: any;
|
|
10
|
+
const openedOperators: any[] = [];
|
|
10
11
|
const debug = createDebugLogger('@natlibfi/melinda-rest-api-commons/mongo:set-operations:test');
|
|
11
12
|
|
|
12
13
|
generateTests({
|
|
@@ -33,6 +34,10 @@ generateTests({
|
|
|
33
34
|
},
|
|
34
35
|
after: async () => {
|
|
35
36
|
//debug(`<< After`);
|
|
37
|
+
// close the operators the tests opened (one per test) before the server
|
|
38
|
+
for (const op of openedOperators) {
|
|
39
|
+
await op.close();
|
|
40
|
+
}
|
|
36
41
|
await mongoFixtures.close();
|
|
37
42
|
}
|
|
38
43
|
}
|
|
@@ -59,6 +64,7 @@ async function callback(callbackParams: Record<string, any>) {
|
|
|
59
64
|
} = callbackParams;
|
|
60
65
|
|
|
61
66
|
const mongoOperator = await getMongoOperator(mongoFixtures);
|
|
67
|
+
openedOperators.push(mongoOperator);
|
|
62
68
|
const expectedResult = await getFixture('expectedResult.json');
|
|
63
69
|
|
|
64
70
|
await doPreFillDb(preFillDb);
|
|
@@ -8,6 +8,7 @@ import {getMongoOperator, handleError, compareToFirstDbEntry} from './testUtils.
|
|
|
8
8
|
|
|
9
9
|
|
|
10
10
|
let mongoFixtures: any;
|
|
11
|
+
const openedOperators: any[] = [];
|
|
11
12
|
const debug = createDebugLogger('@natlibfi/melinda-rest-api-commons/mongo:set-state:test');
|
|
12
13
|
|
|
13
14
|
generateTests({
|
|
@@ -34,6 +35,10 @@ generateTests({
|
|
|
34
35
|
},
|
|
35
36
|
after: async () => {
|
|
36
37
|
//debug(`<< After`);
|
|
38
|
+
// close the operators the tests opened (one per test) before the server
|
|
39
|
+
for (const op of openedOperators) {
|
|
40
|
+
await op.close();
|
|
41
|
+
}
|
|
37
42
|
await mongoFixtures.close();
|
|
38
43
|
}
|
|
39
44
|
}
|
|
@@ -60,6 +65,7 @@ async function callback(callbackParams: Record<string, any>) {
|
|
|
60
65
|
} = callbackParams;
|
|
61
66
|
|
|
62
67
|
const mongoOperator = await getMongoOperator(mongoFixtures);
|
|
68
|
+
openedOperators.push(mongoOperator);
|
|
63
69
|
const expectedResult = await getFixture('expectedResult.json');
|
|
64
70
|
|
|
65
71
|
await doPreFillDb(preFillDb);
|
package/test/mongoLog.test.ts
CHANGED
|
@@ -6,6 +6,7 @@ import mongoFixturesFactory from '@natlibfi/fixura-mongo';
|
|
|
6
6
|
import createMongoLogOperator from '../src/mongoLog.ts';
|
|
7
7
|
|
|
8
8
|
let mongoFixtures: any;
|
|
9
|
+
const openedOperators: any[] = [];
|
|
9
10
|
|
|
10
11
|
generateTests({
|
|
11
12
|
callback,
|
|
@@ -23,6 +24,10 @@ generateTests({
|
|
|
23
24
|
beforeEach: () => mongoFixtures.clear(),
|
|
24
25
|
afterEach: () => mongoFixtures.clear(),
|
|
25
26
|
after: async () => {
|
|
27
|
+
// close the operators the tests opened (one per test) before the server
|
|
28
|
+
for (const op of openedOperators) {
|
|
29
|
+
await op.close();
|
|
30
|
+
}
|
|
26
31
|
await mongoFixtures.close();
|
|
27
32
|
}
|
|
28
33
|
}
|
|
@@ -58,6 +63,7 @@ async function callback(callbackParams: Record<string, any>) {
|
|
|
58
63
|
} = callbackParams;
|
|
59
64
|
const mongoUri = await mongoFixtures.getUri();
|
|
60
65
|
const mongoLogOperator = await createMongoLogOperator(mongoUri, '');
|
|
66
|
+
openedOperators.push(mongoLogOperator);
|
|
61
67
|
const expectedResult = expectError ? undefined : await getFixture('expectedResult.json');
|
|
62
68
|
|
|
63
69
|
if (expectError) {
|