zation-assured 0.6.2 → 3.0.0-dev.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.
Files changed (151) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +55 -2
  3. package/dist/index.d.ts +2 -2
  4. package/dist/index.js +3 -9
  5. package/dist/lib/api/assert.d.ts +21 -14
  6. package/dist/lib/api/assert.js +17 -13
  7. package/dist/lib/api/testHelper.d.ts +0 -8
  8. package/dist/lib/api/testHelper.js +6 -83
  9. package/dist/lib/api/when.d.ts +41 -45
  10. package/dist/lib/api/when.js +42 -55
  11. package/dist/lib/helper/asserter/abstractActionAsserter.d.ts +68 -0
  12. package/dist/lib/helper/asserter/{rootSendAsserter.js → abstractActionAsserter.js} +23 -67
  13. package/dist/lib/helper/asserter/assertStarter.d.ts +5 -0
  14. package/dist/lib/helper/asserter/assertStarter.js +16 -0
  15. package/dist/lib/helper/asserter/channel/abstractChannelAsserter.d.ts +20 -29
  16. package/dist/lib/helper/asserter/channel/abstractChannelAsserter.js +44 -85
  17. package/dist/lib/helper/asserter/channel/channelAsserter.d.ts +3 -3
  18. package/dist/lib/helper/asserter/channel/channelAsserter.js +2 -2
  19. package/dist/lib/helper/asserter/channel/standaloneChannelAsserter.d.ts +6 -6
  20. package/dist/lib/helper/asserter/channel/standaloneChannelAsserter.js +7 -7
  21. package/dist/lib/helper/asserter/client/abstractClientAsserter.d.ts +20 -38
  22. package/dist/lib/helper/asserter/client/abstractClientAsserter.js +82 -184
  23. package/dist/lib/helper/asserter/client/clientAsserter.d.ts +3 -3
  24. package/dist/lib/helper/asserter/client/clientAsserter.js +2 -2
  25. package/dist/lib/helper/asserter/client/standaloneClientAsserter.d.ts +6 -6
  26. package/dist/lib/helper/asserter/client/standaloneClientAsserter.js +7 -7
  27. package/dist/lib/helper/asserter/controller/integratedResponseAsserter.d.ts +52 -0
  28. package/dist/lib/helper/asserter/controller/integratedResponseAsserter.js +122 -0
  29. package/dist/lib/helper/asserter/controller/standaloneResponseAsserter.d.ts +54 -0
  30. package/dist/lib/helper/asserter/controller/standaloneResponseAsserter.js +118 -0
  31. package/dist/lib/helper/asserter/databox/abstractDataboxAsserter.d.ts +29 -36
  32. package/dist/lib/helper/asserter/databox/abstractDataboxAsserter.js +44 -80
  33. package/dist/lib/helper/asserter/databox/databoxAsserter.d.ts +3 -3
  34. package/dist/lib/helper/asserter/databox/databoxAsserter.js +2 -2
  35. package/dist/lib/helper/asserter/databox/standaloneDataboxAsserter.d.ts +7 -6
  36. package/dist/lib/helper/asserter/databox/standaloneDataboxAsserter.js +7 -7
  37. package/dist/lib/helper/asserter/event/abstractEventAsserter.d.ts +12 -4
  38. package/dist/lib/helper/asserter/event/abstractEventAsserter.js +25 -10
  39. package/dist/lib/helper/asserter/event/codeMetadataEventAsserter.d.ts +21 -0
  40. package/dist/lib/helper/asserter/event/codeMetadataEventAsserter.js +47 -0
  41. package/dist/lib/helper/asserter/event/dataEventAsserter.d.ts +13 -3
  42. package/dist/lib/helper/asserter/event/dataEventAsserter.js +22 -4
  43. package/dist/lib/helper/asserter/receiver/integratedTransmitAsserter.d.ts +9 -0
  44. package/dist/lib/helper/asserter/receiver/{transmitAsserter.js → integratedTransmitAsserter.js} +9 -9
  45. package/dist/lib/helper/asserter/value/abstractValueAsserter.d.ts +13 -15
  46. package/dist/lib/helper/asserter/value/abstractValueAsserter.js +49 -53
  47. package/dist/lib/helper/asserter/value/standaloneValueAsserter.d.ts +3 -3
  48. package/dist/lib/helper/asserter/value/standaloneValueAsserter.js +6 -6
  49. package/dist/lib/helper/asserter/value/valueAsserter.d.ts +4 -4
  50. package/dist/lib/helper/asserter/value/valueAsserter.js +4 -4
  51. package/dist/lib/helper/backError/backErrorsFilterBuilder.d.ts +12 -0
  52. package/dist/lib/helper/backError/backErrorsFilterBuilder.js +29 -0
  53. package/dist/lib/helper/console/logger.js +2 -2
  54. package/dist/lib/helper/definitions/optionTypes.d.ts +8 -0
  55. package/dist/lib/helper/definitions/optionTypes.js +7 -0
  56. package/dist/lib/helper/test/test.d.ts +2 -2
  57. package/dist/lib/helper/test/test.js +8 -6
  58. package/dist/lib/helper/timeout/timeoutAssert.js +2 -2
  59. package/dist/lib/helper/utils/actionUtils.d.ts +5 -18
  60. package/dist/lib/helper/utils/actionUtils.js +14 -43
  61. package/dist/lib/helper/utils/types.d.ts +20 -0
  62. package/dist/lib/helper/utils/types.js +7 -0
  63. package/package.json +9 -12
  64. package/dist/lib/api/before.d.ts +0 -3
  65. package/dist/lib/api/before.js +0 -20
  66. package/dist/lib/api/client.d.ts +0 -3
  67. package/dist/lib/api/client.js +0 -11
  68. package/dist/lib/api/describe.d.ts +0 -1
  69. package/dist/lib/api/describe.js +0 -6
  70. package/dist/lib/api/instanceManager.d.ts +0 -8
  71. package/dist/lib/api/instanceManager.js +0 -48
  72. package/dist/lib/api/testArea.d.ts +0 -3
  73. package/dist/lib/api/testArea.js +0 -41
  74. package/dist/lib/api/testServerManager.d.ts +0 -19
  75. package/dist/lib/api/testServerManager.js +0 -100
  76. package/dist/lib/helper/asserter/abstractClientAsserter.d.ts +0 -102
  77. package/dist/lib/helper/asserter/abstractClientAsserter.js +0 -293
  78. package/dist/lib/helper/asserter/anyAsserter.d.ts +0 -62
  79. package/dist/lib/helper/asserter/anyAsserter.js +0 -130
  80. package/dist/lib/helper/asserter/channelEventAsserter.d.ts +0 -34
  81. package/dist/lib/helper/asserter/channelEventAsserter.js +0 -84
  82. package/dist/lib/helper/asserter/channelPubAsserter.d.ts +0 -53
  83. package/dist/lib/helper/asserter/channelPubAsserter.js +0 -126
  84. package/dist/lib/helper/asserter/clientAsserter.d.ts +0 -13
  85. package/dist/lib/helper/asserter/clientAsserter.js +0 -26
  86. package/dist/lib/helper/asserter/controller/responseAsserter.d.ts +0 -74
  87. package/dist/lib/helper/asserter/controller/responseAsserter.js +0 -138
  88. package/dist/lib/helper/asserter/dataEventAsserter.d.ts +0 -40
  89. package/dist/lib/helper/asserter/dataEventAsserter.js +0 -113
  90. package/dist/lib/helper/asserter/event/abstractDataEventAsserter.d.ts +0 -13
  91. package/dist/lib/helper/asserter/event/abstractDataEventAsserter.js +0 -36
  92. package/dist/lib/helper/asserter/event/codeDataEventAsserter.d.ts +0 -14
  93. package/dist/lib/helper/asserter/event/codeDataEventAsserter.js +0 -40
  94. package/dist/lib/helper/asserter/eventAsserter.d.ts +0 -41
  95. package/dist/lib/helper/asserter/eventAsserter.js +0 -115
  96. package/dist/lib/helper/asserter/objectAsserter.d.ts +0 -55
  97. package/dist/lib/helper/asserter/objectAsserter.js +0 -113
  98. package/dist/lib/helper/asserter/receiver/transmitAsserter.d.ts +0 -9
  99. package/dist/lib/helper/asserter/responseAsserter.d.ts +0 -129
  100. package/dist/lib/helper/asserter/responseAsserter.js +0 -260
  101. package/dist/lib/helper/asserter/rootSendAsserter.d.ts +0 -89
  102. package/dist/lib/helper/asserter/standaloneClientAsserter.d.ts +0 -11
  103. package/dist/lib/helper/asserter/standaloneClientAsserter.js +0 -38
  104. package/dist/lib/helper/assured/clientAssured.d.ts +0 -2
  105. package/dist/lib/helper/assured/clientAssured.js +0 -11
  106. package/dist/lib/helper/assured/responseAssured.d.ts +0 -17
  107. package/dist/lib/helper/assured/responseAssured.js +0 -72
  108. package/dist/lib/helper/backError/backErrorFilterBuilder.d.ts +0 -13
  109. package/dist/lib/helper/backError/backErrorFilterBuilder.js +0 -32
  110. package/dist/lib/helper/builder/controller/abstractRequestBuilder.d.ts +0 -53
  111. package/dist/lib/helper/builder/controller/abstractRequestBuilder.js +0 -69
  112. package/dist/lib/helper/builder/controller/authRequestBuilder.d.ts +0 -15
  113. package/dist/lib/helper/builder/controller/authRequestBuilder.js +0 -30
  114. package/dist/lib/helper/builder/controller/standardRequestBuilder.d.ts +0 -15
  115. package/dist/lib/helper/builder/controller/standardRequestBuilder.js +0 -30
  116. package/dist/lib/helper/builder/controller/validationCheckRequestBuilder.d.ts +0 -21
  117. package/dist/lib/helper/builder/controller/validationCheckRequestBuilder.js +0 -40
  118. package/dist/lib/helper/builder/receiver/packageBuilder.d.ts +0 -45
  119. package/dist/lib/helper/builder/receiver/packageBuilder.js +0 -67
  120. package/dist/lib/helper/controller/request/abstractRequestBuilder.d.ts +0 -53
  121. package/dist/lib/helper/controller/request/abstractRequestBuilder.js +0 -68
  122. package/dist/lib/helper/controller/request/authRequestBuilder.d.ts +0 -15
  123. package/dist/lib/helper/controller/request/authRequestBuilder.js +0 -29
  124. package/dist/lib/helper/controller/request/standardRequestBuilder.d.ts +0 -15
  125. package/dist/lib/helper/controller/request/standardRequestBuilder.js +0 -29
  126. package/dist/lib/helper/controller/request/validationCheckRequestBuilder.d.ts +0 -21
  127. package/dist/lib/helper/controller/request/validationCheckRequestBuilder.js +0 -39
  128. package/dist/lib/helper/data/test.d.ts +0 -13
  129. package/dist/lib/helper/data/test.js +0 -89
  130. package/dist/lib/helper/do/actionUtils.d.ts +0 -24
  131. package/dist/lib/helper/do/actionUtils.js +0 -70
  132. package/dist/lib/helper/do/doUtils.d.ts +0 -24
  133. package/dist/lib/helper/do/doUtils.js +0 -80
  134. package/dist/lib/helper/error/backErrorFilterBuilder.d.ts +0 -13
  135. package/dist/lib/helper/error/backErrorFilterBuilder.js +0 -34
  136. package/dist/lib/helper/error/taskErrorFilterBuilder.d.ts +0 -13
  137. package/dist/lib/helper/error/taskErrorFilterBuilder.js +0 -34
  138. package/dist/lib/helper/request/abstractRequestBuilder.d.ts +0 -53
  139. package/dist/lib/helper/request/abstractRequestBuilder.js +0 -68
  140. package/dist/lib/helper/request/authRequestBuilder.d.ts +0 -15
  141. package/dist/lib/helper/request/authRequestBuilder.js +0 -29
  142. package/dist/lib/helper/request/requestBuilder.d.ts +0 -46
  143. package/dist/lib/helper/request/requestBuilder.js +0 -76
  144. package/dist/lib/helper/request/standardRequestBuilder.d.ts +0 -15
  145. package/dist/lib/helper/request/standardRequestBuilder.js +0 -29
  146. package/dist/lib/helper/request/validationCheckRequestBuilder.d.ts +0 -21
  147. package/dist/lib/helper/request/validationCheckRequestBuilder.js +0 -39
  148. package/dist/lib/helper/request/validationRequestBuilder.d.ts +0 -35
  149. package/dist/lib/helper/request/validationRequestBuilder.js +0 -61
  150. package/dist/lib/helper/utils/clientUtils.d.ts +0 -4
  151. package/dist/lib/helper/utils/clientUtils.js +0 -29
