@webda/core 1.6.0-beta.1 → 2.0.0-beta.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.
Files changed (232) hide show
  1. package/lib/application.d.ts +317 -195
  2. package/lib/application.js +171 -674
  3. package/lib/application.js.map +1 -1
  4. package/lib/application.spec.js +97 -289
  5. package/lib/application.spec.js.map +1 -1
  6. package/lib/core.d.ts +102 -214
  7. package/lib/core.js +146 -70
  8. package/lib/core.js.map +1 -1
  9. package/lib/core.spec.js +80 -17
  10. package/lib/core.spec.js.map +1 -1
  11. package/lib/index.d.ts +14 -9
  12. package/lib/index.js +19 -10
  13. package/lib/index.js.map +1 -1
  14. package/lib/models/aclmodel.d.ts +29 -8
  15. package/lib/models/aclmodel.js +68 -18
  16. package/lib/models/aclmodel.js.map +1 -1
  17. package/lib/models/aclmodel.spec.js +56 -19
  18. package/lib/models/aclmodel.spec.js.map +1 -1
  19. package/lib/models/coremodel.d.ts +9 -17
  20. package/lib/models/coremodel.js +36 -36
  21. package/lib/models/coremodel.js.map +1 -1
  22. package/lib/models/ident.d.ts +8 -3
  23. package/lib/models/ident.js +8 -1
  24. package/lib/models/ident.js.map +1 -1
  25. package/lib/models/ident.spec.js +3 -0
  26. package/lib/models/ident.spec.js.map +1 -1
  27. package/lib/models/ownermodel.d.ts +8 -4
  28. package/lib/models/ownermodel.js +10 -6
  29. package/lib/models/ownermodel.js.map +1 -1
  30. package/lib/models/rolemodel.js.map +1 -1
  31. package/lib/models/rolemodel.spec.js +4 -1
  32. package/lib/models/rolemodel.spec.js.map +1 -1
  33. package/lib/models/user.d.ts +32 -3
  34. package/lib/models/user.js +31 -0
  35. package/lib/models/user.js.map +1 -1
  36. package/lib/models/user.spec.js +11 -0
  37. package/lib/models/user.spec.js.map +1 -1
  38. package/lib/queues/filequeue.d.ts +2 -7
  39. package/lib/queues/filequeue.js +2 -11
  40. package/lib/queues/filequeue.js.map +1 -1
  41. package/lib/queues/filequeue.spec.js +0 -1
  42. package/lib/queues/filequeue.spec.js.map +1 -1
  43. package/lib/queues/memoryqueue.d.ts +2 -7
  44. package/lib/queues/memoryqueue.js +1 -11
  45. package/lib/queues/memoryqueue.js.map +1 -1
  46. package/lib/queues/memoryqueue.spec.js +0 -1
  47. package/lib/queues/memoryqueue.spec.js.map +1 -1
  48. package/lib/queues/queue.spec.d.ts +1 -1
  49. package/lib/queues/queue.spec.js +11 -9
  50. package/lib/queues/queue.spec.js.map +1 -1
  51. package/lib/queues/queueservice.js +1 -1
  52. package/lib/queues/queueservice.js.map +1 -1
  53. package/lib/router.d.ts +46 -1
  54. package/lib/router.js +89 -51
  55. package/lib/router.js.map +1 -1
  56. package/lib/router.spec.js +19 -2
  57. package/lib/router.spec.js.map +1 -1
  58. package/lib/services/asyncevents.d.ts +1 -0
  59. package/lib/services/asyncevents.js +4 -3
  60. package/lib/services/asyncevents.js.map +1 -1
  61. package/lib/services/authentication.d.ts +47 -5
  62. package/lib/services/authentication.js +99 -40
  63. package/lib/services/authentication.js.map +1 -1
  64. package/lib/services/authentication.spec.js +10 -0
  65. package/lib/services/authentication.spec.js.map +1 -1
  66. package/lib/services/binary.d.ts +126 -64
  67. package/lib/services/binary.js +247 -96
  68. package/lib/services/binary.js.map +1 -1
  69. package/lib/services/binary.spec.d.ts +1 -0
  70. package/lib/services/binary.spec.js +96 -25
  71. package/lib/services/binary.spec.js.map +1 -1
  72. package/lib/services/cloudbinary.d.ts +67 -0
  73. package/lib/services/cloudbinary.js +178 -0
  74. package/lib/services/cloudbinary.js.map +1 -0
  75. package/lib/services/cloudbinary.spec.d.ts +13 -0
  76. package/lib/services/cloudbinary.spec.js +205 -0
  77. package/lib/services/cloudbinary.spec.js.map +1 -0
  78. package/lib/services/configuration.d.ts +7 -2
  79. package/lib/services/configuration.js +4 -3
  80. package/lib/services/configuration.js.map +1 -1
  81. package/lib/services/configuration.spec.js +1 -0
  82. package/lib/services/configuration.spec.js.map +1 -1
  83. package/lib/services/cron.d.ts +5 -6
  84. package/lib/services/cron.js +4 -11
  85. package/lib/services/cron.js.map +1 -1
  86. package/lib/services/cron.spec.js +2 -3
  87. package/lib/services/cron.spec.js.map +1 -1
  88. package/lib/services/debugmailer.d.ts +11 -6
  89. package/lib/services/debugmailer.js +20 -14
  90. package/lib/services/debugmailer.js.map +1 -1
  91. package/lib/services/debugmailer.spec.js +1 -0
  92. package/lib/services/debugmailer.spec.js.map +1 -1
  93. package/lib/services/echo.d.ts +2 -6
  94. package/lib/services/echo.js +1 -11
  95. package/lib/services/echo.js.map +1 -1
  96. package/lib/services/echo.spec.js +1 -0
  97. package/lib/services/echo.spec.js.map +1 -1
  98. package/lib/services/filebinary.d.ts +36 -12
  99. package/lib/services/filebinary.js +123 -38
  100. package/lib/services/filebinary.js.map +1 -1
  101. package/lib/services/filebinary.spec.d.ts +4 -2
  102. package/lib/services/filebinary.spec.js +48 -8
  103. package/lib/services/filebinary.spec.js.map +1 -1
  104. package/lib/services/fileconfiguration.d.ts +1 -5
  105. package/lib/services/fileconfiguration.js +1 -10
  106. package/lib/services/fileconfiguration.js.map +1 -1
  107. package/lib/services/invitationservice.d.ts +198 -0
  108. package/lib/services/invitationservice.js +443 -0
  109. package/lib/services/invitationservice.js.map +1 -0
  110. package/lib/services/invitationservice.spec.d.ts +1 -0
  111. package/lib/services/invitationservice.spec.js +517 -0
  112. package/lib/services/invitationservice.spec.js.map +1 -0
  113. package/lib/services/kubernetesconfiguration.d.ts +3 -5
  114. package/lib/services/kubernetesconfiguration.js +5 -12
  115. package/lib/services/kubernetesconfiguration.js.map +1 -1
  116. package/lib/services/kubernetesconfiguration.spec.js +1 -1
  117. package/lib/services/kubernetesconfiguration.spec.js.map +1 -1
  118. package/lib/services/mailer.d.ts +44 -7
  119. package/lib/services/mailer.js +34 -14
  120. package/lib/services/mailer.js.map +1 -1
  121. package/lib/services/mailer.spec.js +29 -0
  122. package/lib/services/mailer.spec.js.map +1 -1
  123. package/lib/services/notificationservice.d.ts +76 -0
  124. package/lib/services/notificationservice.js +91 -0
  125. package/lib/services/notificationservice.js.map +1 -0
  126. package/lib/services/notificationservice.spec.d.ts +1 -0
  127. package/lib/services/notificationservice.spec.js +104 -0
  128. package/lib/services/notificationservice.spec.js.map +1 -0
  129. package/lib/services/oauth.d.ts +6 -4
  130. package/lib/services/oauth.js +28 -11
  131. package/lib/services/oauth.js.map +1 -1
  132. package/lib/services/oauth.spec.js +7 -10
  133. package/lib/services/oauth.spec.js.map +1 -1
  134. package/lib/services/resource.d.ts +1 -5
  135. package/lib/services/resource.js +22 -17
  136. package/lib/services/resource.js.map +1 -1
  137. package/lib/services/resource.spec.js +0 -1
  138. package/lib/services/resource.spec.js.map +1 -1
  139. package/lib/services/service.d.ts +29 -26
  140. package/lib/services/service.js +16 -22
  141. package/lib/services/service.js.map +1 -1
  142. package/lib/services/service.spec.js +3 -0
  143. package/lib/services/service.spec.js.map +1 -1
  144. package/lib/services/version.d.ts +2 -5
  145. package/lib/services/version.js +1 -10
  146. package/lib/services/version.js.map +1 -1
  147. package/lib/stores/aggregator.d.ts +3 -5
  148. package/lib/stores/aggregator.js +3 -10
  149. package/lib/stores/aggregator.js.map +1 -1
  150. package/lib/stores/file.d.ts +7 -8
  151. package/lib/stores/file.js +18 -18
  152. package/lib/stores/file.js.map +1 -1
  153. package/lib/stores/file.spec.js +8 -6
  154. package/lib/stores/file.spec.js.map +1 -1
  155. package/lib/stores/mapper.d.ts +1 -5
  156. package/lib/stores/mapper.js +56 -39
  157. package/lib/stores/mapper.js.map +1 -1
  158. package/lib/stores/mapper.spec.js +120 -1
  159. package/lib/stores/mapper.spec.js.map +1 -1
  160. package/lib/stores/memory.d.ts +5 -9
  161. package/lib/stores/memory.js +5 -17
  162. package/lib/stores/memory.js.map +1 -1
  163. package/lib/stores/memory.spec.d.ts +1 -0
  164. package/lib/stores/memory.spec.js +32 -0
  165. package/lib/stores/memory.spec.js.map +1 -1
  166. package/lib/stores/store.d.ts +131 -26
  167. package/lib/stores/store.js +399 -80
  168. package/lib/stores/store.js.map +1 -1
  169. package/lib/stores/store.spec.d.ts +29 -2
  170. package/lib/stores/store.spec.js +204 -31
  171. package/lib/stores/store.spec.js.map +1 -1
  172. package/lib/stores/webdaql/WebdaQLLexer.d.ts +53 -0
  173. package/lib/stores/webdaql/WebdaQLLexer.js +290 -0
  174. package/lib/stores/webdaql/WebdaQLLexer.js.map +1 -0
  175. package/lib/stores/webdaql/WebdaQLParserLexer.d.ts +53 -0
  176. package/lib/stores/webdaql/WebdaQLParserLexer.js +290 -0
  177. package/lib/stores/webdaql/WebdaQLParserLexer.js.map +1 -0
  178. package/lib/stores/webdaql/WebdaQLParserListener.d.ts +308 -0
  179. package/lib/stores/webdaql/WebdaQLParserListener.js +4 -0
  180. package/lib/stores/webdaql/WebdaQLParserListener.js.map +1 -0
  181. package/lib/stores/webdaql/WebdaQLParserParser.d.ts +301 -0
  182. package/lib/stores/webdaql/WebdaQLParserParser.js +1781 -0
  183. package/lib/stores/webdaql/WebdaQLParserParser.js.map +1 -0
  184. package/lib/stores/webdaql/WebdaQLParserVisitor.d.ts +198 -0
  185. package/lib/stores/webdaql/WebdaQLParserVisitor.js +4 -0
  186. package/lib/stores/webdaql/WebdaQLParserVisitor.js.map +1 -0
  187. package/lib/stores/webdaql/query.d.ts +300 -0
  188. package/lib/stores/webdaql/query.js +471 -0
  189. package/lib/stores/webdaql/query.js.map +1 -0
  190. package/lib/stores/webdaql/query.spec.d.ts +1 -0
  191. package/lib/stores/webdaql/query.spec.js +136 -0
  192. package/lib/stores/webdaql/query.spec.js.map +1 -0
  193. package/lib/test.d.ts +50 -2
  194. package/lib/test.js +161 -16
  195. package/lib/test.js.map +1 -1
  196. package/lib/unpackedapplication.d.ts +66 -0
  197. package/lib/unpackedapplication.js +202 -0
  198. package/lib/unpackedapplication.js.map +1 -0
  199. package/lib/utils/context.d.ts +14 -12
  200. package/lib/utils/context.js +14 -9
  201. package/lib/utils/context.js.map +1 -1
  202. package/lib/utils/context.spec.js +1 -1
  203. package/lib/utils/context.spec.js.map +1 -1
  204. package/lib/utils/cookie.d.ts +6 -3
  205. package/lib/utils/cookie.js +22 -20
  206. package/lib/utils/cookie.js.map +1 -1
  207. package/lib/utils/cookie.spec.js +0 -1
  208. package/lib/utils/cookie.spec.js.map +1 -1
  209. package/lib/utils/logger.d.ts +16 -3
  210. package/lib/utils/logger.js +16 -3
  211. package/lib/utils/logger.js.map +1 -1
  212. package/lib/utils/logger.spec.js.map +1 -1
  213. package/lib/utils/serializers.js +5 -1
  214. package/lib/utils/serializers.js.map +1 -1
  215. package/lib/utils/waiter.d.ts +1 -1
  216. package/lib/utils/waiter.js.map +1 -1
  217. package/package.json +25 -18
  218. package/test/config-file-no-reload.json +2 -1
  219. package/test/config-file-reload.json +2 -1
  220. package/test/config-invitation.json +63 -0
  221. package/test/config-kube-reload.json +2 -1
  222. package/test/config-reload.json +1 -1
  223. package/test/config.json +6 -10
  224. package/test/config.old.json +1 -1
  225. package/test/moddas/annotatedservice.js +1 -3
  226. package/test/moddas/debugmailer.js +2 -7
  227. package/test/moddas/fakeservice.js +1 -1
  228. package/test/moddas/voidstore.js +2 -4
  229. package/test/models/ident.js +1 -1
  230. package/test/models/task.js +1 -5
  231. package/webda.module.json +1124 -0
  232. package/test/config.old-default.json +0 -151
