@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 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["starting"] = "starting";
51
- IRunnerState2["started"] = "started";
52
- IRunnerState2["stopping"] = "stopping";
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 || state === IRunnerState.executed || state === IRunnerState.resumed || state === IRunnerState.reset || state === IRunnerState.started) {
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.started);
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
- await Sleep(50);
1702
- ExecuteLoop();
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.resumed);
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.reset);
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.executed);
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.stopped;
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.running;
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.stopped;
2303
+ runnerEx.state = IRunnerState.terminated;
2316
2304
  return true;
2317
2305
  });
2318
2306
  __privateAdd(this, _TerminateRunner2, async (workerEx, runnerEx = null) => {