@nsshunt/stsrunnerframework 1.0.60 → 1.0.62
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/README.md +34 -1
- package/dist/stsrunnerframework.mjs +28 -40
- package/dist/stsrunnerframework.mjs.map +1 -1
- package/dist/stsrunnerframework.umd.js +28 -40
- package/dist/stsrunnerframework.umd.js.map +1 -1
- package/package.json +1 -1
- package/types/commonTypes.d.ts +5 -16
- package/types/commonTypes.d.ts.map +1 -1
- package/types/testCase01.d.ts.map +1 -1
- package/types/workerInstance.d.ts.map +1 -1
- package/types/workerManager.d.ts.map +1 -1
package/README.md
CHANGED
|
@@ -1 +1,34 @@
|
|
|
1
|
-
# stsrunnerframework
|
|
1
|
+
# stsrunnerframework
|
|
2
|
+
|
|
3
|
+
terminated - this means the process has been terminated and no end-of-process steps should execute such as reports etc.
|
|
4
|
+
|
|
5
|
+
stopped - end the test and report as if completed normnally
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
```mermaid
|
|
9
|
+
---
|
|
10
|
+
config:
|
|
11
|
+
theme: neo
|
|
12
|
+
look: neo
|
|
13
|
+
title: STSRunnerFramework
|
|
14
|
+
---
|
|
15
|
+
stateDiagram
|
|
16
|
+
direction TB
|
|
17
|
+
[*] --> Created:Select Start
|
|
18
|
+
Created --> Running
|
|
19
|
+
Created --> Error:Error Caught
|
|
20
|
+
Running --> Completed:Iterations Exhausted
|
|
21
|
+
Running --> Error:Error Caught
|
|
22
|
+
Running --> Stopped:Select Stop
|
|
23
|
+
Completed --> [*]
|
|
24
|
+
Running --> Paused:Select Pause
|
|
25
|
+
Paused --> Running:Select Resume
|
|
26
|
+
Paused --> Paused:Select Execute or Reset
|
|
27
|
+
Paused --> Stopped:Select Stop
|
|
28
|
+
Running --> Terminated:Select Terminate
|
|
29
|
+
Paused --> Terminated:Select Terminate
|
|
30
|
+
Paused --> Completed:Select Execute<br>Iterations Exhausted
|
|
31
|
+
Terminated --> [*]
|
|
32
|
+
Error --> [*]
|
|
33
|
+
Stopped --> [*]
|
|
34
|
+
```
|
|
@@ -9,7 +9,7 @@ var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read fr
|
|
|
9
9
|
var __privateAdd = (obj, member, value2) => member.has(obj) ? __typeError("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value2);
|
|
10
10
|
var __privateSet = (obj, member, value2, setter) => (__accessCheck(obj, member, "write to private field"), setter ? setter.call(obj, value2) : member.set(obj, value2), value2);
|
|
11
11
|
var __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "access private method"), method);
|
|
12
|
-
var _collectorCollectorPort, _runners, _options3, _workerId, _debug, _SetMessagePort, _CreateRunnerEx2RunState, _UpdateRunnerStateById, _GetAllRunners, _CanExecuteNextIterationById, _GetRunnerIterationById, _ResetRunnerIterationById, _IncRunnerIterationById, _GetRunnerInstanceById, _GetRunnerExecutionProfileById, _GetRunnerOptionsById, _SetRunnerOptionsById, _AddRunner, _WorkerInstance_instances, SleepImmediate_fn, _PostMessageToWorkerManagerById, _StartRunner, _StopRunnerByRunnerById, _StopAllRunners, _StopRunner, _TerminateRunner, _PauseRunner, _ResumeRunner, _ResetRunner, _ExecuteRunner, _UpdateOptions, _workersEx, _options4, _STSInstrumentController, _telemetryProcessor, _debug2, _STSWorkerManager_instances, CreateRunnerCopy_fn, _SetRunnerIntoWorker, _ProcessTelemetry, _RunnerStateChange, _ProcessCompleted, _CreateAsyncRunner, _PostMessageToWorkerUsingDefaultChannel, _PostMessageToWorker, _StartRunner2, _ResetRunner2, _ExecuteRunner2, _StopRunner2, _TerminateRunner2, _PauseRunner2, _ResumeRunner2, _BroadcastCommandToAllRunners, _PauseWorker, _ResumeWorker, _StopWorker, _StartWorker, _ResetWorker, _ExecuteWorker, _BroadcastUpdateCommandToAllRunners, _UpdateOptionsWorker, _TerminateWorker, _UpdateOptions2, _options5, _rest01Client, _accessToken2, _agentManager, _authUtilsNode, _GetAccessToken;
|
|
12
|
+
var _collectorCollectorPort, _runners, _options3, _workerId, _debug, _SetMessagePort, _CreateRunnerEx2RunState, _UpdateRunnerStateById, _GetAllRunners, _CanExecuteNextIterationById, _IsCompletedById, _GetRunnerIterationById, _ResetRunnerIterationById, _IncRunnerIterationById, _GetRunnerInstanceById, _GetRunnerExecutionProfileById, _GetRunnerOptionsById, _SetRunnerOptionsById, _AddRunner, _WorkerInstance_instances, SleepImmediate_fn, _PostMessageToWorkerManagerById, _StartRunner, _StopRunnerByRunnerById, _StopAllRunners, _StopRunner, _TerminateRunner, _PauseRunner, _ResumeRunner, _ResetRunner, _ExecuteRunner, _UpdateOptions, _workersEx, _options4, _STSInstrumentController, _telemetryProcessor, _debug2, _STSWorkerManager_instances, CreateRunnerCopy_fn, _SetRunnerIntoWorker, _ProcessTelemetry, _RunnerStateChange, _ProcessCompleted, _CreateAsyncRunner, _PostMessageToWorkerUsingDefaultChannel, _PostMessageToWorker, _StartRunner2, _ResetRunner2, _ExecuteRunner2, _StopRunner2, _TerminateRunner2, _PauseRunner2, _ResumeRunner2, _BroadcastCommandToAllRunners, _PauseWorker, _ResumeWorker, _StopWorker, _StartWorker, _ResetWorker, _ExecuteWorker, _BroadcastUpdateCommandToAllRunners, _UpdateOptionsWorker, _TerminateWorker, _UpdateOptions2, _options5, _rest01Client, _accessToken2, _agentManager, _authUtilsNode, _GetAccessToken;
|
|
13
13
|
import { Sleep, ModelDelimeter, STSAxiosConfig, GetErrorPayload, AgentManager, defaultLogger } from "@nsshunt/stsutils";
|
|
14
14
|
import { Gauge } from "@nsshunt/stsobservability";
|
|
15
15
|
import { accessSync, constants as constants$2, readFileSync } from "node:fs";
|
|
@@ -47,24 +47,13 @@ var eIWMessageCommands = /* @__PURE__ */ ((eIWMessageCommands2) => {
|
|
|
47
47
|
return eIWMessageCommands2;
|
|
48
48
|
})(eIWMessageCommands || {});
|
|
49
49
|
var IRunnerState = /* @__PURE__ */ ((IRunnerState2) => {
|
|
50
|
-
IRunnerState2["
|
|
51
|
-
IRunnerState2["
|
|
52
|
-
IRunnerState2["
|
|
50
|
+
IRunnerState2["created"] = "created";
|
|
51
|
+
IRunnerState2["running"] = "running";
|
|
52
|
+
IRunnerState2["paused"] = "paused";
|
|
53
|
+
IRunnerState2["completed"] = "completed";
|
|
53
54
|
IRunnerState2["stopped"] = "stopped";
|
|
54
|
-
IRunnerState2["terminating"] = "terminating";
|
|
55
55
|
IRunnerState2["terminated"] = "terminated";
|
|
56
|
-
IRunnerState2["resuming"] = "resuming";
|
|
57
|
-
IRunnerState2["resumed"] = "resumed";
|
|
58
|
-
IRunnerState2["pausing"] = "pausing";
|
|
59
|
-
IRunnerState2["paused"] = "paused";
|
|
60
|
-
IRunnerState2["executing"] = "executing";
|
|
61
|
-
IRunnerState2["executed"] = "executed";
|
|
62
|
-
IRunnerState2["resetting"] = "resetting";
|
|
63
|
-
IRunnerState2["reset"] = "reset";
|
|
64
56
|
IRunnerState2["error"] = "error";
|
|
65
|
-
IRunnerState2["completed"] = "completed";
|
|
66
|
-
IRunnerState2["created"] = "created";
|
|
67
|
-
IRunnerState2["running"] = "running";
|
|
68
57
|
return IRunnerState2;
|
|
69
58
|
})(IRunnerState || {});
|
|
70
59
|
var IWorkerState = /* @__PURE__ */ ((IWorkerState2) => {
|
|
@@ -1628,7 +1617,14 @@ class WorkerInstance {
|
|
|
1628
1617
|
});
|
|
1629
1618
|
__privateAdd(this, _CanExecuteNextIterationById, (id) => {
|
|
1630
1619
|
const state = __privateGet(this, _runners)[id].runner.state;
|
|
1631
|
-
if (state === IRunnerState.running
|
|
1620
|
+
if (state === IRunnerState.running) {
|
|
1621
|
+
return true;
|
|
1622
|
+
}
|
|
1623
|
+
return false;
|
|
1624
|
+
});
|
|
1625
|
+
__privateAdd(this, _IsCompletedById, (id) => {
|
|
1626
|
+
const state = __privateGet(this, _runners)[id].runner.state;
|
|
1627
|
+
if (state === IRunnerState.error || state === IRunnerState.completed || state === IRunnerState.stopped || state === IRunnerState.terminated) {
|
|
1632
1628
|
return true;
|
|
1633
1629
|
}
|
|
1634
1630
|
return false;
|
|
@@ -1680,10 +1676,8 @@ class WorkerInstance {
|
|
|
1680
1676
|
__privateAdd(this, _StartRunner, async (testRunnerTelemetryPayload) => {
|
|
1681
1677
|
const runnerId = testRunnerTelemetryPayload.runner.id;
|
|
1682
1678
|
__privateGet(this, _debug).call(this, `${chalk$1.magenta(`runner: [${runnerId}]`)} StartRunner`);
|
|
1683
|
-
__privateGet(this, _UpdateRunnerStateById).call(this, runnerId, IRunnerState.starting);
|
|
1684
|
-
await Sleep(0);
|
|
1685
1679
|
await __privateGet(this, _GetRunnerInstanceById).call(this, runnerId).StartRunner();
|
|
1686
|
-
__privateGet(this, _UpdateRunnerStateById).call(this, runnerId, IRunnerState.
|
|
1680
|
+
__privateGet(this, _UpdateRunnerStateById).call(this, runnerId, IRunnerState.running);
|
|
1687
1681
|
const ExecuteLoop = async () => {
|
|
1688
1682
|
if (__privateGet(this, _GetRunnerIterationById).call(this, runnerId) < __privateGet(this, _GetRunnerExecutionProfileById).call(this, runnerId).iterations) {
|
|
1689
1683
|
if (__privateGet(this, _CanExecuteNextIterationById).call(this, runnerId)) {
|
|
@@ -1698,8 +1692,10 @@ class WorkerInstance {
|
|
|
1698
1692
|
}
|
|
1699
1693
|
ExecuteLoop();
|
|
1700
1694
|
} else {
|
|
1701
|
-
|
|
1702
|
-
|
|
1695
|
+
if (!__privateGet(this, _IsCompletedById).call(this, runnerId)) {
|
|
1696
|
+
await Sleep(50);
|
|
1697
|
+
ExecuteLoop();
|
|
1698
|
+
}
|
|
1703
1699
|
}
|
|
1704
1700
|
} else {
|
|
1705
1701
|
await __privateGet(this, _GetRunnerInstanceById).call(this, runnerId).Completed();
|
|
@@ -1711,8 +1707,6 @@ class WorkerInstance {
|
|
|
1711
1707
|
});
|
|
1712
1708
|
__privateAdd(this, _StopRunnerByRunnerById, async (id) => {
|
|
1713
1709
|
__privateGet(this, _debug).call(this, `${chalk$1.magenta(`runner: [${id}]`)} StopRunner`);
|
|
1714
|
-
__privateGet(this, _UpdateRunnerStateById).call(this, id, IRunnerState.stopping);
|
|
1715
|
-
await Sleep(0);
|
|
1716
1710
|
await __privateGet(this, _GetRunnerInstanceById).call(this, id).StopRunner();
|
|
1717
1711
|
__privateGet(this, _UpdateRunnerStateById).call(this, id, IRunnerState.stopped);
|
|
1718
1712
|
await Sleep(0);
|
|
@@ -1732,8 +1726,6 @@ class WorkerInstance {
|
|
|
1732
1726
|
__privateAdd(this, _TerminateRunner, async (testRunnerTelemetryPayload) => {
|
|
1733
1727
|
const runnerId = testRunnerTelemetryPayload.runner.id;
|
|
1734
1728
|
__privateGet(this, _debug).call(this, `${chalk$1.magenta(`runner: [${runnerId}]`)} TerminateRunner`);
|
|
1735
|
-
__privateGet(this, _UpdateRunnerStateById).call(this, runnerId, IRunnerState.terminating);
|
|
1736
|
-
await Sleep(0);
|
|
1737
1729
|
const retVal = await __privateGet(this, _GetRunnerInstanceById).call(this, runnerId).TerminateRunner();
|
|
1738
1730
|
__privateGet(this, _UpdateRunnerStateById).call(this, runnerId, IRunnerState.terminated);
|
|
1739
1731
|
__privateGet(this, _debug).call(this, `${chalk$1.magenta(`runner: [${runnerId}]`)} TerminateRunner Result = [${retVal}]`);
|
|
@@ -1742,8 +1734,6 @@ class WorkerInstance {
|
|
|
1742
1734
|
__privateAdd(this, _PauseRunner, async (testRunnerTelemetryPayload) => {
|
|
1743
1735
|
const runnerId = testRunnerTelemetryPayload.runner.id;
|
|
1744
1736
|
__privateGet(this, _debug).call(this, `${chalk$1.magenta(`runner: [${runnerId}]`)} PauseRunner`);
|
|
1745
|
-
__privateGet(this, _UpdateRunnerStateById).call(this, runnerId, IRunnerState.pausing);
|
|
1746
|
-
await Sleep(0);
|
|
1747
1737
|
await __privateGet(this, _GetRunnerInstanceById).call(this, runnerId).PauseRunner();
|
|
1748
1738
|
__privateGet(this, _UpdateRunnerStateById).call(this, runnerId, IRunnerState.paused);
|
|
1749
1739
|
await Sleep(0);
|
|
@@ -1751,31 +1741,25 @@ class WorkerInstance {
|
|
|
1751
1741
|
__privateAdd(this, _ResumeRunner, async (testRunnerTelemetryPayload) => {
|
|
1752
1742
|
const runnerId = testRunnerTelemetryPayload.runner.id;
|
|
1753
1743
|
__privateGet(this, _debug).call(this, `${chalk$1.magenta(`runner: [${runnerId}]`)} ResumeRunner`);
|
|
1754
|
-
__privateGet(this, _UpdateRunnerStateById).call(this, runnerId, IRunnerState.resuming);
|
|
1755
|
-
await Sleep(0);
|
|
1756
1744
|
await __privateGet(this, _GetRunnerInstanceById).call(this, runnerId).ResumeRunner();
|
|
1757
|
-
__privateGet(this, _UpdateRunnerStateById).call(this, runnerId, IRunnerState.
|
|
1745
|
+
__privateGet(this, _UpdateRunnerStateById).call(this, runnerId, IRunnerState.running);
|
|
1758
1746
|
await Sleep(0);
|
|
1759
1747
|
});
|
|
1760
1748
|
__privateAdd(this, _ResetRunner, async (testRunnerTelemetryPayload) => {
|
|
1761
1749
|
const runnerId = testRunnerTelemetryPayload.runner.id;
|
|
1762
1750
|
__privateGet(this, _debug).call(this, `${chalk$1.magenta(`runner: [${runnerId}]`)} ResetRunner`);
|
|
1763
1751
|
__privateGet(this, _ResetRunnerIterationById).call(this, runnerId);
|
|
1764
|
-
__privateGet(this, _UpdateRunnerStateById).call(this, runnerId, IRunnerState.resetting);
|
|
1765
|
-
await Sleep(0);
|
|
1766
1752
|
await __privateGet(this, _GetRunnerInstanceById).call(this, runnerId).ResetRunner();
|
|
1767
|
-
__privateGet(this, _UpdateRunnerStateById).call(this, runnerId, IRunnerState.
|
|
1753
|
+
__privateGet(this, _UpdateRunnerStateById).call(this, runnerId, IRunnerState.paused);
|
|
1768
1754
|
await Sleep(0);
|
|
1769
1755
|
});
|
|
1770
1756
|
// Execute a single iteration of this runners work item
|
|
1771
1757
|
__privateAdd(this, _ExecuteRunner, async (testRunnerTelemetryPayload) => {
|
|
1772
1758
|
const runnerId = testRunnerTelemetryPayload.runner.id;
|
|
1773
1759
|
__privateGet(this, _debug).call(this, `${chalk$1.magenta(`runner: [${runnerId}]`)} ExecuteRunner`);
|
|
1774
|
-
__privateGet(this, _UpdateRunnerStateById).call(this, runnerId, IRunnerState.executing);
|
|
1775
|
-
await Sleep(0);
|
|
1776
1760
|
await __privateGet(this, _GetRunnerInstanceById).call(this, runnerId).Execute(__privateGet(this, _GetRunnerIterationById).call(this, runnerId));
|
|
1777
1761
|
__privateGet(this, _IncRunnerIterationById).call(this, runnerId);
|
|
1778
|
-
__privateGet(this, _UpdateRunnerStateById).call(this, runnerId, IRunnerState.
|
|
1762
|
+
__privateGet(this, _UpdateRunnerStateById).call(this, runnerId, IRunnerState.paused);
|
|
1779
1763
|
await Sleep(0);
|
|
1780
1764
|
});
|
|
1781
1765
|
__privateAdd(this, _UpdateOptions, async (testRunnerTelemetryPayload) => {
|
|
@@ -1867,6 +1851,7 @@ _CreateRunnerEx2RunState = new WeakMap();
|
|
|
1867
1851
|
_UpdateRunnerStateById = new WeakMap();
|
|
1868
1852
|
_GetAllRunners = new WeakMap();
|
|
1869
1853
|
_CanExecuteNextIterationById = new WeakMap();
|
|
1854
|
+
_IsCompletedById = new WeakMap();
|
|
1870
1855
|
_GetRunnerIterationById = new WeakMap();
|
|
1871
1856
|
_ResetRunnerIterationById = new WeakMap();
|
|
1872
1857
|
_IncRunnerIterationById = new WeakMap();
|
|
@@ -2199,6 +2184,9 @@ class STSWorkerManager {
|
|
|
2199
2184
|
}
|
|
2200
2185
|
}
|
|
2201
2186
|
});
|
|
2187
|
+
//@@ make this have an event
|
|
2188
|
+
//@@ make refactor event to own method
|
|
2189
|
+
//@@ check for other events to capture
|
|
2202
2190
|
__privateAdd(this, _RunnerStateChange, (workerEx, payloadContents) => {
|
|
2203
2191
|
const { runner } = payloadContents;
|
|
2204
2192
|
if (workerEx.runnersEx[runner.id]) {
|
|
@@ -2298,21 +2286,21 @@ class STSWorkerManager {
|
|
|
2298
2286
|
__privateGet(this, _PostMessageToWorker).call(this, workerEx, eIWMessageCommands.ResetRunner, {
|
|
2299
2287
|
runner: __privateMethod(this, _STSWorkerManager_instances, CreateRunnerCopy_fn).call(this, runnerEx)
|
|
2300
2288
|
});
|
|
2301
|
-
runnerEx.state = IRunnerState.
|
|
2289
|
+
runnerEx.state = IRunnerState.paused;
|
|
2302
2290
|
return true;
|
|
2303
2291
|
});
|
|
2304
2292
|
__privateAdd(this, _ExecuteRunner2, async (workerEx, runnerEx) => {
|
|
2305
2293
|
__privateGet(this, _PostMessageToWorker).call(this, workerEx, eIWMessageCommands.ExecuteRunner, {
|
|
2306
2294
|
runner: __privateMethod(this, _STSWorkerManager_instances, CreateRunnerCopy_fn).call(this, runnerEx)
|
|
2307
2295
|
});
|
|
2308
|
-
runnerEx.state = IRunnerState.
|
|
2296
|
+
runnerEx.state = IRunnerState.paused;
|
|
2309
2297
|
return true;
|
|
2310
2298
|
});
|
|
2311
2299
|
__privateAdd(this, _StopRunner2, async (workerEx, runnerEx) => {
|
|
2312
2300
|
__privateGet(this, _PostMessageToWorker).call(this, workerEx, eIWMessageCommands.StopRunner, {
|
|
2313
2301
|
runner: __privateMethod(this, _STSWorkerManager_instances, CreateRunnerCopy_fn).call(this, runnerEx)
|
|
2314
2302
|
});
|
|
2315
|
-
runnerEx.state = IRunnerState.
|
|
2303
|
+
runnerEx.state = IRunnerState.terminated;
|
|
2316
2304
|
return true;
|
|
2317
2305
|
});
|
|
2318
2306
|
__privateAdd(this, _TerminateRunner2, async (workerEx, runnerEx = null) => {
|