@webda/core 1.2.1 → 1.6.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 (199) hide show
  1. package/lib/application.d.ts +3 -0
  2. package/lib/application.js +26 -22
  3. package/lib/application.js.map +1 -1
  4. package/lib/application.spec.js +185 -2
  5. package/lib/application.spec.js.map +1 -1
  6. package/lib/core.d.ts +62 -6
  7. package/lib/core.js +127 -86
  8. package/lib/core.js.map +1 -1
  9. package/lib/core.spec.js +151 -6
  10. package/lib/core.spec.js.map +1 -1
  11. package/lib/index.d.ts +4 -0
  12. package/lib/index.js +4 -0
  13. package/lib/index.js.map +1 -1
  14. package/lib/models/aclmodel.d.ts +42 -3
  15. package/lib/models/aclmodel.js +58 -3
  16. package/lib/models/aclmodel.js.map +1 -1
  17. package/lib/models/aclmodel.spec.js +46 -0
  18. package/lib/models/aclmodel.spec.js.map +1 -1
  19. package/lib/models/coremodel.d.ts +58 -10
  20. package/lib/models/coremodel.js +39 -32
  21. package/lib/models/coremodel.js.map +1 -1
  22. package/lib/models/coremodel.spec.js +68 -6
  23. package/lib/models/coremodel.spec.js.map +1 -1
  24. package/lib/models/ident.d.ts +8 -2
  25. package/lib/models/ident.js.map +1 -1
  26. package/lib/models/ident.spec.js +16 -0
  27. package/lib/models/ident.spec.js.map +1 -1
  28. package/lib/models/ownermodel.d.ts +1 -1
  29. package/lib/models/ownermodel.js.map +1 -1
  30. package/lib/models/ownermodel.spec.js +22 -19
  31. package/lib/models/ownermodel.spec.js.map +1 -1
  32. package/lib/models/user.d.ts +2 -0
  33. package/lib/models/user.js +4 -2
  34. package/lib/models/user.js.map +1 -1
  35. package/lib/models/user.spec.js +9 -2
  36. package/lib/models/user.spec.js.map +1 -1
  37. package/lib/queues/filequeue.d.ts +63 -0
  38. package/lib/queues/filequeue.js +161 -0
  39. package/lib/queues/filequeue.js.map +1 -0
  40. package/lib/queues/filequeue.spec.d.ts +1 -0
  41. package/lib/queues/filequeue.spec.js +90 -0
  42. package/lib/queues/filequeue.spec.js.map +1 -0
  43. package/lib/queues/memoryqueue.d.ts +18 -4
  44. package/lib/queues/memoryqueue.js +20 -13
  45. package/lib/queues/memoryqueue.js.map +1 -1
  46. package/lib/queues/memoryqueue.spec.js +142 -39
  47. package/lib/queues/memoryqueue.spec.js.map +1 -1
  48. package/lib/queues/pubsubservice.d.ts +27 -0
  49. package/lib/queues/pubsubservice.js +21 -0
  50. package/lib/queues/pubsubservice.js.map +1 -0
  51. package/lib/queues/queue.spec.js +16 -7
  52. package/lib/queues/queue.spec.js.map +1 -1
  53. package/lib/queues/queueservice.d.ts +108 -13
  54. package/lib/queues/queueservice.js +100 -36
  55. package/lib/queues/queueservice.js.map +1 -1
  56. package/lib/router.js +4 -6
  57. package/lib/router.js.map +1 -1
  58. package/lib/router.spec.js +27 -2
  59. package/lib/router.spec.js.map +1 -1
  60. package/lib/services/asyncevents.d.ts +110 -5
  61. package/lib/services/asyncevents.js +134 -39
  62. package/lib/services/asyncevents.js.map +1 -1
  63. package/lib/services/asyncevents.spec.js +58 -4
  64. package/lib/services/asyncevents.spec.js.map +1 -1
  65. package/lib/services/authentication.d.ts +57 -5
  66. package/lib/services/authentication.js +93 -84
  67. package/lib/services/authentication.js.map +1 -1
  68. package/lib/services/authentication.spec.js +118 -82
  69. package/lib/services/authentication.spec.js.map +1 -1
  70. package/lib/services/binary.d.ts +175 -48
  71. package/lib/services/binary.js +205 -170
  72. package/lib/services/binary.js.map +1 -1
  73. package/lib/services/binary.spec.d.ts +22 -3
  74. package/lib/services/binary.spec.js +327 -22
  75. package/lib/services/binary.spec.js.map +1 -1
  76. package/lib/services/configuration.d.ts +94 -13
  77. package/lib/services/configuration.js +98 -28
  78. package/lib/services/configuration.js.map +1 -1
  79. package/lib/services/configuration.spec.js +40 -1
  80. package/lib/services/configuration.spec.js.map +1 -1
  81. package/lib/services/cron.d.ts +4 -4
  82. package/lib/services/cron.js +37 -53
  83. package/lib/services/cron.js.map +1 -1
  84. package/lib/services/cron.spec.d.ts +1 -0
  85. package/lib/services/cron.spec.js +76 -0
  86. package/lib/services/cron.spec.js.map +1 -0
  87. package/lib/services/debugmailer.spec.js +18 -4
  88. package/lib/services/debugmailer.spec.js.map +1 -1
  89. package/lib/services/echo.js +22 -13
  90. package/lib/services/echo.js.map +1 -1
  91. package/lib/services/echo.spec.d.ts +1 -0
  92. package/lib/services/echo.spec.js +52 -0
  93. package/lib/services/echo.spec.js.map +1 -0
  94. package/lib/services/filebinary.d.ts +16 -9
  95. package/lib/services/filebinary.js +58 -73
  96. package/lib/services/filebinary.js.map +1 -1
  97. package/lib/services/filebinary.spec.d.ts +8 -1
  98. package/lib/services/filebinary.spec.js +133 -7
  99. package/lib/services/filebinary.spec.js.map +1 -1
  100. package/lib/services/fileconfiguration.d.ts +9 -3
  101. package/lib/services/fileconfiguration.js +13 -6
  102. package/lib/services/fileconfiguration.js.map +1 -1
  103. package/lib/services/fileconfiguration.spec.js +100 -5
  104. package/lib/services/fileconfiguration.spec.js.map +1 -1
  105. package/lib/services/kubernetesconfiguration.d.ts +8 -2
  106. package/lib/services/kubernetesconfiguration.js +16 -5
  107. package/lib/services/kubernetesconfiguration.js.map +1 -1
  108. package/lib/services/kubernetesconfiguration.spec.js +53 -16
  109. package/lib/services/kubernetesconfiguration.spec.js.map +1 -1
  110. package/lib/services/mailer.d.ts +11 -2
  111. package/lib/services/mailer.js +28 -34
  112. package/lib/services/mailer.js.map +1 -1
  113. package/lib/services/mailer.spec.js +69 -23
  114. package/lib/services/mailer.spec.js.map +1 -1
  115. package/lib/services/oauth.d.ts +5 -2
  116. package/lib/services/oauth.js +22 -8
  117. package/lib/services/oauth.js.map +1 -1
  118. package/lib/services/oauth.spec.js +33 -3
  119. package/lib/services/oauth.spec.js.map +1 -1
  120. package/lib/services/resource.spec.js +39 -2
  121. package/lib/services/resource.spec.js.map +1 -1
  122. package/lib/services/service.d.ts +16 -0
  123. package/lib/services/service.js +47 -6
  124. package/lib/services/service.js.map +1 -1
  125. package/lib/services/service.spec.d.ts +1 -0
  126. package/lib/services/service.spec.js +119 -0
  127. package/lib/services/service.spec.js.map +1 -0
  128. package/lib/stores/aggregator.d.ts +43 -0
  129. package/lib/stores/aggregator.js +106 -0
  130. package/lib/stores/aggregator.js.map +1 -0
  131. package/lib/stores/file.d.ts +49 -11
  132. package/lib/stores/file.js +84 -81
  133. package/lib/stores/file.js.map +1 -1
  134. package/lib/stores/file.spec.d.ts +6 -1
  135. package/lib/stores/file.spec.js +134 -9
  136. package/lib/stores/file.spec.js.map +1 -1
  137. package/lib/stores/mapper.d.ts +151 -0
  138. package/lib/stores/mapper.js +294 -0
  139. package/lib/stores/mapper.js.map +1 -0
  140. package/lib/stores/mapper.spec.d.ts +1 -0
  141. package/lib/stores/mapper.spec.js +55 -0
  142. package/lib/stores/mapper.spec.js.map +1 -0
  143. package/lib/stores/memory.d.ts +52 -7
  144. package/lib/stores/memory.js +71 -33
  145. package/lib/stores/memory.js.map +1 -1
  146. package/lib/stores/memory.spec.d.ts +6 -1
  147. package/lib/stores/memory.spec.js +65 -4
  148. package/lib/stores/memory.spec.js.map +1 -1
  149. package/lib/stores/store.d.ts +263 -126
  150. package/lib/stores/store.js +285 -493
  151. package/lib/stores/store.js.map +1 -1
  152. package/lib/stores/store.spec.d.ts +20 -0
  153. package/lib/stores/store.spec.js +242 -18
  154. package/lib/stores/store.spec.js.map +1 -1
  155. package/lib/test.d.ts +1 -7
  156. package/lib/test.js +3 -12
  157. package/lib/test.js.map +1 -1
  158. package/lib/utils/abstractdeployer.spec.d.ts +1 -0
  159. package/lib/utils/abstractdeployer.spec.js +23 -0
  160. package/lib/utils/abstractdeployer.spec.js.map +1 -0
  161. package/lib/utils/context.d.ts +25 -2
  162. package/lib/utils/context.js +33 -12
  163. package/lib/utils/context.js.map +1 -1
  164. package/lib/utils/context.spec.js +81 -11
  165. package/lib/utils/context.spec.js.map +1 -1
  166. package/lib/utils/cookie.d.ts +12 -0
  167. package/lib/utils/cookie.js +13 -1
  168. package/lib/utils/cookie.js.map +1 -1
  169. package/lib/utils/cookie.spec.js +42 -11
  170. package/lib/utils/cookie.spec.js.map +1 -1
  171. package/lib/utils/logger.d.ts +23 -4
  172. package/lib/utils/logger.js +29 -6
  173. package/lib/utils/logger.js.map +1 -1
  174. package/lib/utils/logger.spec.js +8 -0
  175. package/lib/utils/logger.spec.js.map +1 -1
  176. package/lib/utils/serializers.d.ts +5 -5
  177. package/lib/utils/serializers.js +10 -10
  178. package/lib/utils/serializers.js.map +1 -1
  179. package/lib/utils/serializers.spec.js +41 -16
  180. package/lib/utils/serializers.spec.js.map +1 -1
  181. package/lib/utils/waiter.d.ts +59 -1
  182. package/lib/utils/waiter.js +86 -3
  183. package/lib/utils/waiter.js.map +1 -1
  184. package/lib/utils/waiter.spec.js +48 -4
  185. package/lib/utils/waiter.spec.js.map +1 -1
  186. package/package.json +16 -11
  187. package/test/badapp/package.json +4 -0
  188. package/test/badapp/webda.config.json +1 -0
  189. package/test/cachedapp/webda.config.json +7 -0
  190. package/test/config-file-no-reload.json +70 -0
  191. package/test/config-file-reload.json +7 -1
  192. package/test/config-kube-reload.json +7 -1
  193. package/test/config.json +45 -21
  194. package/test/config.old-default.json +0 -16
  195. package/test/config.old.json +0 -16
  196. package/test/deployments/invalid.json +1 -0
  197. package/test/moddas/fakeservice.js +5 -0
  198. package/test/models/ident.js +10 -14
  199. package/test/models/task.js +2 -4