@@ -1 +1 @@
1
- {"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/stores/store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"store.js","sourceRoot":"","sources":["../../src/stores/store.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,14 @@
1
- import { Store } from "../index";
2
1
  import { WebdaTest } from "../test";
2
+ import { Context, Store, StoreParameters } from "../index";
3
+ import { StoreEvents } from "./store";
3
4
  import { CoreModel } from "../models/coremodel";
5
+ /**
6
+ * Fake model that refuse the half of the items
7
+ */
8
+ export declare class PermissionModel extends CoreModel {
9
+ order: number;
10
+ canAct(ctx: Context, _action: string): Promise<this>;
11
+ }
4
12
  declare abstract class StoreTest extends WebdaTest {
5
13
  abstract getIdentStore(): Store<any>;
6
14
  abstract getUserStore(): Store<any>;
@@ -15,6 +23,26 @@ declare abstract class StoreTest extends WebdaTest {
15
23
  recreateIndex(): Promise<void>;
16
24
  before(): Promise<void>;
17
25
  getModelClass(): any;
26
+ /**
27
+ * Get the base of documents to query
28
+ */
29
+ getQueryDocuments(): any[];
30
+ /**
31
+ * Fill the Store with data to be queried
32
+ */
33
+ fillForQuery(): Promise<Store>;
34
+ query(): Promise<Store<CoreModel, StoreParameters, StoreEvents>>;
35
+ /**
36
+ * Simplify model
37
+ * @param model
38
+ * @returns
39
+ */
40
+ mapQueryModel(model: any): {
41
+ order: any;
42
+ teamId: any;
43
+ state: any;
44
+ };
45
+ queryOrder(): Promise<void>;
18
46
  mapper(): Promise<void>;
19
47
  collection(): Promise<void>;
20
48
  getAll(): Promise<void>;
@@ -29,6 +57,5 @@ declare abstract class StoreTest extends WebdaTest {
29
57
  deleteConcurrent(): Promise<void>;
30
58
  update(): Promise<void>;
31
59
  upsertItem(): Promise<void>;
32
- find(): Promise<void>;
33
60
  }
34
61
  export { StoreTest };
@@ -15,18 +15,35 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
15
15
  });
16
16
  };
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
- exports.StoreTest = void 0;
19
- const assert = require("assert");
20
- const index_1 = require("../index");
18
+ exports.StoreTest = exports.PermissionModel = void 0;
21
19
  const test_1 = require("../test");
