@api-client/core 0.7.8 → 0.7.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/browser.d.ts +5 -1
- package/build/browser.js.map +1 -1
- package/build/index.d.ts +6 -1
- package/build/index.js +8 -0
- package/build/index.js.map +1 -1
- package/build/src/events/Events.d.ts +3 -3
- package/build/src/events/transport/TransportEvents.d.ts +10 -36
- package/build/src/events/transport/TransportEvents.js +9 -23
- package/build/src/events/transport/TransportEvents.js.map +1 -1
- package/build/src/models/AppProject.d.ts +10 -0
- package/build/src/models/AppProject.js +14 -0
- package/build/src/models/AppProject.js.map +1 -1
- package/build/src/proxy/AppProjectProxy.d.ts +28 -0
- package/build/src/proxy/AppProjectProxy.js +107 -0
- package/build/src/proxy/AppProjectProxy.js.map +1 -0
- package/build/src/proxy/HttpProjectProxy.d.ts +24 -0
- package/build/src/proxy/HttpProjectProxy.js +99 -0
- package/build/src/proxy/HttpProjectProxy.js.map +1 -0
- package/build/src/proxy/Proxy.d.ts +27 -0
- package/build/src/proxy/Proxy.js +7 -0
- package/build/src/proxy/Proxy.js.map +1 -0
- package/build/src/proxy/ProxyService.d.ts +33 -0
- package/build/src/proxy/ProxyService.js +43 -0
- package/build/src/proxy/ProxyService.js.map +1 -0
- package/build/src/proxy/RequestProxy.d.ts +42 -0
- package/build/src/proxy/RequestProxy.js +53 -0
- package/build/src/proxy/RequestProxy.js.map +1 -0
- package/build/src/runtime/http-runner/HttpRequestRunner.d.ts +5 -0
- package/build/src/runtime/http-runner/HttpRequestRunner.js +18 -0
- package/build/src/runtime/http-runner/HttpRequestRunner.js.map +1 -1
- package/build/src/runtime/node/InteropInterfaces.d.ts +2 -1
- package/build/src/runtime/node/ProjectParallelRunner.d.ts +3 -2
- package/build/src/runtime/node/ProjectParallelRunner.js.map +1 -1
- package/build/src/runtime/node/ProjectRequestRunner.d.ts +0 -5
- package/build/src/runtime/node/ProjectRequestRunner.js +1 -18
- package/build/src/runtime/node/ProjectRequestRunner.js.map +1 -1
- package/build/src/runtime/node/ProjectRunner.d.ts +3 -3
- package/build/src/runtime/node/ProjectRunner.js.map +1 -1
- package/build/src/runtime/node/ProjectRunnerWorker.js +23 -5
- package/build/src/runtime/node/ProjectRunnerWorker.js.map +1 -1
- package/package.json +4 -1
- package/src/events/transport/TransportEvents.ts +13 -53
- package/src/models/AppProject.ts +16 -0
- package/src/proxy/AppProjectProxy.ts +126 -0
- package/src/proxy/HttpProjectProxy.ts +114 -0
- package/src/proxy/Proxy.ts +30 -0
- package/src/proxy/ProxyService.ts +48 -0
- package/src/proxy/RequestProxy.ts +89 -0
- package/src/proxy/readme.md +9 -0
- package/src/runtime/http-runner/HttpRequestRunner.ts +19 -0
- package/src/runtime/node/InteropInterfaces.ts +2 -1
- package/src/runtime/node/ProjectParallelRunner.ts +3 -2
- package/src/runtime/node/ProjectRequestRunner.ts +2 -20
- package/src/runtime/node/ProjectRunner.ts +3 -3
- package/src/runtime/node/ProjectRunnerWorker.ts +21 -5
|
@@ -205,10 +205,10 @@ export class ProjectRequestRunner extends EventEmitter {
|
|
|
205
205
|
key: request.key,
|
|
206
206
|
};
|
|
207
207
|
const requestData = request.expects.toJSON();
|
|
208
|
-
requestData.url = this.prepareRequestUrl(requestData.url, variables);
|
|
209
208
|
try {
|
|
210
209
|
// Below replaces the single call to the `run()` function of the factory to
|
|
211
210
|
// report via the events a request object that has evaluated with the Jexl library.
|
|
211
|
+
requestData.url = factory.prepareRequestUrl(requestData.url, variables);
|
|
212
212
|
const requestCopy = await factory.applyVariables(requestData);
|
|
213
213
|
await factory.applyAuthorization(requestCopy);
|
|
214
214
|
await factory.applyCookies(requestCopy);
|
|
@@ -283,22 +283,5 @@ export class ProjectRequestRunner extends EventEmitter {
|
|
|
283
283
|
ctx.baseUri = baseUri || '';
|
|
284
284
|
return this.variablesProcessor.buildContext(ctx);
|
|
285
285
|
}
|
|
286
|
-
/**
|
|
287
|
-
* When defined it applies the serve's base URI to relative URLs.
|
|
288
|
-
* @param currentUrl The URL to process.
|
|
289
|
-
*/
|
|
290
|
-
prepareRequestUrl(currentUrl, variables) {
|
|
291
|
-
const { baseUri } = variables;
|
|
292
|
-
if (!baseUri) {
|
|
293
|
-
return currentUrl;
|
|
294
|
-
}
|
|
295
|
-
if (currentUrl.startsWith('http:') || currentUrl.startsWith('https:')) {
|
|
296
|
-
return currentUrl;
|
|
297
|
-
}
|
|
298
|
-
if (currentUrl.startsWith('/')) {
|
|
299
|
-
return `${baseUri}${currentUrl}`;
|
|
300
|
-
}
|
|
301
|
-
return `${baseUri}/${currentUrl}`;
|
|
302
|
-
}
|
|
303
286
|
}
|
|
304
287
|
//# sourceMappingURL=ProjectRequestRunner.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProjectRequestRunner.js","sourceRoot":"","sources":["../../../../src/runtime/node/ProjectRequestRunner.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"ProjectRequestRunner.js","sourceRoot":"","sources":["../../../../src/runtime/node/ProjectRequestRunner.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,8 +8,8 @@ import { IProjectExecutionIteration, IProjectExecutionLog } from '../reporters/R
|
|
|
8
8
|
import { BaseRunner } from './BaseRunner.js';
|
|
9
9
|
import { IProjectRunnerOptions, IRequestRunnerOptions } from './InteropInterfaces.js';
|
|
10
10
|
import { State } from './enums.js';
|
|
11
|
-
import { AppProject } from '../../models/AppProject.js';
|
|
12
|
-
declare type ProjectParent = HttpProject | ProjectFolder;
|
|
11
|
+
import { AppProject, AppProjectFolder } from '../../models/AppProject.js';
|
|
12
|
+
declare type ProjectParent = HttpProject | ProjectFolder | AppProject | AppProjectFolder;
|
|
13
13
|
export interface ProjectRunner {
|
|
14
14
|
/**
|
|
15
15
|
* Event dispatched when an iteration is about to start.
|
|
@@ -137,7 +137,7 @@ export declare abstract class ProjectRunner extends BaseRunner {
|
|
|
137
137
|
* A required step before running the project.
|
|
138
138
|
* It configures the execution context. It may throw an error when configuration is not valid.
|
|
139
139
|
*/
|
|
140
|
-
configure(project: HttpProject, opts?: IProjectRunnerOptions): Promise<void>;
|
|
140
|
+
configure(project: HttpProject | AppProject, opts?: IProjectRunnerOptions): Promise<void>;
|
|
141
141
|
/**
|
|
142
142
|
* Executes the requests in the project.
|
|
143
143
|
* @returns The execution log created by calling the `createReport()` function.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProjectRunner.js","sourceRoot":"","sources":["../../../../src/runtime/node/ProjectRunner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AAGtE,OAAO,EAAE,WAAW,EAAgB,MAAM,6BAA6B,CAAC;AACxE,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAC;AAG/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAEjE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAgEnC;;;;;;;;;;;GAWG;AACH,MAAM,OAAgB,aAAc,SAAQ,UAAU;IACpD;;OAEG;IACH,OAAO,CAA4B;IACnC;;OAEG;IACH,OAAO,CAAyB;IAChC;;OAEG;IACH,IAAI,CAAiB;IACrB;;OAEG;IACH,WAAW,CAAe;IAC1B;;OAEG;IACO,KAAK,GAAG,CAAC,CAAC;IACpB;;OAEG;IACO,gBAAgB,CAA8B;IACxD;;OAEG;IACO,SAAS,GAAG,CAAC,CAAC;IACxB;;OAEG;IACO,aAAa,GAAG,KAAK,CAAC;IAChC;;;OAGG;IACH,MAAM,GAAG,KAAK,CAAC;IAEf;;OAEG;IACO,OAAO,CAAwB;IAE/B,MAAM,GAAU,KAAK,CAAC,IAAI,CAAC;IAErC,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAES,OAAO,CAAe;IAEhC;;;;OAIG;IACH,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,IAAI,MAAM,CAAC,KAA8B;QACvC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC;QACzB,IAAI,GAAG,KAAK,KAAK,EAAE;YACjB,OAAO;SACR;QACD,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACrB,IAAI,GAAG,EAAE;YACP,GAAG,CAAC,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;SACtD;QACD,IAAI,KAAK,EAAE;YACT,KAAK,CAAC,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;SACrD;IACH,CAAC;IAED;QACE,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACvD,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACzD,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnD,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrD,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,SAAS,CAAC,
|
|
1
|
+
{"version":3,"file":"ProjectRunner.js","sourceRoot":"","sources":["../../../../src/runtime/node/ProjectRunner.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
/* eslint-disable no-unused-vars */
|
|
3
3
|
import process from 'process';
|
|
4
4
|
import cluster from 'cluster';
|
|
5
|
-
import { HttpProject } from '../../models/HttpProject.js';
|
|
5
|
+
import { HttpProject, Kind as HttpProjectKind } from '../../models/HttpProject.js';
|
|
6
|
+
import { AppProject, AppProjectKind } from '../../models/AppProject.js';
|
|
6
7
|
import { sleep } from '../../lib/timers/Timers.js';
|
|
7
8
|
import { ProjectRunner } from './ProjectRunner.js';
|
|
8
9
|
import { State } from './enums.js';
|
|
@@ -12,7 +13,9 @@ class ProjectExeWorker extends ProjectRunner {
|
|
|
12
13
|
if (cluster.isPrimary) {
|
|
13
14
|
throw new Error(`This file should not be called directly.`);
|
|
14
15
|
}
|
|
15
|
-
process.send
|
|
16
|
+
if (process.send) {
|
|
17
|
+
process.send({ cmd: 'online' });
|
|
18
|
+
}
|
|
16
19
|
process.on('message', this.messageHandler.bind(this));
|
|
17
20
|
}
|
|
18
21
|
messageHandler(message) {
|
|
@@ -25,12 +28,25 @@ class ProjectExeWorker extends ProjectRunner {
|
|
|
25
28
|
async run(options) {
|
|
26
29
|
options.cookies = new InMemoryCookieJar();
|
|
27
30
|
try {
|
|
28
|
-
|
|
31
|
+
const schema = options.project;
|
|
32
|
+
let project;
|
|
33
|
+
if (schema.kind === HttpProjectKind) {
|
|
34
|
+
project = new HttpProject(schema);
|
|
35
|
+
}
|
|
36
|
+
else if (schema.kind === AppProjectKind) {
|
|
37
|
+
project = new AppProject(schema);
|
|
38
|
+
}
|
|
39
|
+
else {
|
|
40
|
+
throw new Error(`Unknown project kind: ${schema.kind}`);
|
|
41
|
+
}
|
|
42
|
+
await this.configure(project, options);
|
|
29
43
|
await this.execute();
|
|
30
44
|
}
|
|
31
45
|
catch (e) {
|
|
32
46
|
const cause = e;
|
|
33
|
-
process.send
|
|
47
|
+
if (process.send) {
|
|
48
|
+
process.send({ cmd: 'error', data: cause.message });
|
|
49
|
+
}
|
|
34
50
|
}
|
|
35
51
|
}
|
|
36
52
|
async execute() {
|
|
@@ -53,7 +69,9 @@ class ProjectExeWorker extends ProjectRunner {
|
|
|
53
69
|
process.off('unhandledRejection', unhandledRejection);
|
|
54
70
|
this.endTime = Date.now();
|
|
55
71
|
const log = await this.createReport();
|
|
56
|
-
process.send
|
|
72
|
+
if (process.send) {
|
|
73
|
+
process.send({ cmd: 'result', data: log.iterations });
|
|
74
|
+
}
|
|
57
75
|
this._state = State.Idle;
|
|
58
76
|
return log;
|
|
59
77
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProjectRunnerWorker.js","sourceRoot":"","sources":["../../../../src/runtime/node/ProjectRunnerWorker.ts"],"names":[],"mappings":"AAAA,yDAAyD;AACzD,mCAAmC;AACnC,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"ProjectRunnerWorker.js","sourceRoot":"","sources":["../../../../src/runtime/node/ProjectRunnerWorker.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@api-client/core",
|
|
3
3
|
"description": "The API Client's core client library. Works in NodeJS and in a ES enabled browser.",
|
|
4
|
-
"version": "0.7.
|
|
4
|
+
"version": "0.7.11",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"main": "build/index.js",
|
|
7
7
|
"module": "build/index.js",
|
|
@@ -28,6 +28,7 @@
|
|
|
28
28
|
"@esm-bundle/chai": "^4.3.4-fix.0",
|
|
29
29
|
"@types/chai": "^4.2.22",
|
|
30
30
|
"@types/chai-as-promised": "^7.1.5",
|
|
31
|
+
"@types/chai-uuid": "^1.0.2",
|
|
31
32
|
"@types/cors": "^2.8.12",
|
|
32
33
|
"@types/express-ntlm": "^2.3.3",
|
|
33
34
|
"@types/fs-extra": "^9.0.13",
|
|
@@ -42,6 +43,7 @@
|
|
|
42
43
|
"amf-client-js": "^5.0.8-0",
|
|
43
44
|
"chai": "^4.3.4",
|
|
44
45
|
"chai-as-promised": "^7.1.1",
|
|
46
|
+
"chai-uuid": "^1.0.6",
|
|
45
47
|
"cors": "^2.8.5",
|
|
46
48
|
"eslint": "^8.9.0",
|
|
47
49
|
"eslint-config-prettier": "^8.3.0",
|
|
@@ -55,6 +57,7 @@
|
|
|
55
57
|
"husky": "^8.0.1",
|
|
56
58
|
"lint-staged": "^13.0.1",
|
|
57
59
|
"mocha": "^10.0.0",
|
|
60
|
+
"nock": "^13.2.7",
|
|
58
61
|
"oauth2-mock-server": "^4.3.1",
|
|
59
62
|
"sinon": "^14.0.0",
|
|
60
63
|
"source-map-support": "^0.5.21",
|
|
@@ -1,46 +1,20 @@
|
|
|
1
1
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
2
2
|
/* eslint-disable @typescript-eslint/no-unused-vars */
|
|
3
|
-
import { IRequestAuthorization } from "../../models/RequestAuthorization.js";
|
|
4
3
|
import { IHttpRequest } from "../../models/HttpRequest.js";
|
|
5
|
-
import { IRequestBaseConfig } from "../../models/RequestConfig.js";
|
|
6
4
|
import { IRequestLog } from '../../models/RequestLog.js';
|
|
7
|
-
import { HttpProject } from "../../models/HttpProject.js";
|
|
8
|
-
import { AppProject } from "../../models/AppProject.js";
|
|
9
5
|
import { ContextEvent } from "../BaseEvents.js";
|
|
10
6
|
import { TransportEventTypes } from "./TransportEventTypes.js";
|
|
11
|
-
import { IProjectRunnerOptions } from "../../runtime/node/InteropInterfaces.js";
|
|
12
7
|
import { IProjectExecutionLog } from "../../runtime/reporters/Reporter.js";
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
config?: IRequestBaseConfig;
|
|
18
|
-
}
|
|
8
|
+
import { IRequestProxyInit } from "../../proxy/RequestProxy.js";
|
|
9
|
+
import { IHttpProjectProxyInit } from "../../proxy/HttpProjectProxy.js";
|
|
10
|
+
import { IAppProjectProxyInit } from "../../proxy/AppProjectProxy.js";
|
|
11
|
+
import { IProxyResult } from "../../proxy/Proxy.js";
|
|
19
12
|
|
|
20
13
|
export interface IHttpRequestDetail {
|
|
21
14
|
request: IHttpRequest;
|
|
22
15
|
init?: RequestInit;
|
|
23
16
|
}
|
|
24
17
|
|
|
25
|
-
export interface IHttpRequestResult {
|
|
26
|
-
log: IRequestLog;
|
|
27
|
-
/**
|
|
28
|
-
* The variables evaluated during the run.
|
|
29
|
-
* These variables have values set by request HTTP flows.
|
|
30
|
-
*/
|
|
31
|
-
variables: Record<string, string>;
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
export interface IHttpProjectRequestDetail {
|
|
35
|
-
project: HttpProject | string;
|
|
36
|
-
opts: IProjectRunnerOptions;
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
export interface IAppProjectRequestDetail {
|
|
40
|
-
project: AppProject | string;
|
|
41
|
-
opts: IProjectRunnerOptions;
|
|
42
|
-
}
|
|
43
|
-
|
|
44
18
|
/* eslint-disable no-unused-vars */
|
|
45
19
|
export const TransportEvent = Object.freeze({
|
|
46
20
|
/**
|
|
@@ -51,17 +25,11 @@ export const TransportEvent = Object.freeze({
|
|
|
51
25
|
* Sends a single request without a context of a project.
|
|
52
26
|
*
|
|
53
27
|
* @param target The events target.
|
|
54
|
-
* @param
|
|
55
|
-
* @param authorization When known, a list of authorization configuration to apply to the request.
|
|
56
|
-
* @param config Optional request configuration.
|
|
28
|
+
* @param init The request execution configuration
|
|
57
29
|
* @returns The execution log with the variables evaluated during the run or `undefined` when the event was not handled.
|
|
58
30
|
*/
|
|
59
|
-
request: async (
|
|
60
|
-
const e = new ContextEvent<
|
|
61
|
-
request,
|
|
62
|
-
authorization,
|
|
63
|
-
config
|
|
64
|
-
});
|
|
31
|
+
request: async (init: IRequestProxyInit, target: EventTarget = window): Promise<IProxyResult<IRequestLog> | undefined> => {
|
|
32
|
+
const e = new ContextEvent<IRequestProxyInit, IProxyResult<IRequestLog>>(TransportEventTypes.Core.request, init);
|
|
65
33
|
target.dispatchEvent(e);
|
|
66
34
|
return e.detail.result;
|
|
67
35
|
},
|
|
@@ -70,14 +38,10 @@ export const TransportEvent = Object.freeze({
|
|
|
70
38
|
* For both the project or a folder (since it's all single configuration.)
|
|
71
39
|
*
|
|
72
40
|
* @param target The events target
|
|
73
|
-
* @param
|
|
74
|
-
* @param opts The project execution options.
|
|
41
|
+
* @param init The project execution configuration
|
|
75
42
|
*/
|
|
76
|
-
httpProject: async (
|
|
77
|
-
const e = new ContextEvent<
|
|
78
|
-
project,
|
|
79
|
-
opts,
|
|
80
|
-
});
|
|
43
|
+
httpProject: async (init: IHttpProjectProxyInit, target: EventTarget = window): Promise<IProxyResult<IProjectExecutionLog> | undefined> => {
|
|
44
|
+
const e = new ContextEvent<IHttpProjectProxyInit, IProxyResult<IProjectExecutionLog>>(TransportEventTypes.Core.httpProject, init);
|
|
81
45
|
target.dispatchEvent(e);
|
|
82
46
|
return e.detail.result;
|
|
83
47
|
},
|
|
@@ -86,14 +50,10 @@ export const TransportEvent = Object.freeze({
|
|
|
86
50
|
* For both the project or a folder (since it's all single configuration.)
|
|
87
51
|
*
|
|
88
52
|
* @param target The events target
|
|
89
|
-
* @param
|
|
90
|
-
* @param opts The project execution options.
|
|
53
|
+
* @param init The project execution configuration
|
|
91
54
|
*/
|
|
92
|
-
appProject: async (
|
|
93
|
-
const e = new ContextEvent<
|
|
94
|
-
project,
|
|
95
|
-
opts,
|
|
96
|
-
});
|
|
55
|
+
appProject: async (init: IAppProjectProxyInit, target: EventTarget = window): Promise<IProxyResult<IProjectExecutionLog> | undefined> => {
|
|
56
|
+
const e = new ContextEvent<IAppProjectProxyInit, IProxyResult<IProjectExecutionLog>>(TransportEventTypes.Core.appProject, init);
|
|
97
57
|
target.dispatchEvent(e);
|
|
98
58
|
return e.detail.result;
|
|
99
59
|
},
|
package/src/models/AppProject.ts
CHANGED
|
@@ -983,6 +983,13 @@ export class AppProjectFolder extends AppProjectParent {
|
|
|
983
983
|
listEnvironments(): Environment[] {
|
|
984
984
|
return this.project.listEnvironments({ parent: this.key });
|
|
985
985
|
}
|
|
986
|
+
|
|
987
|
+
/**
|
|
988
|
+
* @returns The list of environments defined in this folder
|
|
989
|
+
*/
|
|
990
|
+
getEnvironments(): Environment[] {
|
|
991
|
+
return this.project.getEnvironments({ parent: this.key });
|
|
992
|
+
}
|
|
986
993
|
}
|
|
987
994
|
|
|
988
995
|
/**
|
|
@@ -1879,6 +1886,15 @@ export class AppProject extends AppProjectParent {
|
|
|
1879
1886
|
return env;
|
|
1880
1887
|
}
|
|
1881
1888
|
|
|
1889
|
+
/**
|
|
1890
|
+
* This method is a link to `listEnvironments()` to be compatible with the HttpProject.
|
|
1891
|
+
*
|
|
1892
|
+
* @returns The list of environments defined in this folder
|
|
1893
|
+
*/
|
|
1894
|
+
getEnvironments(opts?: IAppProjectItemOptions): Environment[] {
|
|
1895
|
+
return this.listEnvironments(opts);
|
|
1896
|
+
}
|
|
1897
|
+
|
|
1882
1898
|
/**
|
|
1883
1899
|
* This is a link to the `getEnvironments()`. The difference is that on the
|
|
1884
1900
|
* project level it won't return environments defined with the class initialization.
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
import { IProjectRunnerOptions } from "../runtime/node/InteropInterfaces.js";
|
|
2
|
+
import { AppProject, AppProjectKind, IAppProject } from "../models/AppProject.js";
|
|
3
|
+
import { ApiError } from "../runtime/store/Errors.js";
|
|
4
|
+
import { StoreSdk } from "../runtime/store/StoreSdkNode.js";
|
|
5
|
+
import { ProjectSerialRunner } from "../runtime/node/ProjectSerialRunner.js";
|
|
6
|
+
import { ProjectParallelRunner } from "../runtime/node/ProjectParallelRunner.js";
|
|
7
|
+
import Proxy, { IProxyResult } from "./Proxy.js";
|
|
8
|
+
import { IProjectExecutionLog } from "../runtime/reporters/Reporter.js";
|
|
9
|
+
|
|
10
|
+
export interface IAppProjectProxyInit {
|
|
11
|
+
kind: typeof AppProjectKind;
|
|
12
|
+
/**
|
|
13
|
+
* Project key
|
|
14
|
+
*/
|
|
15
|
+
pid: string;
|
|
16
|
+
/**
|
|
17
|
+
* Application that created the project id.
|
|
18
|
+
*/
|
|
19
|
+
appId: string;
|
|
20
|
+
/**
|
|
21
|
+
* Runner options.
|
|
22
|
+
*/
|
|
23
|
+
options: IProjectRunnerOptions;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* Runs requests from an AppProject read from the store.
|
|
28
|
+
*/
|
|
29
|
+
export default class AppProjectProxy extends Proxy {
|
|
30
|
+
project?: AppProject;
|
|
31
|
+
options?: IProjectRunnerOptions;
|
|
32
|
+
|
|
33
|
+
async configure(init: IAppProjectProxyInit, token: string, baseUri: string): Promise<void> {
|
|
34
|
+
const { pid, appId, options } = init;
|
|
35
|
+
if (!pid) {
|
|
36
|
+
throw new ApiError({
|
|
37
|
+
error: true,
|
|
38
|
+
message: 'Invalid request',
|
|
39
|
+
detail: 'The "pid" parameter is required.',
|
|
40
|
+
code: 400,
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
if (!appId) {
|
|
44
|
+
throw new ApiError({
|
|
45
|
+
error: true,
|
|
46
|
+
message: 'Invalid request',
|
|
47
|
+
detail: 'The "appId" parameter is required.',
|
|
48
|
+
code: 400,
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
if (!options) {
|
|
52
|
+
throw new ApiError({
|
|
53
|
+
error: true,
|
|
54
|
+
message: 'Invalid request',
|
|
55
|
+
detail: 'The "options" parameter is required.',
|
|
56
|
+
code: 400,
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
if (!token) {
|
|
60
|
+
throw new ApiError({
|
|
61
|
+
error: true,
|
|
62
|
+
message: 'Invalid request',
|
|
63
|
+
detail: 'Set the authentication credentials.',
|
|
64
|
+
code: 400,
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
if (!baseUri) {
|
|
68
|
+
throw new ApiError({
|
|
69
|
+
error: true,
|
|
70
|
+
message: 'Invalid request',
|
|
71
|
+
detail: 'The store uri is missing.',
|
|
72
|
+
code: 400,
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
if (!baseUri.startsWith('http')) {
|
|
76
|
+
throw new ApiError({
|
|
77
|
+
error: true,
|
|
78
|
+
message: 'Invalid request',
|
|
79
|
+
detail: 'The store uri is invalid.',
|
|
80
|
+
code: 400,
|
|
81
|
+
});
|
|
82
|
+
}
|
|
83
|
+
const sdk = new StoreSdk(baseUri);
|
|
84
|
+
sdk.token = token;
|
|
85
|
+
let project: IAppProject;
|
|
86
|
+
try {
|
|
87
|
+
project = await sdk.app.projects.read(pid, appId);
|
|
88
|
+
} catch (cause) {
|
|
89
|
+
const e = cause as Error;
|
|
90
|
+
throw new ApiError(e.message, 400);
|
|
91
|
+
}
|
|
92
|
+
if (project.key !== pid) {
|
|
93
|
+
throw new ApiError(`Unable to read the project.`, 500);
|
|
94
|
+
}
|
|
95
|
+
this.options = options;
|
|
96
|
+
this.project = new AppProject(project);
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
async execute(): Promise<IProxyResult<IProjectExecutionLog>> {
|
|
100
|
+
const project = this.project as AppProject;
|
|
101
|
+
const opts = this.options as IProjectRunnerOptions;
|
|
102
|
+
let factory: ProjectParallelRunner | ProjectSerialRunner;
|
|
103
|
+
if (opts.parallel) {
|
|
104
|
+
factory = new ProjectParallelRunner(project, opts);
|
|
105
|
+
} else {
|
|
106
|
+
factory = new ProjectSerialRunner();
|
|
107
|
+
factory.configure(project, opts);
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
// eslint-disable-next-line no-inner-declarations
|
|
111
|
+
function unhandledRejection(): void {
|
|
112
|
+
//
|
|
113
|
+
}
|
|
114
|
+
// the executing library handles all related errors it need.
|
|
115
|
+
// However, when executing a request to an unknown host Node process may
|
|
116
|
+
// throw unhandled error event when the error is properly reported by the
|
|
117
|
+
// application. This suppresses these errors.
|
|
118
|
+
// Note, uncomment this line for debug.
|
|
119
|
+
process.on('unhandledRejection', unhandledRejection);
|
|
120
|
+
const report = await factory.execute();
|
|
121
|
+
process.off('unhandledRejection', unhandledRejection);
|
|
122
|
+
return {
|
|
123
|
+
result: report,
|
|
124
|
+
};
|
|
125
|
+
}
|
|
126
|
+
}
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
import { IProjectRunnerOptions } from "../runtime/node/InteropInterfaces.js";
|
|
2
|
+
import { Kind as HttpProjectKind, HttpProject, IHttpProject } from "../models/HttpProject.js";
|
|
3
|
+
import { ApiError } from "../runtime/store/Errors.js";
|
|
4
|
+
import { StoreSdk } from "../runtime/store/StoreSdkNode.js";
|
|
5
|
+
import { ProjectSerialRunner } from "../runtime/node/ProjectSerialRunner.js";
|
|
6
|
+
import { ProjectParallelRunner } from "../runtime/node/ProjectParallelRunner.js";
|
|
7
|
+
import Proxy, { IProxyResult } from "./Proxy.js";
|
|
8
|
+
import { IProjectExecutionLog } from "../runtime/reporters/Reporter.js";
|
|
9
|
+
|
|
10
|
+
export interface IHttpProjectProxyInit {
|
|
11
|
+
kind: typeof HttpProjectKind;
|
|
12
|
+
/**
|
|
13
|
+
* Project key
|
|
14
|
+
*/
|
|
15
|
+
pid: string;
|
|
16
|
+
/**
|
|
17
|
+
* Runner options.
|
|
18
|
+
*/
|
|
19
|
+
options: IProjectRunnerOptions;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* Runs requests from an HTTP project read from the store.
|
|
24
|
+
*/
|
|
25
|
+
export default class HttpProjectProxy extends Proxy {
|
|
26
|
+
project?: HttpProject;
|
|
27
|
+
options?: IProjectRunnerOptions;
|
|
28
|
+
|
|
29
|
+
async configure(init: IHttpProjectProxyInit, token: string, baseUri: string): Promise<void> {
|
|
30
|
+
const { pid, options } = init;
|
|
31
|
+
if (!pid) {
|
|
32
|
+
throw new ApiError({
|
|
33
|
+
error: true,
|
|
34
|
+
message: 'Invalid request',
|
|
35
|
+
detail: 'The "pid" parameter is required.',
|
|
36
|
+
code: 400,
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
if (!options) {
|
|
40
|
+
throw new ApiError({
|
|
41
|
+
error: true,
|
|
42
|
+
message: 'Invalid request',
|
|
43
|
+
detail: 'The "options" parameter is required.',
|
|
44
|
+
code: 400,
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
if (!token) {
|
|
48
|
+
throw new ApiError({
|
|
49
|
+
error: true,
|
|
50
|
+
message: 'Invalid request',
|
|
51
|
+
detail: 'Set the authentication credentials.',
|
|
52
|
+
code: 400,
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
if (!baseUri) {
|
|
56
|
+
throw new ApiError({
|
|
57
|
+
error: true,
|
|
58
|
+
message: 'Invalid request',
|
|
59
|
+
detail: 'The store uri is missing.',
|
|
60
|
+
code: 400,
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
if (!baseUri.startsWith('http')) {
|
|
64
|
+
throw new ApiError({
|
|
65
|
+
error: true,
|
|
66
|
+
message: 'Invalid request',
|
|
67
|
+
detail: 'The store uri is invalid.',
|
|
68
|
+
code: 400,
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
const sdk = new StoreSdk(baseUri);
|
|
72
|
+
sdk.token = token;
|
|
73
|
+
let project: IHttpProject;
|
|
74
|
+
try {
|
|
75
|
+
project = await sdk.file.read(pid, true) as IHttpProject;
|
|
76
|
+
} catch (cause) {
|
|
77
|
+
const e = cause as Error;
|
|
78
|
+
throw new ApiError(e.message, 400);
|
|
79
|
+
}
|
|
80
|
+
if (project.key !== pid) {
|
|
81
|
+
throw new ApiError(`Unable to read the project.`, 500);
|
|
82
|
+
}
|
|
83
|
+
this.options = options;
|
|
84
|
+
this.project = new HttpProject(project);
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
async execute(): Promise<IProxyResult<IProjectExecutionLog>> {
|
|
88
|
+
const project = this.project as HttpProject;
|
|
89
|
+
const opts = this.options as IProjectRunnerOptions;
|
|
90
|
+
let factory: ProjectParallelRunner | ProjectSerialRunner;
|
|
91
|
+
if (opts.parallel) {
|
|
92
|
+
factory = new ProjectParallelRunner(project, opts);
|
|
93
|
+
} else {
|
|
94
|
+
factory = new ProjectSerialRunner();
|
|
95
|
+
factory.configure(project, opts);
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
// eslint-disable-next-line no-inner-declarations
|
|
99
|
+
function unhandledRejection(): void {
|
|
100
|
+
//
|
|
101
|
+
}
|
|
102
|
+
// the executing library handles all related errors it need.
|
|
103
|
+
// However, when executing a request to an unknown host Node process may
|
|
104
|
+
// throw unhandled error event when the error is properly reported by the
|
|
105
|
+
// application. This suppresses these errors.
|
|
106
|
+
// Note, uncomment this line for debug.
|
|
107
|
+
process.on('unhandledRejection', unhandledRejection);
|
|
108
|
+
const report = await factory.execute();
|
|
109
|
+
process.off('unhandledRejection', unhandledRejection);
|
|
110
|
+
return {
|
|
111
|
+
result: report,
|
|
112
|
+
};
|
|
113
|
+
}
|
|
114
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { IRequestLog } from "../models/RequestLog.js";
|
|
2
|
+
import { IProjectExecutionLog } from "../runtime/reporters/Reporter.js";
|
|
3
|
+
|
|
4
|
+
export interface IProxyResult<T = IProjectExecutionLog | IRequestLog> {
|
|
5
|
+
/**
|
|
6
|
+
* The result of the proxy execution. It can be project execution log or a request log.
|
|
7
|
+
*/
|
|
8
|
+
result: T;
|
|
9
|
+
/**
|
|
10
|
+
* Optional variables updated during the execution.
|
|
11
|
+
*/
|
|
12
|
+
variables?: Record<string, string>;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
export default abstract class Proxy {
|
|
16
|
+
/**
|
|
17
|
+
* The time when this class was initialized.
|
|
18
|
+
*/
|
|
19
|
+
time = Date.now();
|
|
20
|
+
|
|
21
|
+
/**
|
|
22
|
+
* Configures the proxy before running it.
|
|
23
|
+
*/
|
|
24
|
+
abstract configure(...args: unknown[]): Promise<unknown>;
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* Executes the proxy.
|
|
28
|
+
*/
|
|
29
|
+
abstract execute(body?: Buffer): Promise<IProxyResult>;
|
|
30
|
+
}
|