@webda/core 2.0.0-beta.1 → 2.0.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/lib/application.d.ts +9 -21
- package/lib/application.js +71 -84
- package/lib/application.js.map +1 -1
- package/lib/application.spec.js +121 -140
- package/lib/application.spec.js.map +1 -1
- package/lib/core.d.ts +86 -46
- package/lib/core.js +254 -316
- package/lib/core.js.map +1 -1
- package/lib/core.spec.js +326 -391
- package/lib/core.spec.js.map +1 -1
- package/lib/index.d.ts +49 -45
- package/lib/index.js +54 -67
- package/lib/index.js.map +1 -1
- package/lib/models/aclmodel.d.ts +2 -2
- package/lib/models/aclmodel.js +63 -90
- package/lib/models/aclmodel.js.map +1 -1
- package/lib/models/aclmodel.spec.js +127 -151
- package/lib/models/aclmodel.spec.js.map +1 -1
- package/lib/models/coremodel.d.ts +84 -11
- package/lib/models/coremodel.js +104 -103
- package/lib/models/coremodel.js.map +1 -1
- package/lib/models/coremodel.spec.js +91 -91
- package/lib/models/coremodel.spec.js.map +1 -1
- package/lib/models/deployment.js +1 -2
- package/lib/models/ident.d.ts +5 -3
- package/lib/models/ident.js +4 -9
- package/lib/models/ident.js.map +1 -1
- package/lib/models/ident.spec.js +9 -11
- package/lib/models/ident.spec.js.map +1 -1
- package/lib/models/ownermodel.d.ts +12 -2
- package/lib/models/ownermodel.js +54 -62
- package/lib/models/ownermodel.js.map +1 -1
- package/lib/models/ownermodel.spec.js +129 -152
- package/lib/models/ownermodel.spec.js.map +1 -1
- package/lib/models/rolemodel.d.ts +2 -2
- package/lib/models/rolemodel.js +24 -40
- package/lib/models/rolemodel.js.map +1 -1
- package/lib/models/rolemodel.spec.js +44 -61
- package/lib/models/rolemodel.spec.js.map +1 -1
- package/lib/models/user.d.ts +5 -5
- package/lib/models/user.js +3 -8
- package/lib/models/user.js.map +1 -1
- package/lib/models/user.spec.js +14 -16
- package/lib/models/user.spec.js.map +1 -1
- package/lib/queues/filequeue.d.ts +2 -2
- package/lib/queues/filequeue.js +72 -93
- package/lib/queues/filequeue.js.map +1 -1
- package/lib/queues/filequeue.spec.js +53 -70
- package/lib/queues/filequeue.spec.js.map +1 -1
- package/lib/queues/memoryqueue.d.ts +2 -2
- package/lib/queues/memoryqueue.js +37 -61
- package/lib/queues/memoryqueue.js.map +1 -1
- package/lib/queues/memoryqueue.spec.js +142 -165
- package/lib/queues/memoryqueue.spec.js.map +1 -1
- package/lib/queues/pubsubservice.d.ts +2 -2
- package/lib/queues/pubsubservice.js +3 -7
- package/lib/queues/pubsubservice.js.map +1 -1
- package/lib/queues/queue.spec.d.ts +1 -1
- package/lib/queues/queue.spec.js +42 -56
- package/lib/queues/queue.spec.js.map +1 -1
- package/lib/queues/queueservice.d.ts +4 -4
- package/lib/queues/queueservice.js +52 -67
- package/lib/queues/queueservice.js.map +1 -1
- package/lib/router.d.ts +7 -3
- package/lib/router.js +49 -48
- package/lib/router.js.map +1 -1
- package/lib/router.spec.js +64 -61
- package/lib/router.spec.js.map +1 -1
- package/lib/services/asyncevents.d.ts +2 -2
- package/lib/services/asyncevents.js +44 -64
- package/lib/services/asyncevents.js.map +1 -1
- package/lib/services/asyncevents.spec.js +81 -98
- package/lib/services/asyncevents.spec.js.map +1 -1
- package/lib/services/authentication.d.ts +28 -19
- package/lib/services/authentication.js +539 -571
- package/lib/services/authentication.js.map +1 -1
- package/lib/services/authentication.spec.js +411 -447
- package/lib/services/authentication.spec.js.map +1 -1
- package/lib/services/binary.d.ts +8 -6
- package/lib/services/binary.js +212 -244
- package/lib/services/binary.js.map +1 -1
- package/lib/services/binary.spec.d.ts +3 -3
- package/lib/services/binary.spec.js +390 -443
- package/lib/services/binary.spec.js.map +1 -1
- package/lib/services/cloudbinary.d.ts +3 -3
- package/lib/services/cloudbinary.js +46 -71
- package/lib/services/cloudbinary.js.map +1 -1
- package/lib/services/cloudbinary.spec.d.ts +3 -3
- package/lib/services/cloudbinary.spec.js +133 -162
- package/lib/services/cloudbinary.spec.js.map +1 -1
- package/lib/services/configuration.d.ts +6 -3
- package/lib/services/configuration.js +78 -103
- package/lib/services/configuration.js.map +1 -1
- package/lib/services/configuration.spec.js +63 -83
- package/lib/services/configuration.spec.js.map +1 -1
- package/lib/services/cron.d.ts +3 -2
- package/lib/services/cron.js +9 -13
- package/lib/services/cron.js.map +1 -1
- package/lib/services/cron.spec.js +18 -21
- package/lib/services/cron.spec.js.map +1 -1
- package/lib/services/cryptoservice.d.ts +258 -0
- package/lib/services/cryptoservice.js +312 -0
- package/lib/services/cryptoservice.js.map +1 -0
- package/lib/services/cryptoservice.spec.d.ts +1 -0
- package/lib/services/cryptoservice.spec.js +137 -0
- package/lib/services/cryptoservice.spec.js.map +1 -0
- package/lib/services/debugmailer.d.ts +1 -1
- package/lib/services/debugmailer.js +13 -34
- package/lib/services/debugmailer.js.map +1 -1
- package/lib/services/debugmailer.spec.js +16 -29
- package/lib/services/debugmailer.spec.js.map +1 -1
- package/lib/services/echo.d.ts +2 -2
- package/lib/services/echo.js +15 -31
- package/lib/services/echo.js.map +1 -1
- package/lib/services/echo.spec.js +27 -40
- package/lib/services/echo.spec.js.map +1 -1
- package/lib/services/filebinary.d.ts +15 -5
- package/lib/services/filebinary.js +171 -200
- package/lib/services/filebinary.js.map +1 -1
- package/lib/services/filebinary.spec.d.ts +2 -1
- package/lib/services/filebinary.spec.js +106 -117
- package/lib/services/filebinary.spec.js.map +1 -1
- package/lib/services/fileconfiguration.d.ts +2 -2
- package/lib/services/fileconfiguration.js +25 -43
- package/lib/services/fileconfiguration.js.map +1 -1
- package/lib/services/fileconfiguration.spec.js +79 -109
- package/lib/services/fileconfiguration.spec.js.map +1 -1
- package/lib/services/invitationservice.d.ts +9 -9
- package/lib/services/invitationservice.js +275 -313
- package/lib/services/invitationservice.js.map +1 -1
- package/lib/services/invitationservice.spec.js +442 -448
- package/lib/services/invitationservice.spec.js.map +1 -1
- package/lib/services/kubernetesconfiguration.d.ts +2 -2
- package/lib/services/kubernetesconfiguration.js +41 -59
- package/lib/services/kubernetesconfiguration.js.map +1 -1
- package/lib/services/kubernetesconfiguration.spec.js +80 -98
- package/lib/services/kubernetesconfiguration.spec.js.map +1 -1
- package/lib/services/mailer.d.ts +4 -4
- package/lib/services/mailer.js +62 -86
- package/lib/services/mailer.js.map +1 -1
- package/lib/services/mailer.spec.js +86 -127
- package/lib/services/mailer.spec.js.map +1 -1
- package/lib/services/notificationservice.d.ts +4 -4
- package/lib/services/notificationservice.js +23 -42
- package/lib/services/notificationservice.js.map +1 -1
- package/lib/services/notificationservice.spec.js +47 -73
- package/lib/services/notificationservice.spec.js.map +1 -1
- package/lib/services/oauth.d.ts +32 -6
- package/lib/services/oauth.js +73 -78
- package/lib/services/oauth.js.map +1 -1
- package/lib/services/oauth.spec.js +128 -147
- package/lib/services/oauth.spec.js.map +1 -1
- package/lib/services/proxy.d.ts +74 -0
- package/lib/services/proxy.js +126 -0
- package/lib/services/proxy.js.map +1 -0
- package/lib/services/proxy.spec.d.ts +1 -0
- package/lib/services/proxy.spec.js +59 -0
- package/lib/services/proxy.spec.js.map +1 -0
- package/lib/services/resource.d.ts +2 -2
- package/lib/services/resource.js +12 -18
- package/lib/services/resource.js.map +1 -1
- package/lib/services/resource.spec.js +67 -99
- package/lib/services/resource.spec.js.map +1 -1
- package/lib/services/service.d.ts +33 -7
- package/lib/services/service.js +74 -42
- package/lib/services/service.js.map +1 -1
- package/lib/services/service.spec.js +62 -67
- package/lib/services/service.spec.js.map +1 -1
- package/lib/services/version.d.ts +1 -1
- package/lib/services/version.js +3 -8
- package/lib/services/version.js.map +1 -1
- package/lib/services/version.spec.js +11 -24
- package/lib/services/version.spec.js.map +1 -1
- package/lib/stores/aggregator.d.ts +3 -3
- package/lib/stores/aggregator.js +37 -57
- package/lib/stores/aggregator.js.map +1 -1
- package/lib/stores/file.d.ts +3 -3
- package/lib/stores/file.js +93 -131
- package/lib/stores/file.js.map +1 -1
- package/lib/stores/file.spec.d.ts +2 -2
- package/lib/stores/file.spec.js +261 -289
- package/lib/stores/file.spec.js.map +1 -1
- package/lib/stores/mapper.d.ts +4 -4
- package/lib/stores/mapper.js +112 -137
- package/lib/stores/mapper.js.map +1 -1
- package/lib/stores/mapper.spec.js +131 -150
- package/lib/stores/mapper.spec.js.map +1 -1
- package/lib/stores/memory.d.ts +67 -6
- package/lib/stores/memory.js +155 -117
- package/lib/stores/memory.js.map +1 -1
- package/lib/stores/memory.spec.d.ts +3 -2
- package/lib/stores/memory.spec.js +127 -105
- package/lib/stores/memory.spec.js.map +1 -1
- package/lib/stores/store.d.ts +35 -15
- package/lib/stores/store.js +839 -821
- package/lib/stores/store.js.map +1 -1
- package/lib/stores/store.spec.d.ts +6 -4
- package/lib/stores/store.spec.js +627 -647
- package/lib/stores/store.spec.js.map +1 -1
- package/lib/stores/webdaql/WebdaQLLexer.d.ts +4 -4
- package/lib/stores/webdaql/WebdaQLLexer.js +9 -13
- package/lib/stores/webdaql/WebdaQLLexer.js.map +1 -1
- package/lib/stores/webdaql/WebdaQLParserLexer.d.ts +4 -4
- package/lib/stores/webdaql/WebdaQLParserLexer.js +9 -13
- package/lib/stores/webdaql/WebdaQLParserLexer.js.map +1 -1
- package/lib/stores/webdaql/WebdaQLParserListener.d.ts +2 -2
- package/lib/stores/webdaql/WebdaQLParserListener.js +1 -2
- package/lib/stores/webdaql/WebdaQLParserListener.js.map +1 -1
- package/lib/stores/webdaql/WebdaQLParserParser.d.ts +10 -10
- package/lib/stores/webdaql/WebdaQLParserParser.js +62 -91
- package/lib/stores/webdaql/WebdaQLParserParser.js.map +1 -1
- package/lib/stores/webdaql/WebdaQLParserVisitor.d.ts +2 -2
- package/lib/stores/webdaql/WebdaQLParserVisitor.js +1 -2
- package/lib/stores/webdaql/WebdaQLParserVisitor.js.map +1 -1
- package/lib/stores/webdaql/query.d.ts +4 -5
- package/lib/stores/webdaql/query.js +16 -19
- package/lib/stores/webdaql/query.js.map +1 -1
- package/lib/stores/webdaql/query.spec.js +30 -32
- package/lib/stores/webdaql/query.spec.js.map +1 -1
- package/lib/test.d.ts +3 -3
- package/lib/test.js +74 -94
- package/lib/test.js.map +1 -1
- package/lib/unpackedapplication.d.ts +1 -1
- package/lib/unpackedapplication.js +25 -31
- package/lib/unpackedapplication.js.map +1 -1
- package/lib/utils/abstractdeployer.js +1 -5
- package/lib/utils/abstractdeployer.js.map +1 -1
- package/lib/utils/abstractdeployer.spec.js +6 -8
- package/lib/utils/abstractdeployer.spec.js.map +1 -1
- package/lib/utils/context.d.ts +61 -29
- package/lib/utils/context.js +133 -127
- package/lib/utils/context.js.map +1 -1
- package/lib/utils/context.spec.js +147 -153
- package/lib/utils/context.spec.js.map +1 -1
- package/lib/utils/cookie.d.ts +66 -45
- package/lib/utils/cookie.js +69 -158
- package/lib/utils/cookie.js.map +1 -1
- package/lib/utils/cookie.spec.js +220 -238
- package/lib/utils/cookie.spec.js.map +1 -1
- package/lib/utils/esm.d.ts +4 -0
- package/lib/utils/esm.js +10 -0
- package/lib/utils/esm.js.map +1 -0
- package/lib/utils/httpcontext.d.ts +37 -9
- package/lib/utils/httpcontext.js +86 -57
- package/lib/utils/httpcontext.js.map +1 -1
- package/lib/utils/httpcontext.spec.js +37 -48
- package/lib/utils/httpcontext.spec.js.map +1 -1
- package/lib/utils/logger.d.ts +2 -2
- package/lib/utils/logger.js +15 -28
- package/lib/utils/logger.js.map +1 -1
- package/lib/utils/logger.spec.js +9 -11
- package/lib/utils/logger.spec.js.map +1 -1
- package/lib/utils/serializers.js +17 -20
- package/lib/utils/serializers.js.map +1 -1
- package/lib/utils/serializers.spec.js +43 -44
- package/lib/utils/serializers.spec.js.map +1 -1
- package/lib/utils/session.d.ts +120 -0
- package/lib/utils/session.js +155 -0
- package/lib/utils/session.js.map +1 -0
- package/lib/utils/session.spec.d.ts +1 -0
- package/lib/utils/session.spec.js +66 -0
- package/lib/utils/session.spec.js.map +1 -0
- package/lib/utils/waiter.d.ts +1 -1
- package/lib/utils/waiter.js +32 -52
- package/lib/utils/waiter.js.map +1 -1
- package/lib/utils/waiter.spec.js +75 -92
- package/lib/utils/waiter.spec.js.map +1 -1
- package/package.json +22 -14
- package/test/config-invitation.json +1 -3
- package/test/config.json +3 -3
- package/test/config.old.json +1 -2
- package/test/moddas/annotatedservice.js +5 -5
- package/test/moddas/debugmailer.js +2 -3
- package/test/moddas/fakeservice.js +2 -3
- package/test/moddas/voidstore.js +6 -4
- package/test/models/ident.js +2 -6
- package/test/models/task.js +3 -7
- package/test/package.json +2 -1
- package/webda.module.json +956 -188
|
@@ -1,102 +1,87 @@
|
|
|
1
|
-
"use strict";
|
|
2
1
|
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
2
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
3
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
4
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
5
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
6
|
};
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
-
exports.MemoryStoreTest = void 0;
|
|
19
|
-
const mocha_1 = require("@testdeck/mocha");
|
|
20
|
-
const assert = require("assert");
|
|
21
|
-
const httpcontext_1 = require("../utils/httpcontext");
|
|
22
|
-
const store_1 = require("./store");
|
|
23
|
-
const store_spec_1 = require("./store.spec");
|
|
24
|
-
const query_1 = require("./webdaql/query");
|
|
25
|
-
let MemoryStoreTest = class MemoryStoreTest extends store_spec_1.StoreTest {
|
|
7
|
+
import { suite, test } from "@testdeck/mocha";
|
|
8
|
+
import * as assert from "assert";
|
|
9
|
+
import { existsSync, unlinkSync } from "fs";
|
|
10
|
+
import { HttpContext } from "../utils/httpcontext.js";
|
|
11
|
+
import { JSONUtils } from "../utils/serializers.js";
|
|
12
|
+
import { StoreNotFoundError } from "./store.js";
|
|
13
|
+
import { PermissionModel, StoreTest } from "./store.spec.js";
|
|
14
|
+
import { WebdaQL } from "./webdaql/query.js";
|
|
15
|
+
let MemoryStoreTest = class MemoryStoreTest extends StoreTest {
|
|
26
16
|
getIdentStore() {
|
|
27
17
|
// Need to slow down the _get
|
|
28
18
|
let store = this.getService("MemoryIdents");
|
|
29
19
|
let original = store._get.bind(store);
|
|
30
|
-
store._get = (...args) =>
|
|
31
|
-
|
|
20
|
+
store._get = async (...args) => {
|
|
21
|
+
await this.sleep(1);
|
|
32
22
|
return original(...args);
|
|
33
|
-
}
|
|
23
|
+
};
|
|
34
24
|
return store;
|
|
35
25
|
}
|
|
36
26
|
getUserStore() {
|
|
37
27
|
return this.getService("MemoryUsers");
|
|
38
28
|
}
|
|
39
|
-
getIndex() {
|
|
40
|
-
return
|
|
41
|
-
return this.getService("memoryaggregators").get("index");
|
|
42
|
-
});
|
|
29
|
+
async getIndex() {
|
|
30
|
+
return this.getService("memoryaggregators").get("index");
|
|
43
31
|
}
|
|
44
|
-
recreateIndex() {
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
yield this.getService("memoryidentsindexer").createAggregate();
|
|
49
|
-
});
|
|
32
|
+
async recreateIndex() {
|
|
33
|
+
let store = this.getService("memoryaggregators");
|
|
34
|
+
await store.__clean();
|
|
35
|
+
await this.getService("memoryidentsindexer").createAggregate();
|
|
50
36
|
}
|
|
51
|
-
deleteAsyncHttp() {
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
test: "ok"
|
|
59
|
-
});
|
|
60
|
-
yield identStore.delete("toDelete");
|
|
61
|
-
executor = this.getExecutor(ctx, "test.webda.io", "GET", "/memory/idents/toDelete");
|
|
62
|
-
assert.notStrictEqual(executor, undefined);
|
|
63
|
-
yield assert.rejects(() => executor.execute(ctx), err => err == 404);
|
|
64
|
-
executor = this.getExecutor(ctx, "test.webda.io", "PUT", "/memory/idents/toDelete");
|
|
65
|
-
assert.notStrictEqual(executor, undefined);
|
|
66
|
-
yield assert.rejects(() => executor.execute(ctx), err => err == 404);
|
|
67
|
-
executor = this.getExecutor(ctx, "test.webda.io", "DELETE", "/memory/idents/toDelete");
|
|
68
|
-
assert.notStrictEqual(executor, undefined);
|
|
69
|
-
yield assert.rejects(() => executor.execute(ctx), err => err == 404);
|
|
70
|
-
assert.strictEqual(identStore._getSync("notFound"), null);
|
|
37
|
+
async deleteAsyncHttp() {
|
|
38
|
+
let executor, ctx;
|
|
39
|
+
ctx = await this.webda.newContext(new HttpContext("test.webda.io", "GET", "/memory/idents/ToDelete"));
|
|
40
|
+
let identStore = this.getIdentStore();
|
|
41
|
+
await identStore.save({
|
|
42
|
+
uuid: "toDelete",
|
|
43
|
+
test: "ok"
|
|
71
44
|
});
|
|
45
|
+
await identStore.delete("toDelete");
|
|
46
|
+
executor = this.getExecutor(ctx, "test.webda.io", "GET", "/memory/idents/toDelete");
|
|
47
|
+
assert.notStrictEqual(executor, undefined);
|
|
48
|
+
await assert.rejects(() => executor.execute(ctx), err => err == 404);
|
|
49
|
+
executor = this.getExecutor(ctx, "test.webda.io", "PUT", "/memory/idents/toDelete");
|
|
50
|
+
assert.notStrictEqual(executor, undefined);
|
|
51
|
+
await assert.rejects(() => executor.execute(ctx), err => err == 404);
|
|
52
|
+
executor = this.getExecutor(ctx, "test.webda.io", "DELETE", "/memory/idents/toDelete");
|
|
53
|
+
assert.notStrictEqual(executor, undefined);
|
|
54
|
+
await assert.rejects(() => executor.execute(ctx), err => err == 404);
|
|
55
|
+
assert.strictEqual(identStore._getSync("notFound"), null);
|
|
72
56
|
}
|
|
73
|
-
queryAdditional() {
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
limit: query.limit
|
|
85
|
-
});
|
|
86
|
-
return Object.assign(Object.assign({}, res), { filter: undefined });
|
|
57
|
+
async queryAdditional() {
|
|
58
|
+
let userStore = await this.fillForQuery();
|
|
59
|
+
// Verify permission issue and half pagination
|
|
60
|
+
userStore.setModel(PermissionModel);
|
|
61
|
+
// Return undefined as filter to trigger the warning
|
|
62
|
+
let find = userStore.find;
|
|
63
|
+
userStore.find = async (query) => {
|
|
64
|
+
let res = await find.bind(userStore)({
|
|
65
|
+
filter: new WebdaQL.AndExpression([]),
|
|
66
|
+
continuationToken: query.continuationToken,
|
|
67
|
+
limit: query.limit
|
|
87
68
|
});
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
69
|
+
return {
|
|
70
|
+
...res,
|
|
71
|
+
filter: undefined
|
|
72
|
+
};
|
|
73
|
+
};
|
|
74
|
+
let context = await this.newContext();
|
|
75
|
+
// Verify pagination system
|
|
76
|
+
let res, offset;
|
|
77
|
+
let total = 0;
|
|
78
|
+
do {
|
|
79
|
+
res = await userStore.query(`state = 'CA' LIMIT 100 ${offset ? 'OFFSET "' + offset + '"' : ""}`, context);
|
|
80
|
+
offset = res.continuationToken;
|
|
81
|
+
total += res.results.length;
|
|
82
|
+
} while (offset);
|
|
83
|
+
assert.strictEqual(total, 100);
|
|
84
|
+
return userStore;
|
|
100
85
|
}
|
|
101
86
|
initRoutes() {
|
|
102
87
|
// cov
|
|
@@ -106,47 +91,84 @@ let MemoryStoreTest = class MemoryStoreTest extends store_spec_1.StoreTest {
|
|
|
106
91
|
}
|
|
107
92
|
getSync() {
|
|
108
93
|
let identStore = this.getIdentStore();
|
|
109
|
-
assert.throws(() => identStore._getSync("plop", true),
|
|
94
|
+
assert.throws(() => identStore._getSync("plop", true), StoreNotFoundError);
|
|
110
95
|
}
|
|
111
|
-
badActions() {
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
96
|
+
async badActions() {
|
|
97
|
+
let identStore = this.getIdentStore();
|
|
98
|
+
// @ts-ignore
|
|
99
|
+
identStore._model = {
|
|
100
|
+
getActions: () => {
|
|
101
|
+
return { test: { global: true } };
|
|
102
|
+
}
|
|
103
|
+
};
|
|
104
|
+
await assert.throws(() => identStore.initRoutes(), /Action static method _test does not exist/);
|
|
105
|
+
// @ts-ignore
|
|
106
|
+
identStore._model = {
|
|
121
107
|
// @ts-ignore
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
108
|
+
prototype: {},
|
|
109
|
+
getActions: () => {
|
|
110
|
+
return { test: { global: false } };
|
|
111
|
+
}
|
|
112
|
+
};
|
|
113
|
+
await assert.throws(() => identStore.initRoutes(), /Action method _test does not exist/);
|
|
114
|
+
}
|
|
115
|
+
async persistence() {
|
|
116
|
+
// Remove the path if exists
|
|
117
|
+
if (existsSync(".test.json")) {
|
|
118
|
+
unlinkSync(".test.json");
|
|
119
|
+
}
|
|
120
|
+
let identStore = this.getIdentStore();
|
|
121
|
+
identStore.getParameters().persistence = {
|
|
122
|
+
path: ".test.json",
|
|
123
|
+
delay: 10
|
|
124
|
+
};
|
|
125
|
+
await identStore.init();
|
|
126
|
+
await identStore.put("test", {});
|
|
127
|
+
await this.sleep(10);
|
|
128
|
+
// Check basic persistence
|
|
129
|
+
assert.ok(existsSync(".test.json"));
|
|
130
|
+
assert.notStrictEqual(JSONUtils.loadFile(".test.json").test, undefined);
|
|
131
|
+
identStore.storage = {};
|
|
132
|
+
// Check basic load of persistence
|
|
133
|
+
await identStore.init();
|
|
134
|
+
assert.notStrictEqual(identStore.storage.test, undefined);
|
|
135
|
+
// Check encryption
|
|
136
|
+
identStore.getParameters().persistence = {
|
|
137
|
+
path: ".test.json",
|
|
138
|
+
delay: 10,
|
|
139
|
+
key: "test",
|
|
140
|
+
cipher: "aes-256-ctr"
|
|
141
|
+
};
|
|
142
|
+
// Should silently ignore not encrypted file
|
|
143
|
+
await identStore.init();
|
|
144
|
+
await identStore.put("test", {});
|
|
145
|
+
await this.sleep(10);
|
|
146
|
+
identStore.storage = {};
|
|
147
|
+
// Check basic load of persistence
|
|
148
|
+
await identStore.init();
|
|
149
|
+
assert.notStrictEqual(identStore.storage.test, undefined);
|
|
131
150
|
}
|
|
132
151
|
};
|
|
133
152
|
__decorate([
|
|
134
|
-
|
|
153
|
+
test
|
|
135
154
|
], MemoryStoreTest.prototype, "deleteAsyncHttp", null);
|
|
136
155
|
__decorate([
|
|
137
|
-
|
|
156
|
+
test
|
|
138
157
|
], MemoryStoreTest.prototype, "queryAdditional", null);
|
|
139
158
|
__decorate([
|
|
140
|
-
|
|
159
|
+
test
|
|
141
160
|
], MemoryStoreTest.prototype, "initRoutes", null);
|
|
142
161
|
__decorate([
|
|
143
|
-
|
|
162
|
+
test
|
|
144
163
|
], MemoryStoreTest.prototype, "getSync", null);
|
|
145
164
|
__decorate([
|
|
146
|
-
|
|
165
|
+
test
|
|
147
166
|
], MemoryStoreTest.prototype, "badActions", null);
|
|
167
|
+
__decorate([
|
|
168
|
+
test
|
|
169
|
+
], MemoryStoreTest.prototype, "persistence", null);
|
|
148
170
|
MemoryStoreTest = __decorate([
|
|
149
|
-
|
|
171
|
+
suite
|
|
150
172
|
], MemoryStoreTest);
|
|
151
|
-
|
|
173
|
+
export { MemoryStoreTest };
|
|
152
174
|
//# sourceMappingURL=memory.spec.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memory.spec.js","sourceRoot":"","sources":["../../src/stores/memory.spec.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"memory.spec.js","sourceRoot":"","sources":["../../src/stores/memory.spec.ts"],"names":[],"mappings":"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"}
|
package/lib/stores/store.d.ts
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import { EventWithContext, WebdaError } from "../core";
|
|
2
|
-
import { ConfigurationProvider } from "../index";
|
|
3
|
-
import { CoreModel, CoreModelDefinition } from "../models/coremodel";
|
|
4
|
-
import { Service, ServiceParameters } from "../services/service";
|
|
5
|
-
import { Context } from "../utils/context";
|
|
6
|
-
import {
|
|
1
|
+
import { EventWithContext, WebdaError } from "../core.js";
|
|
2
|
+
import { ConfigurationProvider } from "../index.js";
|
|
3
|
+
import { CoreModel, CoreModelDefinition } from "../models/coremodel.js";
|
|
4
|
+
import { Service, ServiceParameters } from "../services/service.js";
|
|
5
|
+
import { Context } from "../utils/context.js";
|
|
6
|
+
import { HttpMethodType } from "../utils/httpcontext.js";
|
|
7
|
+
import { WebdaQL } from "./webdaql/query.js";
|
|
7
8
|
export declare class StoreNotFoundError extends WebdaError {
|
|
8
9
|
constructor(uuid: string, storeName: string);
|
|
9
10
|
}
|
|
@@ -474,7 +475,7 @@ declare abstract class Store<T extends CoreModel = CoreModel, K extends StorePar
|
|
|
474
475
|
/**
|
|
475
476
|
* Load the parameters for a service
|
|
476
477
|
*/
|
|
477
|
-
loadParameters(params: any): StoreParameters;
|
|
478
|
+
abstract loadParameters(params: any): StoreParameters;
|
|
478
479
|
/**
|
|
479
480
|
* Retrieve the Model
|
|
480
481
|
*
|
|
@@ -501,6 +502,10 @@ declare abstract class Store<T extends CoreModel = CoreModel, K extends StorePar
|
|
|
501
502
|
* @returns
|
|
502
503
|
*/
|
|
503
504
|
getObject(uid: string): Promise<T>;
|
|
505
|
+
/**
|
|
506
|
+
* @override
|
|
507
|
+
*/
|
|
508
|
+
getUrl(url: string, methods: HttpMethodType[]): string;
|
|
504
509
|
/**
|
|
505
510
|
* @inheritdoc
|
|
506
511
|
*/
|
|
@@ -510,10 +515,6 @@ declare abstract class Store<T extends CoreModel = CoreModel, K extends StorePar
|
|
|
510
515
|
* Used mainly in test
|
|
511
516
|
*/
|
|
512
517
|
setModel(model: CoreModelDefinition): void;
|
|
513
|
-
/**
|
|
514
|
-
* Get the url where the store is exposed
|
|
515
|
-
*/
|
|
516
|
-
getUrl(): string;
|
|
517
518
|
/**
|
|
518
519
|
* We should ignore exception from the store
|
|
519
520
|
*/
|
|
@@ -560,7 +561,7 @@ declare abstract class Store<T extends CoreModel = CoreModel, K extends StorePar
|
|
|
560
561
|
*
|
|
561
562
|
* Might want to rename to create
|
|
562
563
|
*/
|
|
563
|
-
save(object: any, ctx?: Context): Promise<
|
|
564
|
+
save(object: any, ctx?: Context): Promise<T>;
|
|
564
565
|
/**
|
|
565
566
|
* Patch an object
|
|
566
567
|
*
|
|
@@ -568,7 +569,7 @@ declare abstract class Store<T extends CoreModel = CoreModel, K extends StorePar
|
|
|
568
569
|
* @param reverseMap
|
|
569
570
|
* @returns
|
|
570
571
|
*/
|
|
571
|
-
patch(object: any, reverseMap?: boolean): Promise<
|
|
572
|
+
patch(object: any, reverseMap?: boolean): Promise<T | undefined>;
|
|
572
573
|
/**
|
|
573
574
|
* Check if an UpdateCondition is met
|
|
574
575
|
* @param model
|
|
@@ -585,6 +586,14 @@ declare abstract class Store<T extends CoreModel = CoreModel, K extends StorePar
|
|
|
585
586
|
* @param uid
|
|
586
587
|
*/
|
|
587
588
|
checkCollectionUpdateCondition(model: T, collection: string, conditionField?: string, condition?: any, index?: number): void;
|
|
589
|
+
/**
|
|
590
|
+
* Update conditionally
|
|
591
|
+
* @param uuid
|
|
592
|
+
* @param updates
|
|
593
|
+
* @param conditionField
|
|
594
|
+
* @param condition
|
|
595
|
+
*/
|
|
596
|
+
conditionalPatch(uuid: string, updates: any, conditionField: any, condition: any): Promise<boolean>;
|
|
588
597
|
/**
|
|
589
598
|
*
|
|
590
599
|
* @param model
|
|
@@ -599,11 +608,13 @@ declare abstract class Store<T extends CoreModel = CoreModel, K extends StorePar
|
|
|
599
608
|
/**
|
|
600
609
|
* Update an object
|
|
601
610
|
*
|
|
611
|
+
* If no attribute can be updated then return undefined
|
|
612
|
+
*
|
|
602
613
|
* @param {Object} Object to save
|
|
603
614
|
* @param {Boolean} reverseMap internal use only, for disable map resolution
|
|
604
615
|
* @return {Promise} with saved object
|
|
605
616
|
*/
|
|
606
|
-
update(object: any, reverseMap?: boolean, partial?: boolean): Promise<
|
|
617
|
+
update(object: any, reverseMap?: boolean, partial?: boolean): Promise<T | undefined>;
|
|
607
618
|
/**
|
|
608
619
|
* Remove an attribute from an object
|
|
609
620
|
*
|
|
@@ -649,13 +660,19 @@ declare abstract class Store<T extends CoreModel = CoreModel, K extends StorePar
|
|
|
649
660
|
getConfiguration(id: string): Promise<{
|
|
650
661
|
[key: string]: any;
|
|
651
662
|
}>;
|
|
663
|
+
/**
|
|
664
|
+
* Upsert the uuid object
|
|
665
|
+
* @param uuid
|
|
666
|
+
* @param data
|
|
667
|
+
*/
|
|
668
|
+
put(uuid: string, data: any): Promise<T>;
|
|
652
669
|
/**
|
|
653
670
|
* Get an object
|
|
654
671
|
*
|
|
655
672
|
* @param {String} uuid to get
|
|
656
673
|
* @return {Promise} the object retrieved ( can be undefined if not found )
|
|
657
674
|
*/
|
|
658
|
-
get(uid: string, ctx?: Context): Promise<T>;
|
|
675
|
+
get(uid: string, ctx?: Context, defaultValue?: any): Promise<T>;
|
|
659
676
|
/**
|
|
660
677
|
* Set one attribute in an object
|
|
661
678
|
*
|
|
@@ -671,6 +688,9 @@ declare abstract class Store<T extends CoreModel = CoreModel, K extends StorePar
|
|
|
671
688
|
* @override
|
|
672
689
|
*/
|
|
673
690
|
protected simulateFind(query: WebdaQL.Query, uuids: string[]): Promise<StoreFindResult<T>>;
|
|
691
|
+
getOpenApiReplacements(): {
|
|
692
|
+
modelName: string;
|
|
693
|
+
};
|
|
674
694
|
/**
|
|
675
695
|
* Handle POST
|
|
676
696
|
* @param ctx
|