22
20
  const mocha_1 = require("@testdeck/mocha");
21
+ const assert = require("assert");
23
22
  const Idents = require("../../test/models/ident");
23
+ const index_1 = require("../index");
24
24
  const store_1 = require("./store");
25
25
  const uuid_1 = require("uuid");
26
+ const coremodel_1 = require("../models/coremodel");
27
+ const context_1 = require("../utils/context");
28
+ const sinon_1 = require("sinon");
29
+ /**
30
+ * Fake model that refuse the half of the items
31
+ */
32
+ class PermissionModel extends coremodel_1.CoreModel {
33
+ canAct(ctx, _action) {
34
+ return __awaiter(this, void 0, void 0, function* () {
35
+ if (this.order % 200 < 120) {
36
+ throw 403;
37
+ }
38
+ return this;
39
+ });
40
+ }
41
+ }
42
+ exports.PermissionModel = PermissionModel;
26
43
  let StoreParametersTest = class StoreParametersTest {
27
44
  cov() {
28
45
  let params = new index_1.StoreParameters({ expose: "/plop", lastUpdateField: "bz", creationDateField: "c" }, undefined);
29
- assert.deepStrictEqual(params.expose, { url: "/plop", restrict: {} });
46
+ assert.deepStrictEqual(params.expose, { queryMethod: "GET", url: "/plop", restrict: {} });
30
47
  assert.throws(() => new index_1.StoreParameters({ map: {} }, undefined), Error);
31
48
  assert.throws(() => new index_1.StoreParameters({ index: [] }, undefined), Error);
32
49
  }
@@ -67,6 +84,165 @@ class StoreTest extends test_1.WebdaTest {
67
84
  getModelClass() {
68
85
  return Idents;
69
86
  }
87
+ /**
88
+ * Get the base of documents to query
89
+ */
90
+ getQueryDocuments() {
91
+ let docs = [];
92
+ for (let i = 0; i < 1000; i++) {
93
+ docs.push({
94
+ state: ["CA", "OR", "NY", "FL"][i % 4],
95
+ order: i,
96
+ team: {
97
+ id: i % 20
98
+ },
99
+ role: i % 10
100
+ });
101
+ }
102
+ return docs;
103
+ }
104
+ /**
105
+ * Fill the Store with data to be queried
106
+ */
107
+ fillForQuery() {
108
+ return __awaiter(this, void 0, void 0, function* () {
109
+ let userStore = this.getUserStore();
110
+ yield Promise.all(this.getQueryDocuments().map(d => userStore.save(d)));
111
+ return userStore;
112
+ });
113
+ }
114
+ query() {
115
+ return __awaiter(this, void 0, void 0, function* () {
116
+ let userStore = yield this.fillForQuery();
117
+ const queries = {
118
+ 'state = "CA"': 250,
119
+ "team.id > 15": 200,
120
+ "team.id >= 15": 250,
121
+ "team.id <= 14": 750,
122
+ 'state IN ["CA", "NY"]': 500,
123
+ 'state IN ["CA", "NY", "NV"]': 500,
124
+ 'state = "CA" AND team.id > 15': 50,
125
+ "team.id < 5 OR team.id > 15": 450,
126
+ "role < 5 AND team.id > 10 OR team.id > 15": 400,
127
+ "role < 5 AND (team.id > 10 OR team.id > 15)": 200,
128
+ 'state LIKE "C_"': 250,
129
+ 'state LIKE "C__"': 0,
130
+ 'state LIKE "C%"': 250,
131
+ 'state != "CA"': 750,
132
+ "": 1000
133
+ };
134
+ for (let i in queries) {
135
+ assert.strictEqual((yield userStore.query(i)).results.length, queries[i], `Query: ${i} should return ${queries[i]}`);
136
+ }
137
+ // Verify pagination system
138
+ let offset;
139
+ let res;
140
+ let i = 0;
141
+ do {
142
+ res = yield userStore.query(`LIMIT 100 ${offset ? 'OFFSET "' + offset + '"' : ""}`);
143
+ offset = res.continuationToken;
144
+ if (i++ > 9) {
145
+ assert.strictEqual(res.results.length, 0, `Query: LIMIT 100 ${offset ? 'OFFSET "' + offset + '"' : ""} should return 0`);
146
+ assert.strictEqual(offset, undefined);
147
+ }
148
+ else {
149
+ assert.strictEqual(res.results.length, 100, `Query: LIMIT 100 ${offset ? 'OFFSET "' + offset + '"' : ""} should return 0`);
150
+ }
151
+ } while (offset !== undefined);
152
+ // Verify permission issue and half pagination
153
+ userStore.setModel(PermissionModel);
154
+ let context = yield this.newContext();
155
+ // Verify pagination system
156
+ i = 0;
157
+ let total = 0;
158
+ let q;
159
+ // To ensure we trigger slowQuery
160
+ userStore.getParameters().slowQueryThreshold = 0;
161
+ do {
162
+ q = `LIMIT 100 ${offset ? 'OFFSET "' + offset + '"' : ""}`;
163
+ context.setHttpContext(new context_1.HttpContext("test.webda.io", i++ % 2 ? "GET" : "PUT", userStore.getParameters().expose.url + "?q=" + encodeURI(q), "https", 443, {
164
+ q
165
+ }));
166
+ context.getParameters().q = q;
167
+ // @ts-ignore
168
+ yield userStore.httpQuery(context);
169
+ res = JSON.parse(context.getResponseBody());
170
+ offset = res.continuationToken;
171
+ total += res.results.length;
172
+ } while (offset !== undefined);
173
+ assert.strictEqual(total, 400);
174
+ q = "BAD QUERY !";
175
+ context.setHttpContext(new context_1.HttpContext("test.webda.io", "PUT", userStore.getParameters().expose.url, "https", 443, {
176
+ q
177
+ }));
178
+ // @ts-ignore
179
+ yield assert.rejects(() => userStore.httpQuery(context), /400/);
180
+ let mock = (0, sinon_1.stub)(userStore, "query").callsFake(() => {
181
+ throw new Error("Plop");
182
+ });
183
+ try {
184
+ // @ts-ignore
185
+ yield assert.rejects(() => userStore.httpQuery(context), /Plop/);
186
+ }
187
+ finally {
188
+ mock.restore();
189
+ }
190
+ return userStore;
191
+ });
192
+ }
193
+ /**
194
+ * Simplify model
195
+ * @param model
196
+ * @returns
197
+ */
198
+ mapQueryModel(model) {
199
+ return {
200
+ order: model.order,
201
+ teamId: model.team.id,
202
+ state: model.state
203
+ };
204
+ }
205
+ queryOrder() {
206
+ return __awaiter(this, void 0, void 0, function* () {
207
+ let userStore = yield this.fillForQuery();
208
+ let model = yield userStore.save({
209
+ order: 996,
210
+ state: "CA",
211
+ team: { id: 16 }
212
+ });
213
+ try {
214
+ let res = yield userStore.query('state = "CA" ORDER BY order DESC LIMIT 10');
215
+ assert.deepStrictEqual(res.results.map((c) => ({ state: c.state, order: c.order, teamId: c.team.id })), [
216
+ { state: "CA", order: 996, teamId: 16 },
217
+ { state: "CA", order: 996, teamId: 16 },
218
+ { state: "CA", order: 992, teamId: 12 },
219
+ { state: "CA", order: 988, teamId: 8 },
220
+ { state: "CA", order: 984, teamId: 4 },
221
+ { state: "CA", order: 980, teamId: 0 },
222
+ { state: "CA", order: 976, teamId: 16 },
223
+ { state: "CA", order: 972, teamId: 12 },
224
+ { state: "CA", order: 968, teamId: 8 },
225
+ { state: "CA", order: 964, teamId: 4 }
226
+ ]);
227
+ res = yield userStore.query("order > 980 ORDER BY state ASC, order DESC LIMIT 10");
228
+ assert.deepStrictEqual(res.results.map((c) => ({ state: c.state, order: c.order, teamId: c.team.id })), [
229
+ { state: "CA", order: 996, teamId: 16 },
230
+ { state: "CA", order: 996, teamId: 16 },
231
+ { state: "CA", order: 992, teamId: 12 },
232
+ { state: "CA", order: 988, teamId: 8 },
233
+ { state: "CA", order: 984, teamId: 4 },
234
+ { state: "FL", order: 999, teamId: 19 },
235
+ { state: "FL", order: 995, teamId: 15 },
236
+ { state: "FL", order: 991, teamId: 11 },
237
+ { state: "FL", order: 987, teamId: 7 },
238
+ { state: "FL", order: 983, teamId: 3 }
239
+ ]);
240
+ }
241
+ finally {
242
+ yield model.delete();
243
+ }
244
+ });
245
+ }
70
246
  mapper() {
71
247
  return __awaiter(this, void 0, void 0, function* () {
72
248
  let identStore = this.getIdentStore();
@@ -81,8 +257,8 @@ class StoreTest extends test_1.WebdaTest {
81
257
  "Store.Deleted",
82
258
  "Store.Update",
83
259
  "Store.Updated",
84
- "Store.Find",
85
- "Store.Found"
260
+ "Store.Query",
261
+ "Store.Queried"
86
262
  ];
87
263
  for (let evt in events) {
88
264
  identStore.on(events[evt], function (evt) {
@@ -250,6 +426,7 @@ class StoreTest extends test_1.WebdaTest {
250
426
  date: new Date()
251
427
  }, 0);
252
428
  yield ident.refresh();
429
+ this.log("DEBUG", "Action", ident.actions);
253
430
  assert.notStrictEqual(ident.actions, undefined);
254
431
  assert.strictEqual(ident.actions.length, 2);
255
432
  assert.strictEqual(ident.actions[0].type, "plop2");
@@ -322,16 +499,16 @@ class StoreTest extends test_1.WebdaTest {
322
499
  "Store.Updated",
323
500
  "Store.PatchUpdate",
324
501
  "Store.PatchUpdated",
325
- "Store.PartialUpdate",
326
502
  "Store.PartialUpdated",
327
- "Store.Find",
328
- "Store.Found"
503
+ "Store.Query",
504
+ "Store.Queried"
329
505
  ];
330
506
  for (let evt in events) {
331
507
  identStore.on(events[evt], function (e) {
332
508
  eventFired++;
333
509
  });
334
510
  }
511
+ this.log("DEBUG", "Save ident");
335
512
  // Check CREATE - READ
336
513
  let ident1 = yield identStore.save({
337
514
  test: "plop",
@@ -347,6 +524,7 @@ class StoreTest extends test_1.WebdaTest {
347
524
  assert.strictEqual(eventFired, 2);
348
525
  assert.notStrictEqual(ident1, undefined);
349
526
  eventFired = 0;
527
+ this.log("DEBUG", "Get ident");
350
528
  let getter = yield identStore.get(ident1.uuid);
351
529
  assert.strictEqual(eventFired, 1);
352
530
  eventFired = 0;
@@ -362,22 +540,27 @@ class StoreTest extends test_1.WebdaTest {
362
540
  getter.details.bouzouf = undefined;
363
541
  getter.empty = [];
364
542
  let object;
543
+ this.log("DEBUG", "Update ident");
365
544
  yield identStore.update(getter);
366
545
  assert.strictEqual(eventFired, 2);
367
546
  eventFired = 0;
368
547
  getter = {};
369
548
  getter.uuid = ident1.uuid;
370
549
  getter.bouzouf = "test";
550
+ this.log("DEBUG", "Patch ident");
371
551
  yield identStore.patch(getter);
372
552
  assert.strictEqual(eventFired, 2);
373
553
  eventFired = 0;
554
+ this.log("DEBUG", "Get ident to check update");
374
555
  object = yield identStore.get(ident1.uuid);
556
+ this.log("DEBUG", "Retrieved object", object);
375
557
  assert.strictEqual(object.test, "plop2");
376
558
  assert.strictEqual(object.details.plop, "plop2");
377
559
  getter = yield identStore.get(object.uuid);
378
560
  assert.strictEqual(eventFired, 2);
379
561
  assert.strictEqual(getter.test, "plop2");
380
562
  yield this.sleep(10);
563
+ this.log("DEBUG", "Increment attribute");
381
564
  yield identStore.incrementAttribute(ident1.uuid, "counter", 1);
382
565
  let ident = yield identStore.get(ident1.uuid);
383
566
  // Verify lastUpdate is updated too
@@ -529,8 +712,10 @@ class StoreTest extends test_1.WebdaTest {
529
712
  upsertItem() {
530
713
  return __awaiter(this, void 0, void 0, function* () {
531
714
  let store = this.getIdentStore();
715
+ this.log("DEBUG", "Save empty logs array");
532
716
  let model = yield store.save({ logs: [] });
533
717
  let ps = [];
718
+ this.log("DEBUG", "Upsert 10 lines");
534
719
  for (let i = 0; i < 10; i++) {
535
720
  ps.push(store.upsertItemToCollection(model.getUuid(), "logs", `line${i}`));
536
721
  }
@@ -538,28 +723,19 @@ class StoreTest extends test_1.WebdaTest {
538
723
  yield model.refresh();
539
724
  assert.strictEqual(model.logs.length, 10);
540
725
  // Depending on the implementation it can be swallowed by the backend
541
- try {
542
- yield store.upsertItemToCollection((0, uuid_1.v4)(), "logs", `line`);
543
- }
544
- catch (err) {
545
- assert.ok(err instanceof store_1.StoreNotFoundError || err instanceof store_1.UpdateConditionFailError);
546
- }
547
- try {
548
- yield store.deleteItemFromCollection((0, uuid_1.v4)(), "logs", 0, undefined, undefined);
549
- }
550
- catch (err) {
551
- assert.ok(err instanceof store_1.StoreNotFoundError || err instanceof store_1.UpdateConditionFailError);
552
- }
553
- });
554
- }
555
- find() {
556
- return __awaiter(this, void 0, void 0, function* () {
557
- // Unknown how to do yet
558
- let store = this.getIdentStore();
559
- yield store.find();
726
+ this.log("DEBUG", "Upsert on unknown doc");
727
+ yield assert.rejects(() => store.upsertItemToCollection((0, uuid_1.v4)(), "logs", `line`), err => err instanceof store_1.StoreNotFoundError || err instanceof store_1.UpdateConditionFailError);
728
+ this.log("DEBUG", "Delete on unknown doc");
729
+ yield assert.rejects(() => store.deleteItemFromCollection((0, uuid_1.v4)(), "logs", 0, undefined, undefined), err => err instanceof store_1.StoreNotFoundError || err instanceof store_1.UpdateConditionFailError);
560
730
  });
561
731
  }
562
732
  }
733
+ __decorate([
734
+ mocha_1.test
735
+ ], StoreTest.prototype, "query", null);
736
+ __decorate([
737
+ mocha_1.test
738
+ ], StoreTest.prototype, "queryOrder", null);
563
739
  __decorate([
564
740
  mocha_1.test
565
741
  ], StoreTest.prototype, "mapper", null);
@@ -596,8 +772,5 @@ __decorate([
596
772
  __decorate([
597
773
  mocha_1.test
598
774
  ], StoreTest.prototype, "upsertItem", null);
599
- __decorate([
600
- mocha_1.test
601
- ], StoreTest.prototype, "find", null);
602
775
  exports.StoreTest = StoreTest;
603
776
  //# sourceMappingURL=store.spec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"store.spec.js","sourceRoot":"","sources":["../../src/stores/store.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"store.spec.js","sourceRoot":"","sources":["../../src/stores/store.spec.ts"],"names":[],"mappings":"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"}