@overkill-dev/simulation 0.0.2 → 0.0.3
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/package.json +1 -1
- package/packages/simulation/http.entry-point.d.ts +2 -2
- package/packages/simulation/http.entry-point.d.ts.map +1 -1
- package/packages/simulation/http.entry-point.js +1 -1
- package/packages/simulation/http.entry-point.js.map +1 -1
- package/readme.md +3 -1
- package/sbom.cdx.json +4 -4
- package/simulation/simulated-http-server.d.ts +23 -0
- package/simulation/simulated-http-server.d.ts.map +1 -1
- package/simulation/simulated-http-server.js +7 -2
- package/simulation/simulated-http-server.js.map +1 -1
package/package.json
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export { startSimulatedHttpServer } from '../../simulation/simulated-http-server.ts';
|
|
2
|
-
export type { SimulatedHttpServerHandle, SimulatedHttpServerOptions } from '../../simulation/simulated-http-server.ts';
|
|
1
|
+
export { assertNoSimulatedHttpHandlerErrors, createSimulatedHttpListeningServer, startSimulatedHttpServer } from '../../simulation/simulated-http-server.ts';
|
|
2
|
+
export type { SimulatedHttpListeningServer, SimulatedHttpServerHandle, SimulatedHttpServerOptions } from '../../simulation/simulated-http-server.ts';
|
|
3
3
|
//# sourceMappingURL=http.entry-point.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http.entry-point.d.ts","sourceRoot":"","sources":["../../../../../source/packages/simulation/http.entry-point.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,wBAAwB,EAC3B,MAAM,2CAA2C,CAAC;AACnD,YAAY,EACR,yBAAyB,EACzB,0BAA0B,EAC7B,MAAM,2CAA2C,CAAC"}
|
|
1
|
+
{"version":3,"file":"http.entry-point.d.ts","sourceRoot":"","sources":["../../../../../source/packages/simulation/http.entry-point.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,kCAAkC,EAClC,kCAAkC,EAClC,wBAAwB,EAC3B,MAAM,2CAA2C,CAAC;AACnD,YAAY,EACR,4BAA4B,EAC5B,yBAAyB,EACzB,0BAA0B,EAC7B,MAAM,2CAA2C,CAAC"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { startSimulatedHttpServer } from "../../simulation/simulated-http-server.js";
|
|
1
|
+
export { assertNoSimulatedHttpHandlerErrors, createSimulatedHttpListeningServer, startSimulatedHttpServer } from "../../simulation/simulated-http-server.js";
|
|
2
2
|
//# sourceMappingURL=http.entry-point.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http.entry-point.js","sourceRoot":"","sources":["../../../../../source/packages/simulation/http.entry-point.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,wBAAwB,EAC3B,MAAM,2CAA2C,CAAC"}
|
|
1
|
+
{"version":3,"file":"http.entry-point.js","sourceRoot":"","sources":["../../../../../source/packages/simulation/http.entry-point.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,kCAAkC,EAClC,kCAAkC,EAClC,wBAAwB,EAC3B,MAAM,2CAA2C,CAAC"}
|
package/readme.md
CHANGED
|
@@ -22,4 +22,6 @@ Every simulation has a `default` scenario. Scenario descriptors require a
|
|
|
22
22
|
|
|
23
23
|
Use `@overkill-dev/simulation/http` to launch a simulated HTTP server manually.
|
|
24
24
|
Use `createSimulatedHttpServerResource(...)` from `@overkill-dev/resources`
|
|
25
|
-
when a test runtime should own the server lifecycle.
|
|
25
|
+
when a test runtime should own the server lifecycle. The resource adapter
|
|
26
|
+
requires an explicit local address request, for example
|
|
27
|
+
`{ kind: 'loopback', port: 0 }`.
|
package/sbom.cdx.json
CHANGED
|
@@ -16,15 +16,15 @@
|
|
|
16
16
|
"component": {
|
|
17
17
|
"type": "library",
|
|
18
18
|
"name": "@overkill-dev/simulation",
|
|
19
|
-
"version": "0.0.
|
|
20
|
-
"bom-ref": "pkg:npm/@overkill-dev/simulation@0.0.
|
|
21
|
-
"purl": "pkg:npm/@overkill-dev/simulation@0.0.
|
|
19
|
+
"version": "0.0.3",
|
|
20
|
+
"bom-ref": "pkg:npm/@overkill-dev/simulation@0.0.3",
|
|
21
|
+
"purl": "pkg:npm/@overkill-dev/simulation@0.0.3"
|
|
22
22
|
}
|
|
23
23
|
},
|
|
24
24
|
"components": [],
|
|
25
25
|
"dependencies": [
|
|
26
26
|
{
|
|
27
|
-
"ref": "pkg:npm/@overkill-dev/simulation@0.0.
|
|
27
|
+
"ref": "pkg:npm/@overkill-dev/simulation@0.0.3"
|
|
28
28
|
}
|
|
29
29
|
]
|
|
30
30
|
}
|
|
@@ -12,6 +12,29 @@ export type SimulatedHttpServerHandle<Simulation extends SimulationWithScenarios
|
|
|
12
12
|
readonly dispose: () => Promise<void>;
|
|
13
13
|
readonly scenarioUrl: (scenario: string & keyof Simulation['scenarios'], path: string) => string;
|
|
14
14
|
};
|
|
15
|
+
type ServerAddress = {
|
|
16
|
+
readonly port: number;
|
|
17
|
+
};
|
|
18
|
+
type ServerLifecycle = {
|
|
19
|
+
readonly address: () => ServerAddress | string | null;
|
|
20
|
+
readonly close: (callback: (error?: Error) => void) => unknown;
|
|
21
|
+
readonly listen: (port: number, host: string) => unknown;
|
|
22
|
+
readonly listening: boolean;
|
|
23
|
+
readonly off: {
|
|
24
|
+
(event: 'error', listener: (error: Error) => void): unknown;
|
|
25
|
+
(event: 'listening', listener: () => void): unknown;
|
|
26
|
+
};
|
|
27
|
+
readonly once: {
|
|
28
|
+
(event: 'error', listener: (error: Error) => void): unknown;
|
|
29
|
+
(event: 'listening', listener: () => void): unknown;
|
|
30
|
+
};
|
|
31
|
+
};
|
|
32
|
+
export type SimulatedHttpListeningServer = {
|
|
33
|
+
readonly errors: readonly unknown[];
|
|
34
|
+
readonly server: ServerLifecycle;
|
|
35
|
+
};
|
|
36
|
+
export declare function createSimulatedHttpListeningServer<Scenarios extends SimulationScenarioCatalog>(simulation: SimulatedHttpServerDefinition<string, Scenarios>, host: string): SimulatedHttpListeningServer;
|
|
37
|
+
export declare function assertNoSimulatedHttpHandlerErrors(handlerErrors: readonly unknown[]): void;
|
|
15
38
|
export declare function startSimulatedHttpServer<const Name extends string, const Scenarios extends SimulationScenarioCatalog>(options: SimulatedHttpServerOptions<Name, Scenarios>): Promise<SimulatedHttpServerHandle<SimulatedHttpServerDefinition<Name, Scenarios>>>;
|
|
16
39
|
export {};
|
|
17
40
|
//# sourceMappingURL=simulated-http-server.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"simulated-http-server.d.ts","sourceRoot":"","sources":["../../../../source/simulation/simulated-http-server.ts"],"names":[],"mappings":"AACA,OAAO,EAEH,KAAK,6BAA6B,EAClC,KAAK,yBAAyB,EACjC,MAAM,iBAAiB,CAAC;AAMzB,MAAM,MAAM,0BAA0B,CAClC,IAAI,SAAS,MAAM,EACnB,SAAS,SAAS,yBAAyB,IAC3C;IACA,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,UAAU,EAAE,6BAA6B,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;CACvE,CAAC;AAEF,KAAK,uBAAuB,GAAG;IAC3B,QAAQ,CAAC,SAAS,EAAE,yBAAyB,CAAC;CACjD,CAAC;AAEF,MAAM,MAAM,yBAAyB,CAAC,UAAU,SAAS,uBAAuB,IAAI,eAAe,GAAG;IAClG,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACtC,QAAQ,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,UAAU,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;CACpG,CAAC;
|
|
1
|
+
{"version":3,"file":"simulated-http-server.d.ts","sourceRoot":"","sources":["../../../../source/simulation/simulated-http-server.ts"],"names":[],"mappings":"AACA,OAAO,EAEH,KAAK,6BAA6B,EAClC,KAAK,yBAAyB,EACjC,MAAM,iBAAiB,CAAC;AAMzB,MAAM,MAAM,0BAA0B,CAClC,IAAI,SAAS,MAAM,EACnB,SAAS,SAAS,yBAAyB,IAC3C;IACA,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,UAAU,EAAE,6BAA6B,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;CACvE,CAAC;AAEF,KAAK,uBAAuB,GAAG;IAC3B,QAAQ,CAAC,SAAS,EAAE,yBAAyB,CAAC;CACjD,CAAC;AAEF,MAAM,MAAM,yBAAyB,CAAC,UAAU,SAAS,uBAAuB,IAAI,eAAe,GAAG;IAClG,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACtC,QAAQ,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,UAAU,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;CACpG,CAAC;AAMF,KAAK,aAAa,GAAG;IACjB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACzB,CAAC;AAIF,KAAK,eAAe,GAAG;IACnB,QAAQ,CAAC,OAAO,EAAE,MAAM,aAAa,GAAG,MAAM,GAAG,IAAI,CAAC;IACtD,QAAQ,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,KAAK,IAAI,KAAK,OAAO,CAAC;IAC/D,QAAQ,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC;IACzD,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,GAAG,EAAE;QACV,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC;QAC5D,CAAC,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC;KACvD,CAAC;IACF,QAAQ,CAAC,IAAI,EAAE;QACX,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,CAAC;QAC5D,CAAC,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC;KACvD,CAAC;CACL,CAAC;AAkBF,MAAM,MAAM,4BAA4B,GAAG;IACvC,QAAQ,CAAC,MAAM,EAAE,SAAS,OAAO,EAAE,CAAC;IACpC,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC;CACpC,CAAC;AAgSF,wBAAgB,kCAAkC,CAAC,SAAS,SAAS,yBAAyB,EAC1F,UAAU,EAAE,6BAA6B,CAAC,MAAM,EAAE,SAAS,CAAC,EAC5D,IAAI,EAAE,MAAM,GACb,4BAA4B,CAQ9B;AAED,wBAAgB,kCAAkC,CAAC,aAAa,EAAE,SAAS,OAAO,EAAE,GAAG,IAAI,CAI1F;AAED,wBAAsB,wBAAwB,CAC1C,KAAK,CAAC,IAAI,SAAS,MAAM,EACzB,KAAK,CAAC,SAAS,SAAS,yBAAyB,EAEjD,OAAO,EAAE,0BAA0B,CAAC,IAAI,EAAE,SAAS,CAAC,GACrD,OAAO,CAAC,yBAAyB,CAAC,6BAA6B,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,CAYpF"}
|
|
@@ -208,7 +208,7 @@ function createServerDisposal(server, handlerErrors) {
|
|
|
208
208
|
}
|
|
209
209
|
};
|
|
210
210
|
}
|
|
211
|
-
function
|
|
211
|
+
export function createSimulatedHttpListeningServer(simulation, host) {
|
|
212
212
|
const handlerErrors = createHandlerErrors();
|
|
213
213
|
const server = createServer(simulation, host, handlerErrors.record);
|
|
214
214
|
return {
|
|
@@ -216,13 +216,18 @@ function createListeningServer(simulation, host) {
|
|
|
216
216
|
server
|
|
217
217
|
};
|
|
218
218
|
}
|
|
219
|
+
export function assertNoSimulatedHttpHandlerErrors(handlerErrors) {
|
|
220
|
+
if (handlerErrors[0] !== undefined) {
|
|
221
|
+
throw disposalError(handlerErrors[0]);
|
|
222
|
+
}
|
|
223
|
+
}
|
|
219
224
|
export async function startSimulatedHttpServer(options) {
|
|
220
225
|
if (!isDefinedSimulatedHttpServer(options.simulation)) {
|
|
221
226
|
throw new TypeError('startSimulatedHttpServer() requires a simulated HTTP server definition.');
|
|
222
227
|
}
|
|
223
228
|
const host = options.host ?? '127.0.0.1';
|
|
224
229
|
const port = options.port ?? 0;
|
|
225
|
-
const listeningServer =
|
|
230
|
+
const listeningServer = createSimulatedHttpListeningServer(options.simulation, host);
|
|
226
231
|
const baseUrl = await listenBaseUrl(listeningServer.server, host, port);
|
|
227
232
|
const disposeServer = createServerDisposal(listeningServer.server, listeningServer.errors);
|
|
228
233
|
return simulatedHttpServerHandle(baseUrl, disposeServer);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"simulated-http-server.js","sourceRoot":"","sources":["../../../../source/simulation/simulated-http-server.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,EAAE,EAA6C,MAAM,WAAW,CAAC;AAC5E,OAAO,EACH,4BAA4B,EAG/B,MAAM,iBAAiB,CAAC;AAEzB,MAAM,0BAA0B,GAAG,qBAAqB,CAAC;AACzD,MAAM,qBAAqB,GAAG,GAAG,CAAC;AAClC,MAAM,oBAAoB,GAAG,GAAG,CAAC;
|
|
1
|
+
{"version":3,"file":"simulated-http-server.js","sourceRoot":"","sources":["../../../../source/simulation/simulated-http-server.ts"],"names":[],"mappings":"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"}
|