@@ -1,8 +1,8 @@
1
1
  "use strict";
2
2
  /*
3
- Author: Luca Scaringella
3
+ Author: Ing. Luca Gian Scaringella
4
4
  GitHub: LucaCode
5
- ©Copyright by Luca Scaringella
5
+ Copyright(c) Ing. Luca Gian Scaringella
6
6
  */
7
7
  Object.defineProperty(exports, "__esModule", { value: true });
8
8
  exports.DataboxAsserter = void 0;
@@ -1,16 +1,17 @@
1
1
  import { Databox } from 'zation-client';
2
2
  import { AbstractDataboxAsserter } from "./abstractDataboxAsserter";
3
- export declare class StandaloneDataboxAsserter extends AbstractDataboxAsserter<StandaloneDataboxAsserter> {
4
- constructor(databox: Databox | Databox[], itTestDescription?: string);
3
+ import { DataboxMember } from "../../utils/types";
4
+ export declare class StandaloneDataboxAsserter<D extends Databox<any, any, any, any>> extends AbstractDataboxAsserter<StandaloneDataboxAsserter<D>, D> {
5
+ constructor(databox: D | D[], description?: string);
5
6
  /**
6
7
  * @description
7
- * Will connect all databoxes (before the test).
8
+ * Connects all databoxes (before the test).
8
9
  */
9
- connect(member?: any): StandaloneDataboxAsserter;
10
+ connect(member?: DataboxMember<D>): StandaloneDataboxAsserter<D>;
10
11
  /**
11
12
  * @description
12
- * Run the test.
13
+ * Runs the test.
13
14
  */
14
15
  test(): Promise<void>;
15
- protected self(): StandaloneDataboxAsserter;
16
+ protected self(): StandaloneDataboxAsserter<D>;
16
17
  }
@@ -1,8 +1,8 @@
1
1
  "use strict";
2
2
  /*
3
- Author: Luca Scaringella
3
+ Author: Ing. Luca Gian Scaringella
4
4
  GitHub: LucaCode
5
- ©Copyright by Luca Scaringella
5
+ Copyright(c) Ing. Luca Gian Scaringella
6
6
  */
7
7
  var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
8
8
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
@@ -19,13 +19,13 @@ const test_1 = require("../../test/test");
19
19
  const abstractDataboxAsserter_1 = require("./abstractDataboxAsserter");
20
20
  const chai_1 = require("chai");
21
21
  class StandaloneDataboxAsserter extends abstractDataboxAsserter_1.AbstractDataboxAsserter {
22
- constructor(databox, itTestDescription) {
23
- super(Array.isArray(databox) ? databox : [databox], new test_1.Test(itTestDescription));
22
+ constructor(databox, description) {
23
+ super(Array.isArray(databox) ? databox : [databox], new test_1.Test(description));
24
24
  }
25
25
  // noinspection JSUnusedGlobalSymbols
26
26
  /**
27
27
  * @description
28
- * Will connect all databoxes (before the test).
28
+ * Connects all databoxes (before the test).
29
29
  */
30
30
  connect(member) {
31
31
  this._test.beforeTest(() => __awaiter(this, void 0, void 0, function* () {
@@ -34,7 +34,7 @@ class StandaloneDataboxAsserter extends abstractDataboxAsserter_1.AbstractDatabo
34
34
  yield databox.connect(member);
35
35
  }
36
36
  catch (err) {
37
- chai_1.assert.fail(`Cannot connect the databox ${index}. Error -> ` + err.stack);
37
+ chai_1.assert.fail(`Cannot connect the databox ${index}. Error -> ` + err);
38
38
  }
39
39
  })));
40
40
  }));