@@ -451,6 +451,9 @@ export declare class Application {
451
451
  getCurrentDeployment(): string;
452
452
  /**
453
453
  * Return if the application is a typescript application
454
+ *
455
+ * Webda will soon drop support for non javascript application
456
+ * @deprecated
454
457
  */
455
458
  isTypescript(): boolean;
456
459
  /**
@@ -20,6 +20,7 @@ const semver = require("semver");
20
20
  const dateFormat = require("dateformat");
21
21
  const serializers_1 = require("./utils/serializers");
22
22
  const echo_1 = require("./services/echo");
23
+ const cron_1 = require("./services/cron");
23
24
  /**
24
25
  * Implement the default way of retrieving schema
25
26
  */
@@ -112,14 +113,18 @@ class Application {
112
113
  "webda/mailer": index_1.Mailer,
113
114
  "webda/asyncevents": index_1.EventService,
114
115
  "webda/resourceservice": index_1.ResourceService,
116
+ "webda/cronservice": cron_1.CronService,
115
117
  "webda/echoservice": echo_1.EchoService,
116
118
  "webda/versionservice": index_1.VersionService,
117
119
  "webda/memoryqueue": index_1.MemoryQueue,
120
+ "webda/filequeue": index_1.FileQueue,
118
121
  "webda/configurationservice": index_1.ConfigurationService,
119
122
  "webda/fileconfigurationservice": index_1.FileConfigurationService,
120
123
  "webda/kubernetesconfigurationservice": index_1.KubernetesConfigurationService,
121
124
  "webda/consolelogger": index_1.ConsoleLoggerService,
122
- "webda/memorylogger": index_1.MemoryLoggerService
125
+ "webda/memorylogger": index_1.MemoryLoggerService,
126
+ "webda/mapper": index_1.MapperService,
127
+ "webda/aggregator": index_1.AggregatorService
123
128
  };
124
129
  /**
125
130
  * Models type registry
@@ -163,9 +168,10 @@ class Application {
163
168
  }
164
169
  this.appPath = path.dirname(file);
165
170
  try {
166
- this.baseConfiguration = JSON.parse(fs.readFileSync(file).toString() || "{}");
171
+ this.baseConfiguration = JSON.parse(fs.readFileSync(file).toString());
167
172
  }
168
173
  catch (err) {
174
+ this.log("WARN", err);
169
175
  if (allowModule) {
170
176
  this.baseConfiguration = { version: 2, module: {} };
171
177
  }
@@ -529,7 +535,11 @@ class Application {
529
535
  };
530
536
  let info = this.getPackageDescription();
531
537
  try {
532
- let tags = child_process_1.execSync(`git tag --points-at HEAD`, options).toString().trim().split("\n");
538
+ let tags = (0, child_process_1.execSync)(`git tag --points-at HEAD`, options)
539
+ .toString()
540
+ .trim()
541
+ .split("\n")
542
+ .filter(t => t !== "");
533
543
  let tag = "";
534
544
  let version = info.version;
535
545
  if (tags.includes(`${info.name}@${info.version}`)) {
@@ -546,9 +556,9 @@ class Application {
546
556
  // or version if single repo
547
557
  // if not included create a nextVersion+SNAPSHOT.${commit}.${now}
548
558
  return {
549
- commit: child_process_1.execSync(`git rev-parse HEAD`, options).toString().trim(),
550
- branch: child_process_1.execSync("git symbolic-ref --short HEAD", options).toString().trim(),
551
- short: child_process_1.execSync(`git rev-parse --short HEAD`, options).toString().trim(),
559
+ commit: (0, child_process_1.execSync)(`git rev-parse HEAD`, options).toString().trim(),
560
+ branch: (0, child_process_1.execSync)("git symbolic-ref --short HEAD", options).toString().trim(),
561
+ short: (0, child_process_1.execSync)(`git rev-parse --short HEAD`, options).toString().trim(),
552
562
  tag,
553
563
  tags,
554
564
  version
@@ -559,7 +569,7 @@ class Application {
559
569
  commit: "unknown",
560
570
  branch: "unknown",
561
571
  tag: "",
562
- short: "0000000",
572
+ short: "00000000",
563
573
  tags: [],
564
574
  version: info.version
565
575
  };
@@ -615,8 +625,8 @@ class Application {
615
625
  * @param replacements additional replacements to run
616
626
  */
617
627
  replaceVariables(object, replacements = {}) {
618
- if (typeof this[object] === "string") {
619
- return this.stringParameter(object);
628
+ if (typeof object === "string") {
629
+ return this.stringParameter(object, replacements);
620
630
  }
621
631
  let app = this;
622
632
  return JSON.parse(JSON.stringify(object, function (key, value) {
@@ -727,6 +737,9 @@ class Application {
727
737
  }
728
738
  /**
729
739
  * Return if the application is a typescript application
740
+ *
741
+ * Webda will soon drop support for non javascript application
742
+ * @deprecated
730
743
  */
731
744
  isTypescript() {
732
745
  return fs.existsSync(`${this.appPath}/tsconfig.json`);
@@ -741,7 +754,8 @@ class Application {
741
754
  }
742
755
  // exec typescript
743
756
  if (this.isTypescript()) {
744
- child_process_1.execSync(`tsc -p ${this.appPath}`);
757
+ this.log("DEBUG", "Compiling application");
758
+ (0, child_process_1.execSync)(`tsc -p ${this.appPath}`);
745
759
  }
746
760
  this.compiled = true;
747
761
  }
@@ -809,7 +823,7 @@ class Application {
809
823
  if (fs.existsSync(absPath) && fs.lstatSync(absPath).isDirectory()) {
810
824
  absPath += "/**/*.js";
811
825
  }
812
- glob.sync(absPath).forEach(this.loadJavascriptFile.bind(this));
826
+ glob.sync(absPath).forEach(f => this.loadJavascriptFile(f));
813
827
  });
814
828
  let moduleFile = path.join(this.appPath, "webda.module.json");
815
829
  let current = "";
@@ -982,16 +996,6 @@ class Application {
982
996
  this.appModule["models"][this.completeNamespace(obj.name)] = path.relative(this.appPath, absolutePath);
983
997
  this.addModel(this.completeNamespace(obj.name), obj);
984
998
  }
985
- else if (this.extends(obj, index_1.Service)) {
986
- this.log("DEBUG", "Found new Service implementation", this.completeNamespace(obj.name));
987
- this.appModule.services[this.completeNamespace(obj.name)] = path.relative(this.appPath, absolutePath);
988
- this.addService(this.completeNamespace(obj.name), obj);
989
- }
990
- else if (this.extends(obj, abstractdeployer_1.AbstractDeployer)) {
991
- this.log("DEBUG", "Found new Deployer implementation", this.completeNamespace(obj.name));
992
- this.appModule.deployers[this.completeNamespace(obj.name)] = path.relative(this.appPath, absolutePath);
993
- this.addDeployer(this.completeNamespace(obj.name), obj);
994
- }
995
999
  }
996
1000
  /**
997
1001
  * Get the application files
@@ -1001,7 +1005,7 @@ class Application {
1001
1005
  }
1002
1006
  }
1003
1007
  __decorate([
1004
- index_1.Cache()
1008
+ (0, index_1.Cache)()
1005
1009
  ], Application.prototype, "getGitInformation", null);
1006
1010
  exports.Application = Application;
1007
1011
  //# sourceMappingURL=application.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"application.js","sourceRoot":"","sources":["../src/application.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"application.js","sourceRoot":"","sources":["../src/application.ts"],"names":[],"mappings":"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"}
@@ -21,6 +21,8 @@ const mocha_1 = require("@testdeck/mocha");
21
21
  const path = require("path");
22
22
  const index_1 = require("./index");
23
23
  const test_1 = require("./test");
24
+ const fs_extra_1 = require("fs-extra");
25
+ const child_process_1 = require("child_process");
24
26
  let ApplicationTest = class ApplicationTest extends test_1.WebdaTest {
25
27
  before() {
26
28
  const _super = Object.create(null, {
@@ -52,6 +54,13 @@ let ApplicationTest = class ApplicationTest extends test_1.WebdaTest {
52
54
  }
53
55
  });
54
56
  }
57
+ testStringParameter() {
58
+ assert.strictEqual(this.sampleApp.replaceVariables("${resources.replace}", {
59
+ resources: {
60
+ replace: "Plop"
61
+ }
62
+ }), "Plop");
63
+ }
55
64
  getAppPath() {
56
65
  assert.strictEqual(this.sampleApp.getAppPath(), path.join(__dirname, "..", "..", "..", "sample-app"));
57
66
  assert.strictEqual(this.sampleApp.getAppPath("lib"), path.join(__dirname, "..", "..", "..", "sample-app", "lib"));
@@ -84,8 +93,16 @@ let ApplicationTest = class ApplicationTest extends test_1.WebdaTest {
84
93
  assert.strictEqual(config.models["WebdaDemo/Contact"], "lib/models/contact.js");
85
94
  assert.strictEqual(config.deployers["WebdaDemo/CustomDeployer"], "lib/services/deployer.js");
86
95
  assert.deepStrictEqual(config.schemas["WebdaDemo/CustomDeployer"], { title: "CustomDeployer" });
96
+ // COV one
97
+ this.sampleApp.getPackagesLocations = () => {
98
+ // @ts-ignore
99
+ this.sampleApp._loaded = [this.sampleApp.getAppPath("plop")];
100
+ return ["plop"];
101
+ };
102
+ this.sampleApp.generateModule();
87
103
  }
88
104
  loadModules() {
105
+ fs.mkdirSync(this.sampleApp.getAppPath("node_modules"), { recursive: true });
89
106
  this.sampleApp.loadModules();
90
107
  }
91
108
  getDeployment() {
@@ -109,7 +126,7 @@ let ApplicationTest = class ApplicationTest extends test_1.WebdaTest {
109
126
  let webda = new index_1.Core(new index_1.Application(__dirname + "/../test/config.old.json"));
110
127
  yield webda.init();
111
128
  // All services - DefinedMailer
112
- assert.strictEqual(Object.keys(webda.getServices()).length, 13);
129
+ assert.strictEqual(Object.keys(webda.getServices()).length, 14);
113
130
  // Check locales are moved correctly
114
131
  assert.strictEqual(webda.getLocales().length, 3);
115
132
  // Check models - 2 from configuration files - 2 from Webda
@@ -134,7 +151,7 @@ let ApplicationTest = class ApplicationTest extends test_1.WebdaTest {
134
151
  let webda = new index_1.Core(new index_1.Application(__dirname + "/../test/config.old-default.json"));
135
152
  yield webda.init();
136
153
  // All services - DefinedMailer
137
- assert.strictEqual(Object.keys(webda.getServices()).length, 13);
154
+ assert.strictEqual(Object.keys(webda.getServices()).length, 14);
138
155
  // Check locales are moved correctly
139
156
  assert.strictEqual(webda.getLocales().length, 3);
140
157
  // Check models - 2 from configuration files - 2 from Webda
@@ -153,10 +170,158 @@ let ApplicationTest = class ApplicationTest extends test_1.WebdaTest {
153
170
  assert.notStrictEqual(executor, undefined);
154
171
  });
155
172
  }
173
+ cov() {
174
+ assert.throws(() => new index_1.Application("/notexisting"), /Not a webda application folder or webda.config.json file: unexisting.*/);
175
+ assert.throws(() => new index_1.Application(__dirname + "/../test/moddas"), /Not a webda application folder or webda.config.json file: .*/);
176
+ assert.throws(() => new index_1.Application(__dirname + "/../test/badapp"), /Cannot parse JSON of: .*/);
177
+ // If allow module is enable the Application should let run anywhere
178
+ new index_1.Application(__dirname + "/../test/moddas", undefined, true);
179
+ new index_1.Application(__dirname + "/../test/badapp", undefined, true);
180
+ // Read cached modules
181
+ let app = new index_1.Application(__dirname + "/../test/cachedapp", undefined, true);
182
+ // No package.json should not fail although more than abnormal
183
+ app.loadPackageInfos();
184
+ app = new index_1.Application(__dirname + "/../test/config.old-default.json");
185
+ assert.ok(!app.extends(null, String));
186
+ app.setSchemaResolver(null);
187
+ app.getPackageWebda();
188
+ assert.throws(() => app.getService("Unknown"), /Undefined service Unknown/);
189
+ app.getDeployers();
190
+ assert.throws(() => app.getDeployment("invalid"), /Invalid deployment configuration /);
191
+ app.getModules();
192
+ // Alternative of files
193
+ // @ts-ignore
194
+ app.getPackageDescription.files = undefined;
195
+ assert.deepStrictEqual(app.getPackagesLocations(), ["lib/**/*.js"]);
196
+ }
197
+ loadJavascriptFile() {
198
+ let app = new index_1.Application(__dirname + "/../test/config.old-default.json");
199
+ // @ts-ignore
200
+ let fct = app.loadJavascriptFile.bind(app);
201
+ fct(path.join(__dirname, "..", "test", "models", "task.js"));
202
+ fct(path.join(__dirname, "..", "test", "models", "task.js"));
203
+ fct(path.join(__dirname, "..", "test", "moddas", "fakeservice.js"));
204
+ }
205
+ fromServiceType() {
206
+ let app = new index_1.Application(__dirname + "/../test/config.json");
207
+ // Add a fake deployer as no deployer are available within Core context
208
+ app.addDeployer("Webda/Container", {});
209
+ // For size reason, the SchemaResolver only work within shell context
210
+ assert.strictEqual(app.getSchemaResolver().fromServiceType("Webda/FileStore"), undefined);
211
+ assert.strictEqual(app.getSchemaResolver().fromServiceType("Webda/Container"), undefined);
212
+ assert.strictEqual(app.getSchemaResolver().fromServiceType("Webda/CoreModel"), undefined);
213
+ assert.strictEqual(app.getSchemaResolver().fromServiceType("unknown"), undefined);
214
+ // Check if cached just use cache
215
+ // @ts-ignore
216
+ app.baseConfiguration.cachedModules = {
217
+ schemas: {
218
+ // @ts-ignore
219
+ fake: 666
220
+ }
221
+ };
222
+ assert.strictEqual(app.getSchemaResolver().fromServiceType("fake"), 666);
223
+ // cov
224
+ app.loadModules();
225
+ }
226
+ getFullNameFromPrototype() {
227
+ let app = new index_1.Application(__dirname + "/../test/config.json");
228
+ let services = app.getServices();
229
+ let name = Object.keys(services).pop();
230
+ let service = services[name].prototype;
231
+ assert.strictEqual(app.getFullNameFromPrototype(service), name);
232
+ // Cheat for deployer
233
+ services = app.getModels();
234
+ name = Object.keys(services).pop();
235
+ service = services[name].prototype;
236
+ app.addDeployer("Plop/Test", services[name]);
237
+ assert.strictEqual(app.getFullNameFromPrototype(service), "plop/test");
238
+ }
239
+ loadModule() {
240
+ let app = new index_1.Application(__dirname + "/../test/config.json");
241
+ app.loadModule({
242
+ services: {
243
+ Test: "moddas/fakeservice.js",
244
+ ReTest: "./notFound.js"
245
+ },
246
+ models: {
247
+ ReTest: "notFound.js"
248
+ },
249
+ deployers: {
250
+ ReTest: "notFound.js"
251
+ }
252
+ }, "");
253
+ app.loadModule({});
254
+ app.resolveRequire("./../test/moddas/fakeservice.js");
255
+ let cwd = process.cwd();
256
+ try {
257
+ // Check loading of aws module
258
+ process.chdir(path.join(__dirname, "..", "..", "aws"));
259
+ app.loadLocalModule();
260
+ }
261
+ finally {
262
+ process.chdir(cwd);
263
+ }
264
+ }
265
+ gitInformations() {
266
+ let app = new index_1.Application(__dirname + "/../test/badapp", undefined, true);
267
+ try {
268
+ let options = {
269
+ cwd: app.getAppPath()
270
+ };
271
+ // Create a repo
272
+ (0, child_process_1.execSync)("git init", options);
273
+ (0, child_process_1.execSync)('git config user.email "you@example.com"', options);
274
+ (0, child_process_1.execSync)('git config user.name "Your Name"', options);
275
+ (0, child_process_1.execSync)("git add webda.config.json", options);
276
+ (0, child_process_1.execSync)("git commit -n -m 'plop'", options);
277
+ // Basic with no tags
278
+ index_1.CacheService.clearAllCache();
279
+ let infos = app.getGitInformation();
280
+ assert.ok(infos.branch.match(/(master)|(main)/) !== null);
281
+ assert.strictEqual(infos.tag, "");
282
+ assert.strictEqual(infos.tags.length, 0);
283
+ assert.ok(infos.version.match(/0\.1\.1\+\d+/) !== null);
284
+ (0, child_process_1.execSync)("git tag v0.1.0", options);
285
+ index_1.CacheService.clearAllCache();
286
+ // Basic with one tag v0.1.0
287
+ infos = app.getGitInformation();
288
+ assert.strictEqual(infos.tag, "v0.1.0");
289
+ assert.strictEqual(infos.tags.length, 1);
290
+ assert.strictEqual(infos.tags[0], "v0.1.0");
291
+ assert.strictEqual(infos.version, "0.1.0");
292
+ (0, child_process_1.execSync)("git tag badapp@0.1.0", options);
293
+ // Basic with two tags badapp@0.1.0 and v0.1.0
294
+ index_1.CacheService.clearAllCache();
295
+ infos = app.getGitInformation();
296
+ assert.strictEqual(infos.tag, "badapp@0.1.0");
297
+ assert.strictEqual(infos.tags.length, 2);
298
+ assert.deepStrictEqual(infos.tags, ["badapp@0.1.0", "v0.1.0"]);
299
+ assert.strictEqual(infos.version, "0.1.0");
300
+ (0, fs_extra_1.emptyDirSync)(app.getAppPath(".git"));
301
+ index_1.CacheService.clearAllCache();
302
+ // Running git on / should fail
303
+ // @ts-ignore
304
+ app.appPath = "/";
305
+ assert.deepStrictEqual(app.getGitInformation(), {
306
+ commit: "unknown",
307
+ branch: "unknown",
308
+ tag: "",
309
+ short: "00000000",
310
+ tags: [],
311
+ version: "0.1.0"
312
+ });
313
+ }
314
+ finally {
315
+ (0, fs_extra_1.removeSync)(app.getAppPath(".git"));
316
+ }
317
+ }
156
318
  };
157
319
  __decorate([
158
320
  mocha_1.test
159
321
  ], ApplicationTest.prototype, "testObjectParameter", null);
322
+ __decorate([
323
+ mocha_1.test
324
+ ], ApplicationTest.prototype, "testStringParameter", null);
160
325
  __decorate([
161
326
  mocha_1.test
162
327
  ], ApplicationTest.prototype, "getAppPath", null);
@@ -181,6 +346,24 @@ __decorate([
181
346
  __decorate([
182
347
  mocha_1.test
183
348
  ], ApplicationTest.prototype, "migrateV0toV2DefaultDomain", null);
349
+ __decorate([
350
+ mocha_1.test
351
+ ], ApplicationTest.prototype, "cov", null);
352
+ __decorate([
353
+ mocha_1.test
354
+ ], ApplicationTest.prototype, "loadJavascriptFile", null);
355
+ __decorate([
356
+ mocha_1.test
357
+ ], ApplicationTest.prototype, "fromServiceType", null);
358
+ __decorate([
359
+ mocha_1.test
360
+ ], ApplicationTest.prototype, "getFullNameFromPrototype", null);
361
+ __decorate([
362
+ mocha_1.test
363
+ ], ApplicationTest.prototype, "loadModule", null);
364
+ __decorate([
365
+ mocha_1.test
366
+ ], ApplicationTest.prototype, "gitInformations", null);
184
367
  ApplicationTest = __decorate([
185
368
  mocha_1.suite
186
369
  ], ApplicationTest);
@@ -1 +1 @@
1
- {"version":3,"file":"application.spec.js","sourceRoot":"","sources":["../src/application.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"application.spec.js","sourceRoot":"","sources":["../src/application.spec.ts"],"names":[],"mappings":"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"}