@@ -43,7 +43,7 @@ class StandaloneDataboxAsserter extends abstractDataboxAsserter_1.AbstractDatabo
43
43
  // noinspection JSUnusedGlobalSymbols
44
44
  /**
45
45
  * @description
46
- * Run the test.
46
+ * Runs the test.
47
47
  */
48
48
  test() {
49
49
  return __awaiter(this, void 0, void 0, function* () {
@@ -1,4 +1,5 @@
1
1
  import { Test } from "../../test/test";
2
+ import { ValueAsserter } from "../value/valueAsserter";
2
3
  export declare type EventOnceListenerAdder<A extends any[]> = (listener: (...data: A) => void) => void;
3
4
  export declare abstract class AbstractEventAsserter<T, S, A extends any[] = [any]> {
4
5
  private messagePostfix;
@@ -10,22 +11,29 @@ export declare abstract class AbstractEventAsserter<T, S, A extends any[] = [any
10
11
  protected readonly _event: string;
11
12
  private _timeout;
12
13
  private _not;
13
- constructor(eventOnceListenerAdder: EventOnceListenerAdder<A>[], target: string, event: string, test: Test, source: S, messagePostfix?: string);
14
+ protected readonly _argsAsserter: ((args: A, target: string) => void)[];
15
+ protected constructor(eventOnceListenerAdder: EventOnceListenerAdder<A>[], target: string, event: string, test: Test, source: S, messagePostfix?: string);
14
16
  /**
15
17
  * @description
16
- * With this function, you can set a time limit in milliseconds in that the event should occur.
18
+ * Sets a time limit in milliseconds in that the event should occur.
17
19
  * @default
18
20
  * The default value is 200ms.
19
21
  */
20
22
  timeout(timeout: number): T;
21
23
  /**
22
24
  * @description
23
- * With this function, you set that the event should not occur.
25
+ * Sets that the event should not occur.
24
26
  * @default
25
27
  * The default value is false.
26
28
  */
27
29
  not(): T;
28
- protected _onEventArgs(args: A, index: number): void;
30
+ /**
31
+ * @description
32
+ * Asserts an argument value of the event.
33
+ * Notice that the argument will not be checked in (get not) mode.
34
+ */
35
+ withArgument<AI extends number>(argIndex: AI): ValueAsserter<A[AI], T>;
36
+ private _assertEventArgs;
29
37
  /**
30
38
  * @description
31
39
  * End the event asserter.
@@ -1,8 +1,8 @@
1
1
  "use strict";
2
2
  /*
3
- Author: Luca Scaringella
3
+ Author: Ing. Luca Gian Scaringella
4
4
  GitHub: LucaCode
5
- ©Copyright by Luca Scaringella
5
+ Copyright(c) Ing. Luca Gian Scaringella
6
6
  */
7
7
  var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
8
8
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
@@ -16,12 +16,14 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  exports.AbstractEventAsserter = void 0;
18
18
  const timeoutAssert_1 = require("../../timeout/timeoutAssert");
19
+ const valueAsserter_1 = require("../value/valueAsserter");
19
20
  const assert = require('assert');
20
21
  class AbstractEventAsserter {
21
22
  constructor(eventOnceListenerAdder, target, event, test, source, messagePostfix = '') {
22
23
  this.messagePostfix = messagePostfix;
23
24
  this._timeout = 200;
24
25
  this._not = false;
26
+ this._argsAsserter = [];
25
27
  this._eventOnceListenerAdder = eventOnceListenerAdder;
26
28
  this._target = target;
27
29
  this._event = event;
@@ -31,7 +33,7 @@ class AbstractEventAsserter {
31
33
  // noinspection JSUnusedGlobalSymbols
32
34
  /**
33
35
  * @description
34
- * With this function, you can set a time limit in milliseconds in that the event should occur.
36
+ * Sets a time limit in milliseconds in that the event should occur.
35
37
  * @default
36
38
  * The default value is 200ms.
37
39
  */
@@ -42,7 +44,7 @@ class AbstractEventAsserter {
42
44
  // noinspection JSUnusedGlobalSymbols
43
45
  /**
44
46
  * @description
45
- * With this function, you set that the event should not occur.
47
+ * Sets that the event should not occur.
46
48
  * @default
47
49
  * The default value is false.
48
50
  */
@@ -50,7 +52,22 @@ class AbstractEventAsserter {
50
52
  this._not = true;
51
53
  return this.self();
52
54
  }
53
- _onEventArgs(args, index) { }
55
+ // noinspection JSUnusedGlobalSymbols
56
+ /**
57
+ * @description
58
+ * Asserts an argument value of the event.
59
+ * Notice that the argument will not be checked in (get not) mode.
60
+ */
61
+ withArgument(argIndex) {
62
+ return new valueAsserter_1.ValueAsserter(this.self(), (test) => {
63
+ this._argsAsserter.push((args, target) => {
64
+ test(args[argIndex], target + `argument: ${argIndex}`);
65
+ });
66
+ });
67
+ }
68
+ _assertEventArgs(args, index) {
69
+ this._argsAsserter.forEach(asserter => asserter(args, `${this._target}: ${index} event: ${this._event} -> `));
70
+ }
54
71
  // noinspection JSUnusedGlobalSymbols
55
72
  /**
56
73
  * @description
@@ -58,9 +75,7 @@ class AbstractEventAsserter {
58
75
  */
59
76
  end() {
60
77
  this._eventOnceListenerAdder.forEach((addListener, i) => {
61
- let receivedEmit = false;
62
- let listenerArgs;
63
- let resolve;
78
+ let receivedEmit = false, listenerArgs, resolve;
64
79
  this._test.beforeTest(() => {
65
80
  addListener((...args) => {
66
81
  listenerArgs = args;
@@ -76,13 +91,13 @@ class AbstractEventAsserter {
76
91
  resolve = () => toa.resolve();
77
92
  yield toa.set();
78
93
  if (!this._not)
79
- this._onEventArgs(listenerArgs, i);
94
+ this._assertEventArgs(listenerArgs, i);
80
95
  }
81
96
  else {
82
97
  if (this._not)
83
98
  assert.fail(failMsg);
84
99
  else
85
- this._onEventArgs(listenerArgs, i);
100
+ this._assertEventArgs(listenerArgs, i);
86
101
  }
87
102
  }));
88
103
  });
@@ -0,0 +1,21 @@
1
+ import { ValueAsserter } from "../value/valueAsserter";
2
+ import { AbstractEventAsserter, EventOnceListenerAdder } from "./abstractEventAsserter";
3
+ import { Test } from "../../test/test";
4
+ export declare class CodeMetadataEventAsserter<S, A extends any[], CI extends keyof A, MDI extends keyof A> extends AbstractEventAsserter<CodeMetadataEventAsserter<S, A, CI, MDI>, S, A> {
5
+ private readonly codeIndex;
6
+ private readonly metadataIndex;
7
+ constructor(eventOnceListenerAdder: EventOnceListenerAdder<A>[], target: string, event: string, test: Test, source: S, codeIndex: CI, metadataIndex: MDI, messagePostfix?: string);
8
+ /**
9
+ * @description
10
+ * Asserts the code of the event.
11
+ * Notice that the code will not be checked in (get not) mode.
12
+ */
13
+ withCode(): ValueAsserter<A[CI], CodeMetadataEventAsserter<S, A, CI, MDI>>;
14
+ /**
15
+ * @description
16
+ * Asserts the metadata of the event.
17
+ * Notice that the metadata will not be checked in (get not) mode.
18
+ */
19
+ withMetadata(): ValueAsserter<A[MDI], CodeMetadataEventAsserter<S, A, CI, MDI>>;
20
+ protected self(): CodeMetadataEventAsserter<S, A, CI, MDI>;
21
+ }
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ /*
3
+ Author: Ing. Luca Gian Scaringella
4
+ GitHub: LucaCode
5
+ Copyright(c) Ing. Luca Gian Scaringella
6
+ */
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ exports.CodeMetadataEventAsserter = void 0;
9
+ const valueAsserter_1 = require("../value/valueAsserter");
10
+ const abstractEventAsserter_1 = require("./abstractEventAsserter");
11
+ class CodeMetadataEventAsserter extends abstractEventAsserter_1.AbstractEventAsserter {
12
+ constructor(eventOnceListenerAdder, target, event, test, source, codeIndex, metadataIndex, messagePostfix = "") {
13
+ super(eventOnceListenerAdder, target, event, test, source, messagePostfix);
14
+ this.codeIndex = codeIndex;
15
+ this.metadataIndex = metadataIndex;
16
+ }
17
+ // noinspection JSUnusedGlobalSymbols
18
+ /**
19
+ * @description
20
+ * Asserts the code of the event.
21
+ * Notice that the code will not be checked in (get not) mode.
22
+ */
23
+ withCode() {
24
+ return new valueAsserter_1.ValueAsserter(this.self(), (test) => {
25
+ this._argsAsserter.push((args, target) => {
26
+ test(args[this.codeIndex], target + 'code');
27
+ });
28
+ });
29
+ }
30
+ // noinspection JSUnusedGlobalSymbols
31
+ /**
32
+ * @description
33
+ * Asserts the metadata of the event.
34
+ * Notice that the metadata will not be checked in (get not) mode.
35
+ */
36
+ withMetadata() {
37
+ return new valueAsserter_1.ValueAsserter(this.self(), (test) => {
38
+ this._argsAsserter.push((args, target) => {
39
+ test(args[this.metadataIndex], target + 'metadata');
40
+ });
41
+ });
42
+ }
43
+ self() {
44
+ return this;
45
+ }
46
+ }
47
+ exports.CodeMetadataEventAsserter = CodeMetadataEventAsserter;
@@ -1,4 +1,14 @@
1
- import { AbstractDataEventAsserter } from "./abstractDataEventAsserter";
2
- export declare class DataEventAsserter<S, A extends [any] = [any]> extends AbstractDataEventAsserter<DataEventAsserter<S, A>, S, A> {
3
- protected self(): DataEventAsserter<S, A>;
1
+ import { AbstractEventAsserter, EventOnceListenerAdder } from "./abstractEventAsserter";
2
+ import { Test } from "../../test/test";
3
+ import { ValueAsserter } from "../value/valueAsserter";
4
+ export declare class DataEventAsserter<S, A extends any[], DI extends keyof A> extends AbstractEventAsserter<DataEventAsserter<S, A, DI>, S, A> {
5
+ private readonly dataIndex;
6
+ constructor(eventOnceListenerAdder: EventOnceListenerAdder<A>[], target: string, event: string, test: Test, source: S, dataIndex: DI, messagePostfix?: string);
7
+ /**
8
+ * @description
9
+ * Asserts the data of the event.
10
+ * Notice that the data will not be checked in (get not) mode.
11
+ */
12
+ withData(): ValueAsserter<A[DI], DataEventAsserter<S, A, DI>>;
13
+ protected self(): DataEventAsserter<S, A, DI>;
4
14
  }
@@ -1,13 +1,31 @@
1
1
  "use strict";
2
2
  /*
3
- Author: Luca Scaringella
3
+ Author: Ing. Luca Gian Scaringella
4
4
  GitHub: LucaCode
5
- ©Copyright by Luca Scaringella
5
+ Copyright(c) Ing. Luca Gian Scaringella
6
6
  */
7
7
  Object.defineProperty(exports, "__esModule", { value: true });
8
8
  exports.DataEventAsserter = void 0;
9
- const abstractDataEventAsserter_1 = require("./abstractDataEventAsserter");
10
- class DataEventAsserter extends abstractDataEventAsserter_1.AbstractDataEventAsserter {
9
+ const abstractEventAsserter_1 = require("./abstractEventAsserter");
10
+ const valueAsserter_1 = require("../value/valueAsserter");
11
+ class DataEventAsserter extends abstractEventAsserter_1.AbstractEventAsserter {
12
+ constructor(eventOnceListenerAdder, target, event, test, source, dataIndex, messagePostfix = "") {
13
+ super(eventOnceListenerAdder, target, event, test, source, messagePostfix);
14
+ this.dataIndex = dataIndex;
15
+ }
16
+ // noinspection JSUnusedGlobalSymbols
17
+ /**
18
+ * @description
19
+ * Asserts the data of the event.
20
+ * Notice that the data will not be checked in (get not) mode.
21
+ */
22
+ withData() {
23
+ return new valueAsserter_1.ValueAsserter(this.self(), (test) => {
24
+ this._argsAsserter.push((args, target) => {
25
+ test(args[this.dataIndex], target + 'data');
26
+ });
27
+ });
28
+ }
11
29
  self() {
12
30
  return this;
13
31
  }
@@ -0,0 +1,9 @@
1
+ import { Client } from "zation-client";
2
+ import { Test } from "../../test/test";
3
+ import { AbstractActionAsserter } from "../abstractActionAsserter";
4
+ export declare class IntegratedTransmitAsserter<C extends Client<any, any>> extends AbstractActionAsserter<IntegratedTransmitAsserter<C>, C> {
5
+ private readonly transmit;
6
+ constructor(transmit: () => Promise<void>, test: Test, client: C);
7
+ protected _executeAction(): Promise<void>;
8
+ protected self(): IntegratedTransmitAsserter<C>;
9
+ }
@@ -1,8 +1,8 @@
1
1
  "use strict";
2
2
  /*
3
- Author: Luca Scaringella
3
+ Author: Ing. Luca Gian Scaringella
4
4
  GitHub: LucaCode
5
- ©Copyright by Luca Scaringella
5
+ Copyright(c) Ing. Luca Gian Scaringella
6
6
  */
7
7
  var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
8
8
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
@@ -14,20 +14,20 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
14
14
  });
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.TransmitAsserter = void 0;
18
- const rootSendAsserter_1 = require("../rootSendAsserter");
19
- class TransmitAsserter extends rootSendAsserter_1.RootSendAsserter {
20
- constructor(nativeBuilder, test, client) {
17
+ exports.IntegratedTransmitAsserter = void 0;
18
+ const abstractActionAsserter_1 = require("../abstractActionAsserter");
19
+ class IntegratedTransmitAsserter extends abstractActionAsserter_1.AbstractActionAsserter {
20
+ constructor(transmit, test, client) {
21
21
  super(test, client);
22
- this.nativeBuilder = nativeBuilder;
22
+ this.transmit = transmit;
23
23
  }
24
24
  _executeAction() {
25
25
  return __awaiter(this, void 0, void 0, function* () {
26
- yield this.nativeBuilder.send();
26
+ yield this.transmit();
27
27
  });
28
28
  }
29
29
  self() {
30
30
  return this;
31
31
  }
32
32
  }
33
- exports.TransmitAsserter = TransmitAsserter;
33
+ exports.IntegratedTransmitAsserter = IntegratedTransmitAsserter;
@@ -1,10 +1,9 @@
1
- import { ForintQuery } from "forint";
2
- declare type AddTest = (test: (value: any, eStr?: string) => void) => void;
3
- export declare abstract class AbstractValueAsserter<T> {
1
+ import { Query } from "queric";
2
+ declare type AddTest = (test: (value: any, target: string) => void) => void;
3
+ export declare abstract class AbstractValueAsserter<V, T> {
4
4
  protected abstract self(): T;
5
5
  private readonly addTest;
6
- private readonly name;
7
- protected constructor(name: string, addTest: AddTest);
6
+ protected constructor(addTest: AddTest);
8
7
  /**
9
8
  * @description
10
9
  * Asserts that the value is undefined.
@@ -64,31 +63,31 @@ export declare abstract class AbstractValueAsserter<T> {
64
63
  */
65
64
  notDeepEqual(expectedValue: any): T;
66
65
  /**
67
- * Asserts that the value matches with a forint query.
66
+ * Asserts that the value matches with a queric query.
68
67
  */
69
- matches(query: ForintQuery): T;
68
+ matches(query: Query<V> | Query<Record<any, any>>): T;
70
69
  /**
71
- * Asserts that the value not matches with a forint query.
70
+ * Asserts that the value not matches with a queric query.
72
71
  */
73
- notMatches(query: ForintQuery): T;
72
+ notMatches(query: Query<V> | Query<Record<any, any>>): T;
74
73
  /**
75
74
  * @description
76
75
  * Asserts that the value has all specific keys.
77
76
  * @param keys
78
77
  */
79
- containsAllKeys(...keys: string[]): T;
78
+ containsAllKeys(...keys: (keyof V | string)[]): T;
80
79
  /**
81
80
  * @description
82
81
  * Asserts that the value has at least one specific keys.
83
82
  * @param keys
84
83
  */
85
- hasAnyKeys(...keys: string[]): T;
84
+ hasAnyKeys(...keys: (keyof V | string)[]): T;
86
85
  /**
87
86
  * @description
88
87
  * Asserts that the value does not have any of the specific keys.
89
88
  * @param keys
90
89
  */
91
- doesNotHaveAnyKeys(...keys: string[]): T;
90
+ doesNotHaveAnyKeys(...keys: (keyof V | string)[]): T;
92
91
  /**
93
92
  * @description
94
93
  * Asserts that the value should own include a subset.
@@ -131,10 +130,9 @@ export declare abstract class AbstractValueAsserter<T> {
131
130
  lengthOf(length: number): T;
132
131
  /**
133
132
  * @description
134
- * Lets you do a custom assertion with the value.
133
+ * Creates a custom assertion.
135
134
  * @param assert
136
- * @param message
137
135
  */
138
- assert(assert: (value: any) => boolean | Promise<boolean>, message?: string): T;
136
+ assert(assert: (value: any, target: string) => void | Promise<void>): T;
139
137
  }
140
138
  export {};