assertron 7.1.0 → 8.0.0
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 +56 -23
- package/{dist-es2015 → cjs}/assert-order/AssertOrder.d.ts +3 -2
- package/cjs/assert-order/AssertOrder.d.ts.map +1 -0
- package/cjs/assert-order/AssertOrder.js +148 -0
- package/cjs/assert-order/InvalidOrder.d.ts +10 -0
- package/cjs/assert-order/InvalidOrder.d.ts.map +1 -0
- package/cjs/assert-order/InvalidOrder.js +44 -0
- package/{dist-es5 → cjs}/assert-order/StateMachine.d.ts +4 -5
- package/cjs/assert-order/StateMachine.d.ts.map +1 -0
- package/cjs/assert-order/StateMachine.js +111 -0
- package/{dist-es2015 → cjs}/assert-order/index.d.ts +1 -0
- package/cjs/assert-order/index.d.ts.map +1 -0
- package/cjs/assert-order/index.js +6 -0
- package/{dist-es2015 → cjs}/assert-order/interfaces.d.ts +1 -0
- package/cjs/assert-order/interfaces.d.ts.map +1 -0
- package/cjs/assert-order/interfaces.js +3 -0
- package/{dist-es2015 → cjs}/assertron/assertron.d.ts +1 -0
- package/cjs/assertron/assertron.d.ts.map +1 -0
- package/cjs/assertron/assertron.js +32 -0
- package/{dist-es2015 → cjs}/assertron/falsy.d.ts +1 -0
- package/cjs/assertron/falsy.d.ts.map +1 -0
- package/cjs/assertron/falsy.js +11 -0
- package/cjs/assertron/index.d.ts +2 -0
- package/cjs/assertron/index.d.ts.map +1 -0
- package/cjs/assertron/index.js +5 -0
- package/{dist-es2015 → cjs}/assertron/pathEqual.d.ts +1 -0
- package/cjs/assertron/pathEqual.d.ts.map +1 -0
- package/cjs/assertron/pathEqual.js +13 -0
- package/{dist-es2015 → cjs}/assertron/rejects.d.ts +1 -0
- package/cjs/assertron/rejects.d.ts.map +1 -0
- package/cjs/assertron/rejects.js +14 -0
- package/{dist-es2015 → cjs}/assertron/repeat.d.ts +9 -0
- package/cjs/assertron/repeat.d.ts.map +1 -0
- package/cjs/assertron/repeat.js +44 -0
- package/{dist-es2015 → cjs}/assertron/resolves.d.ts +1 -0
- package/cjs/assertron/resolves.d.ts.map +1 -0
- package/cjs/assertron/resolves.js +17 -0
- package/cjs/assertron/satisfies.d.ts +10 -0
- package/cjs/assertron/satisfies.d.ts.map +1 -0
- package/cjs/assertron/satisfies.js +19 -0
- package/{dist-es2015 → cjs}/assertron/throws.d.ts +2 -0
- package/cjs/assertron/throws.d.ts.map +1 -0
- package/cjs/assertron/throws.js +62 -0
- package/{dist-es2015 → cjs}/assertron/truthy.d.ts +1 -0
- package/cjs/assertron/truthy.d.ts.map +1 -0
- package/cjs/assertron/truthy.js +11 -0
- package/{dist-es2015 → cjs}/errors/NotSatisfied.d.ts +1 -0
- package/cjs/errors/NotSatisfied.d.ts.map +1 -0
- package/cjs/errors/NotSatisfied.js +28 -0
- package/{dist-es5 → cjs}/errors/index.d.ts +1 -0
- package/cjs/errors/index.d.ts.map +1 -0
- package/cjs/errors/index.js +11 -0
- package/{dist-es2015 → cjs}/errors/interfaces.d.ts +1 -0
- package/cjs/errors/interfaces.d.ts.map +1 -0
- package/cjs/errors/interfaces.js +3 -0
- package/{dist-es2015 → cjs}/errors/notEqualMessage.d.ts +1 -0
- package/cjs/errors/notEqualMessage.d.ts.map +1 -0
- package/cjs/errors/notEqualMessage.js +8 -0
- package/{dist-es2015 → cjs}/errors/notRejectedMessage.d.ts +1 -0
- package/cjs/errors/notRejectedMessage.d.ts.map +1 -0
- package/cjs/errors/notRejectedMessage.js +8 -0
- package/{dist-es2015 → cjs}/errors/notThrownMessage.d.ts +1 -0
- package/cjs/errors/notThrownMessage.d.ts.map +1 -0
- package/cjs/errors/notThrownMessage.js +9 -0
- package/{dist-es2015 → cjs}/errors/returnNotRejectedMessage.d.ts +1 -0
- package/cjs/errors/returnNotRejectedMessage.d.ts.map +1 -0
- package/cjs/errors/returnNotRejectedMessage.js +8 -0
- package/{dist-es2015 → cjs}/errors/unexpectedErrorMessage.d.ts +1 -0
- package/cjs/errors/unexpectedErrorMessage.d.ts.map +1 -0
- package/cjs/errors/unexpectedErrorMessage.js +10 -0
- package/{dist-es2015 → cjs}/errors/util.d.ts +1 -0
- package/cjs/errors/util.d.ts.map +1 -0
- package/cjs/errors/util.js +8 -0
- package/{dist-es5 → cjs}/index.d.ts +1 -0
- package/cjs/index.d.ts.map +1 -0
- package/cjs/index.js +8 -0
- package/esm/assert-order/AssertOrder.js +132 -0
- package/esm/assert-order/InvalidOrder.js +31 -0
- package/esm/assert-order/StateMachine.js +103 -0
- package/esm/assert-order/index.js +3 -0
- package/esm/assert-order/interfaces.js +2 -0
- package/esm/assertron/assertron.js +28 -0
- package/esm/assertron/falsy.js +6 -0
- package/esm/assertron/index.js +2 -0
- package/esm/assertron/pathEqual.js +8 -0
- package/esm/assertron/rejects.js +9 -0
- package/esm/assertron/repeat.js +35 -0
- package/esm/assertron/resolves.js +12 -0
- package/esm/assertron/satisfies.js +14 -0
- package/esm/assertron/throws.js +57 -0
- package/esm/assertron/truthy.js +6 -0
- package/esm/errors/NotSatisfied.js +23 -0
- package/esm/errors/index.js +8 -0
- package/esm/errors/interfaces.js +2 -0
- package/esm/errors/notEqualMessage.js +4 -0
- package/esm/errors/notRejectedMessage.js +4 -0
- package/esm/errors/notThrownMessage.js +5 -0
- package/esm/errors/returnNotRejectedMessage.js +4 -0
- package/esm/errors/unexpectedErrorMessage.js +6 -0
- package/esm/errors/util.js +4 -0
- package/esm/index.js +5 -0
- package/package.json +63 -24
- package/src/assert-order/AssertOrder.spec.ts +0 -1
- package/src/assert-order/AssertOrder.ts +3 -3
- package/src/assert-order/InvalidOrder.ts +5 -8
- package/src/assert-order/StateMachine.ts +24 -28
- package/src/assert-order/interfaces.ts +5 -5
- package/src/assert-order/internalInterfaces.ts +3 -3
- package/src/assertron/assertron.spec.ts +3 -4
- package/src/assertron/assertron.ts +9 -9
- package/src/assertron/falsy.spec.ts +2 -2
- package/src/assertron/pathEqual.spec.ts +3 -3
- package/src/assertron/pathEqual.ts +3 -3
- package/src/assertron/rejects.spec.ts +7 -7
- package/src/assertron/rejects.ts +4 -6
- package/src/assertron/repeat.spec.ts +27 -1
- package/src/assertron/repeat.ts +27 -10
- package/src/assertron/resolves.spec.ts +4 -4
- package/src/assertron/resolves.ts +7 -10
- package/src/assertron/satisfies.spec.ts +8 -9
- package/src/assertron/satisfies.ts +15 -5
- package/src/assertron/throws.spec.ts +33 -13
- package/src/assertron/throws.ts +8 -5
- package/src/assertron/truthy.spec.ts +3 -3
- package/src/errors/NotSatisfied.ts +1 -1
- package/src/errors/interfaces.ts +1 -1
- package/src/errors/notThrownMessage.ts +3 -1
- package/src/errors/util.ts +2 -2
- package/src/testUtils.ts +17 -13
- package/dist-es2015/assert-order/AssertOrder.js +0 -132
- package/dist-es2015/assert-order/AssertOrder.js.map +0 -1
- package/dist-es2015/assert-order/InvalidOrder.d.ts +0 -8
- package/dist-es2015/assert-order/InvalidOrder.js +0 -31
- package/dist-es2015/assert-order/InvalidOrder.js.map +0 -1
- package/dist-es2015/assert-order/StateMachine.d.ts +0 -23
- package/dist-es2015/assert-order/StateMachine.js +0 -106
- package/dist-es2015/assert-order/StateMachine.js.map +0 -1
- package/dist-es2015/assert-order/index.js +0 -2
- package/dist-es2015/assert-order/index.js.map +0 -1
- package/dist-es2015/assert-order/interfaces.js +0 -1
- package/dist-es2015/assert-order/interfaces.js.map +0 -1
- package/dist-es2015/assertron/assertron.js +0 -28
- package/dist-es2015/assertron/assertron.js.map +0 -1
- package/dist-es2015/assertron/falsy.js +0 -6
- package/dist-es2015/assertron/falsy.js.map +0 -1
- package/dist-es2015/assertron/index.d.ts +0 -1
- package/dist-es2015/assertron/index.js +0 -2
- package/dist-es2015/assertron/index.js.map +0 -1
- package/dist-es2015/assertron/pathEqual.js +0 -8
- package/dist-es2015/assertron/pathEqual.js.map +0 -1
- package/dist-es2015/assertron/rejects.js +0 -10
- package/dist-es2015/assertron/rejects.js.map +0 -1
- package/dist-es2015/assertron/repeat.js +0 -21
- package/dist-es2015/assertron/repeat.js.map +0 -1
- package/dist-es2015/assertron/resolves.js +0 -12
- package/dist-es2015/assertron/resolves.js.map +0 -1
- package/dist-es2015/assertron/satisfies.d.ts +0 -5
- package/dist-es2015/assertron/satisfies.js +0 -14
- package/dist-es2015/assertron/satisfies.js.map +0 -1
- package/dist-es2015/assertron/throws.js +0 -55
- package/dist-es2015/assertron/throws.js.map +0 -1
- package/dist-es2015/assertron/truthy.js +0 -6
- package/dist-es2015/assertron/truthy.js.map +0 -1
- package/dist-es2015/errors/NotSatisfied.js +0 -23
- package/dist-es2015/errors/NotSatisfied.js.map +0 -1
- package/dist-es2015/errors/index.d.ts +0 -7
- package/dist-es2015/errors/index.js +0 -7
- package/dist-es2015/errors/index.js.map +0 -1
- package/dist-es2015/errors/interfaces.js +0 -1
- package/dist-es2015/errors/interfaces.js.map +0 -1
- package/dist-es2015/errors/notEqualMessage.js +0 -4
- package/dist-es2015/errors/notEqualMessage.js.map +0 -1
- package/dist-es2015/errors/notRejectedMessage.js +0 -4
- package/dist-es2015/errors/notRejectedMessage.js.map +0 -1
- package/dist-es2015/errors/notThrownMessage.js +0 -4
- package/dist-es2015/errors/notThrownMessage.js.map +0 -1
- package/dist-es2015/errors/returnNotRejectedMessage.js +0 -4
- package/dist-es2015/errors/returnNotRejectedMessage.js.map +0 -1
- package/dist-es2015/errors/unexpectedErrorMessage.js +0 -6
- package/dist-es2015/errors/unexpectedErrorMessage.js.map +0 -1
- package/dist-es2015/errors/util.js +0 -4
- package/dist-es2015/errors/util.js.map +0 -1
- package/dist-es2015/index.d.ts +0 -4
- package/dist-es2015/index.js +0 -5
- package/dist-es2015/index.js.map +0 -1
- package/dist-es5/assert-order/AssertOrder.d.ts +0 -40
- package/dist-es5/assert-order/AssertOrder.js +0 -147
- package/dist-es5/assert-order/AssertOrder.js.map +0 -1
- package/dist-es5/assert-order/InvalidOrder.d.ts +0 -8
- package/dist-es5/assert-order/InvalidOrder.js +0 -58
- package/dist-es5/assert-order/InvalidOrder.js.map +0 -1
- package/dist-es5/assert-order/StateMachine.js +0 -115
- package/dist-es5/assert-order/StateMachine.js.map +0 -1
- package/dist-es5/assert-order/index.d.ts +0 -2
- package/dist-es5/assert-order/index.js +0 -7
- package/dist-es5/assert-order/index.js.map +0 -1
- package/dist-es5/assert-order/interfaces.d.ts +0 -7
- package/dist-es5/assert-order/interfaces.js +0 -3
- package/dist-es5/assert-order/interfaces.js.map +0 -1
- package/dist-es5/assertron/assertron.d.ts +0 -20
- package/dist-es5/assertron/assertron.js +0 -33
- package/dist-es5/assertron/assertron.js.map +0 -1
- package/dist-es5/assertron/falsy.d.ts +0 -1
- package/dist-es5/assertron/falsy.js +0 -12
- package/dist-es5/assertron/falsy.js.map +0 -1
- package/dist-es5/assertron/index.d.ts +0 -1
- package/dist-es5/assertron/index.js +0 -7
- package/dist-es5/assertron/index.js.map +0 -1
- package/dist-es5/assertron/pathEqual.d.ts +0 -1
- package/dist-es5/assertron/pathEqual.js +0 -14
- package/dist-es5/assertron/pathEqual.js.map +0 -1
- package/dist-es5/assertron/rejects.d.ts +0 -1
- package/dist-es5/assertron/rejects.js +0 -16
- package/dist-es5/assertron/rejects.js.map +0 -1
- package/dist-es5/assertron/repeat.d.ts +0 -5
- package/dist-es5/assertron/repeat.js +0 -27
- package/dist-es5/assertron/repeat.js.map +0 -1
- package/dist-es5/assertron/resolves.d.ts +0 -1
- package/dist-es5/assertron/resolves.js +0 -18
- package/dist-es5/assertron/resolves.js.map +0 -1
- package/dist-es5/assertron/satisfies.d.ts +0 -5
- package/dist-es5/assertron/satisfies.js +0 -20
- package/dist-es5/assertron/satisfies.js.map +0 -1
- package/dist-es5/assertron/throws.d.ts +0 -4
- package/dist-es5/assertron/throws.js +0 -61
- package/dist-es5/assertron/throws.js.map +0 -1
- package/dist-es5/assertron/truthy.d.ts +0 -1
- package/dist-es5/assertron/truthy.js +0 -12
- package/dist-es5/assertron/truthy.js.map +0 -1
- package/dist-es5/errors/NotSatisfied.d.ts +0 -2
- package/dist-es5/errors/NotSatisfied.js +0 -26
- package/dist-es5/errors/NotSatisfied.js.map +0 -1
- package/dist-es5/errors/index.js +0 -12
- package/dist-es5/errors/index.js.map +0 -1
- package/dist-es5/errors/interfaces.d.ts +0 -2
- package/dist-es5/errors/interfaces.js +0 -3
- package/dist-es5/errors/interfaces.js.map +0 -1
- package/dist-es5/errors/notEqualMessage.d.ts +0 -1
- package/dist-es5/errors/notEqualMessage.js +0 -7
- package/dist-es5/errors/notEqualMessage.js.map +0 -1
- package/dist-es5/errors/notRejectedMessage.d.ts +0 -1
- package/dist-es5/errors/notRejectedMessage.js +0 -7
- package/dist-es5/errors/notRejectedMessage.js.map +0 -1
- package/dist-es5/errors/notThrownMessage.d.ts +0 -1
- package/dist-es5/errors/notThrownMessage.js +0 -7
- package/dist-es5/errors/notThrownMessage.js.map +0 -1
- package/dist-es5/errors/returnNotRejectedMessage.d.ts +0 -1
- package/dist-es5/errors/returnNotRejectedMessage.js +0 -7
- package/dist-es5/errors/returnNotRejectedMessage.js.map +0 -1
- package/dist-es5/errors/unexpectedErrorMessage.d.ts +0 -2
- package/dist-es5/errors/unexpectedErrorMessage.js +0 -9
- package/dist-es5/errors/unexpectedErrorMessage.js.map +0 -1
- package/dist-es5/errors/util.d.ts +0 -2
- package/dist-es5/errors/util.js +0 -7
- package/dist-es5/errors/util.js.map +0 -1
- package/dist-es5/index.js +0 -10
- package/dist-es5/index.js.map +0 -1
package/README.md
CHANGED
|
@@ -5,35 +5,46 @@
|
|
|
5
5
|
[![NPM version][npm-image]][npm-url]
|
|
6
6
|
[![NPM downloads][downloads-image]][downloads-url]
|
|
7
7
|
|
|
8
|
-
[![
|
|
9
|
-
[![CircleCI][circleci-image]][circleci-url]
|
|
8
|
+
[![Github NodeJS][github-nodejs]][github-action-url]
|
|
10
9
|
[![Codecov][codecov-image]][codecov-url]
|
|
11
10
|
[![Coverage Status][coveralls-image]][coveralls-url]
|
|
12
11
|
|
|
13
|
-
[![Greenkeeper
|
|
14
|
-
[![semantic-release
|
|
12
|
+
[![Greenkeeper][greenkeeper-image]][greenkeeper-url]
|
|
13
|
+
[![Semantic Release][semantic-release-image]][semantic-release-url]
|
|
14
|
+
|
|
15
|
+
[![Visual Studio Code][vscode-image]][vscode-url]
|
|
15
16
|
|
|
16
17
|
A supplementary assertion library that runs on both NodeJS and browser.
|
|
17
18
|
|
|
18
19
|
## assertron
|
|
19
20
|
|
|
20
|
-
`assertron` provides
|
|
21
|
+
`assertron` provides a collection of assertion methods.
|
|
21
22
|
|
|
22
|
-
|
|
23
|
-
import { assertron } from 'assertron'
|
|
23
|
+
### assertron.false(value)
|
|
24
24
|
|
|
25
|
-
|
|
26
|
-
assertron.throws(() => { throw new Error('foo') })
|
|
27
|
-
assertron.throws(() => Promise.reject(new Error('foo')))
|
|
25
|
+
Asserts the provided value is false.
|
|
28
26
|
|
|
29
|
-
assertron.
|
|
30
|
-
|
|
27
|
+
### assertron.falsy(value)
|
|
28
|
+
|
|
29
|
+
Asserts the provides value is falsy.
|
|
30
|
+
|
|
31
|
+
### assertron.pathEqual(actual, expected)
|
|
32
|
+
|
|
33
|
+
Asserts the two paths are equal regardless of operating system differences.
|
|
34
|
+
|
|
35
|
+
### assertron.rejects(promise)
|
|
36
|
+
|
|
37
|
+
Asserts the promise rejects.
|
|
31
38
|
|
|
32
39
|
### assertron.repeat(fn, times)
|
|
33
40
|
|
|
34
41
|
Repeat the specified function n times and return the last result.
|
|
35
42
|
If the result is a promise, it will run the function sequentially.
|
|
36
43
|
|
|
44
|
+
### assertron.resolves(promise)
|
|
45
|
+
|
|
46
|
+
Asserts the promise resolves.
|
|
47
|
+
|
|
37
48
|
### assertron.satisfies(actual, expected)
|
|
38
49
|
|
|
39
50
|
`assertron.satisfies()` checks if `actual` meets the requirements specified by `expected`.
|
|
@@ -56,9 +67,33 @@ a.satisfies({ a: 'foo' }, { a: /boo/ })
|
|
|
56
67
|
a.satisfies({ a: 1 }, { a: () => false })
|
|
57
68
|
```
|
|
58
69
|
|
|
70
|
+
### assertron.throws(...)
|
|
71
|
+
|
|
72
|
+
Asserts the promise, function, or async function throws (or reject) an error.
|
|
73
|
+
|
|
74
|
+
```ts
|
|
75
|
+
import { assertron } from 'assertron'
|
|
76
|
+
|
|
77
|
+
await assertron.throws(Promise.reject(new Error('foo')))
|
|
78
|
+
assertron.throws(() => { throw new Error('foo') })
|
|
79
|
+
await assertron.throws(() => Promise.reject(new Error('foo')))
|
|
80
|
+
|
|
81
|
+
const e1 = await assertron.throws(Promise.reject(new SpecificError('foo')), SpecificError)
|
|
82
|
+
const e2 = assertron.throws(() => { throw new SpecificError('foo') }, SpecificError)
|
|
83
|
+
const e3 = await assertron.throws(() => Promise.reject(new SpecificError('foo')), SpecificError)
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
### assertron.true(value)
|
|
87
|
+
|
|
88
|
+
Asserts the provided value is true.
|
|
89
|
+
|
|
90
|
+
### assertron.truthy(value)
|
|
91
|
+
|
|
92
|
+
Asserts the provided value is truthy.
|
|
93
|
+
|
|
59
94
|
## AssertOrder
|
|
60
95
|
|
|
61
|
-
|
|
96
|
+
Assert code are executed in expected order.
|
|
62
97
|
|
|
63
98
|
### order.once(step: number)
|
|
64
99
|
|
|
@@ -138,7 +173,7 @@ for (let i = 1; i <= 4; i++) {
|
|
|
138
173
|
}
|
|
139
174
|
```
|
|
140
175
|
|
|
141
|
-
There are
|
|
176
|
+
There are other methods available. Use TypeScript to discover them!
|
|
142
177
|
|
|
143
178
|
## Contribute
|
|
144
179
|
|
|
@@ -183,24 +218,22 @@ npm run build
|
|
|
183
218
|
npm run lint
|
|
184
219
|
```
|
|
185
220
|
|
|
186
|
-
Generated by `generator-unional@0.0.1`
|
|
187
|
-
|
|
188
221
|
[npm-image]: https://img.shields.io/npm/v/assertron.svg?style=flat
|
|
189
222
|
[npm-url]: https://npmjs.org/package/assertron
|
|
190
223
|
[downloads-image]: https://img.shields.io/npm/dm/assertron.svg?style=flat
|
|
191
224
|
[downloads-url]: https://npmjs.org/package/assertron
|
|
192
225
|
|
|
193
|
-
[
|
|
194
|
-
[
|
|
195
|
-
[circleci-image]: https://circleci.com/gh/unional/assertron/tree/master.svg?style=shield
|
|
196
|
-
[circleci-url]: https://circleci.com/gh/unional/assertron/tree/master
|
|
197
|
-
|
|
226
|
+
[github-nodejs]: https://github.com/unional/assertron/workflows/nodejs/badge.svg
|
|
227
|
+
[github-action-url]: https://github.com/unional/assertron/actions
|
|
198
228
|
[codecov-image]: https://codecov.io/gh/unional/assertron/branch/master/graph/badge.svg
|
|
199
229
|
[codecov-url]: https://codecov.io/gh/unional/assertron
|
|
200
230
|
[coveralls-image]: https://coveralls.io/repos/github/unional/assertron/badge.svg
|
|
201
231
|
[coveralls-url]: https://coveralls.io/github/unional/assertron
|
|
202
232
|
|
|
203
|
-
[
|
|
204
|
-
[
|
|
233
|
+
[greenkeeper-image]: https://badges.greenkeeper.io/unional/assertron.svg
|
|
234
|
+
[greenkeeper-url]: https://greenkeeper.io/
|
|
205
235
|
[semantic-release-image]: https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg
|
|
206
236
|
[semantic-release-url]: https://github.com/semantic-release/semantic-release
|
|
237
|
+
|
|
238
|
+
[vscode-image]: https://img.shields.io/badge/vscode-ready-green.svg
|
|
239
|
+
[vscode-url]: https://code.visualstudio.com/
|
|
@@ -2,7 +2,7 @@ export declare class AssertOrder {
|
|
|
2
2
|
/**
|
|
3
3
|
* Gets the current expecting step.
|
|
4
4
|
*/
|
|
5
|
-
|
|
5
|
+
get currentStep(): number;
|
|
6
6
|
private state;
|
|
7
7
|
constructor(plan?: number);
|
|
8
8
|
/**
|
|
@@ -30,7 +30,7 @@ export declare class AssertOrder {
|
|
|
30
30
|
on(step: number, assert: (step: number) => void): void;
|
|
31
31
|
atLeastOnce(step: number): number;
|
|
32
32
|
any(steps: number[]): number;
|
|
33
|
-
onAny(steps: number[], ...asserts:
|
|
33
|
+
onAny(steps: number[], ...asserts: Array<(...args: any[]) => any>): void;
|
|
34
34
|
end(timeout: number): Promise<number>;
|
|
35
35
|
end(): number;
|
|
36
36
|
exactly(step: number, times: number): number;
|
|
@@ -38,3 +38,4 @@ export declare class AssertOrder {
|
|
|
38
38
|
wait(step: number, callback: () => void): void;
|
|
39
39
|
private assert;
|
|
40
40
|
}
|
|
41
|
+
//# sourceMappingURL=AssertOrder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AssertOrder.d.ts","sourceRoot":"","sources":["../../src/assert-order/AssertOrder.ts"],"names":[],"mappings":"AAMA,qBAAa,WAAW;IACtB;;OAEG;IACH,IAAI,WAAW,WAEd;IAED,OAAO,CAAC,KAAK,CAAc;gBACf,IAAI,CAAC,EAAE,MAAM;IAIzB;;;OAGG;IACH,EAAE,CAAC,IAAI,EAAE,MAAM;IAIf;;;OAGG;IACH,GAAG,CAAC,IAAI,EAAE,MAAM;IAMhB;;OAEG;IACH,IAAI,CAAC,IAAI,EAAE,MAAM;IAIjB;;OAEG;IACH,IAAI;IAIJ;;OAEG;IACH,IAAI,CAAC,IAAI,EAAE,MAAM;IAKjB,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI;IAM/C,WAAW,CAAC,IAAI,EAAE,MAAM;IAaxB,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE;IAQnB,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,GAAG,OAAO,EAAE,KAAK,CAAC,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC;IAoBjE,GAAG,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IACrC,GAAG,IAAI,MAAM;IAmBb,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IAWnC,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IACjC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,IAAI,GAAG,IAAI;IAO9C,OAAO,CAAC,MAAM;CAKf"}
|
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.AssertOrder = void 0;
|
|
4
|
+
var InvalidOrder_1 = require("./InvalidOrder");
|
|
5
|
+
var StateMachine_1 = require("./StateMachine");
|
|
6
|
+
// order.atLeast(step, count) // expected to be executed at least `count` times
|
|
7
|
+
// order.atMost(step, count) // exected to be executed at most `count` times
|
|
8
|
+
var AssertOrder = /** @class */ (function () {
|
|
9
|
+
function AssertOrder(plan) {
|
|
10
|
+
this.state = new StateMachine_1.StateMachine(plan);
|
|
11
|
+
}
|
|
12
|
+
Object.defineProperty(AssertOrder.prototype, "currentStep", {
|
|
13
|
+
/**
|
|
14
|
+
* Gets the current expecting step.
|
|
15
|
+
*/
|
|
16
|
+
get: function () {
|
|
17
|
+
return this.state.step;
|
|
18
|
+
},
|
|
19
|
+
enumerable: false,
|
|
20
|
+
configurable: true
|
|
21
|
+
});
|
|
22
|
+
/**
|
|
23
|
+
* Asserts the current step is `step`.
|
|
24
|
+
* @param step expected step.
|
|
25
|
+
*/
|
|
26
|
+
AssertOrder.prototype.is = function (step) {
|
|
27
|
+
this.assert('is', step);
|
|
28
|
+
};
|
|
29
|
+
/**
|
|
30
|
+
* Asserts the current step is not `step`.
|
|
31
|
+
* @param step not expected step.
|
|
32
|
+
*/
|
|
33
|
+
AssertOrder.prototype.not = function (step) {
|
|
34
|
+
if (this.state.isValid(step)) {
|
|
35
|
+
throw new InvalidOrder_1.InvalidOrder(this.state.get(), 'not', this.not, step);
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
/**
|
|
39
|
+
* Reset to specified step.
|
|
40
|
+
*/
|
|
41
|
+
AssertOrder.prototype.jump = function (step) {
|
|
42
|
+
this.state.jump(step);
|
|
43
|
+
};
|
|
44
|
+
/**
|
|
45
|
+
* Move to next step.
|
|
46
|
+
*/
|
|
47
|
+
AssertOrder.prototype.move = function () {
|
|
48
|
+
this.state.move();
|
|
49
|
+
};
|
|
50
|
+
/**
|
|
51
|
+
* Asserts the specified step will run once.
|
|
52
|
+
*/
|
|
53
|
+
AssertOrder.prototype.once = function (step) {
|
|
54
|
+
this.assert('once', step);
|
|
55
|
+
this.state.move();
|
|
56
|
+
};
|
|
57
|
+
AssertOrder.prototype.on = function (step, assert) {
|
|
58
|
+
this.state.on(step, function () {
|
|
59
|
+
assert(step);
|
|
60
|
+
});
|
|
61
|
+
};
|
|
62
|
+
AssertOrder.prototype.atLeastOnce = function (step) {
|
|
63
|
+
var nextStep = step + 1;
|
|
64
|
+
if (this.state.step === step) {
|
|
65
|
+
this.state.move();
|
|
66
|
+
return this.state.moveSubStep();
|
|
67
|
+
}
|
|
68
|
+
else if (this.state.step === nextStep && this.state.subStep > 0) {
|
|
69
|
+
return this.state.moveSubStep();
|
|
70
|
+
}
|
|
71
|
+
else
|
|
72
|
+
throw new InvalidOrder_1.InvalidOrder(this.state.get(), 'atLeastOnce', this.atLeastOnce, step);
|
|
73
|
+
};
|
|
74
|
+
AssertOrder.prototype.any = function (steps) {
|
|
75
|
+
var index = steps.indexOf(this.state.step);
|
|
76
|
+
if (index === -1)
|
|
77
|
+
throw new InvalidOrder_1.InvalidOrder(this.state.get(), 'any', this.any, steps);
|
|
78
|
+
this.state.move();
|
|
79
|
+
return steps[index];
|
|
80
|
+
};
|
|
81
|
+
AssertOrder.prototype.onAny = function (steps) {
|
|
82
|
+
var _this = this;
|
|
83
|
+
var asserts = [];
|
|
84
|
+
for (var _i = 1; _i < arguments.length; _i++) {
|
|
85
|
+
asserts[_i - 1] = arguments[_i];
|
|
86
|
+
}
|
|
87
|
+
steps.forEach(function (step) {
|
|
88
|
+
_this.state.on(step, function () {
|
|
89
|
+
var firstError;
|
|
90
|
+
var hasPass = false;
|
|
91
|
+
asserts.forEach(function (assert) {
|
|
92
|
+
try {
|
|
93
|
+
assert(step);
|
|
94
|
+
hasPass = true;
|
|
95
|
+
}
|
|
96
|
+
catch (err) {
|
|
97
|
+
if (!firstError)
|
|
98
|
+
firstError = err;
|
|
99
|
+
}
|
|
100
|
+
});
|
|
101
|
+
if (!hasPass)
|
|
102
|
+
throw firstError;
|
|
103
|
+
});
|
|
104
|
+
});
|
|
105
|
+
return;
|
|
106
|
+
};
|
|
107
|
+
AssertOrder.prototype.end = function (timeout) {
|
|
108
|
+
var _this = this;
|
|
109
|
+
if (timeout) {
|
|
110
|
+
return new Promise(function (r) {
|
|
111
|
+
setTimeout(r, timeout);
|
|
112
|
+
}).then(function () {
|
|
113
|
+
return _this.end();
|
|
114
|
+
});
|
|
115
|
+
}
|
|
116
|
+
if (!this.state.isMaxStepDefined()) {
|
|
117
|
+
this.state.stopAccepting();
|
|
118
|
+
return this.state.getTimeTaken();
|
|
119
|
+
}
|
|
120
|
+
if (this.state.isAccepting()) {
|
|
121
|
+
throw new InvalidOrder_1.InvalidOrder(this.state.get(), 'end', this.end);
|
|
122
|
+
}
|
|
123
|
+
};
|
|
124
|
+
AssertOrder.prototype.exactly = function (step, times) {
|
|
125
|
+
if (this.state.isNotValid(step))
|
|
126
|
+
throw new InvalidOrder_1.InvalidOrder(this.state.get(), 'exactly', this.exactly, step, times);
|
|
127
|
+
if (this.state.maxSubStep === undefined) {
|
|
128
|
+
this.state.maxSubStep = times;
|
|
129
|
+
this.state.minSubStep = times;
|
|
130
|
+
}
|
|
131
|
+
return this.state.moveSubStep();
|
|
132
|
+
};
|
|
133
|
+
AssertOrder.prototype.wait = function (step, callback) {
|
|
134
|
+
var _this = this;
|
|
135
|
+
if (callback)
|
|
136
|
+
this.on(step, callback);
|
|
137
|
+
else
|
|
138
|
+
return new Promise(function (a) { _this.on(step, a); });
|
|
139
|
+
};
|
|
140
|
+
AssertOrder.prototype.assert = function (method, step) {
|
|
141
|
+
if (this.state.isNotValid(step)) {
|
|
142
|
+
throw new InvalidOrder_1.InvalidOrder(this.state.get(), method, this[method], step);
|
|
143
|
+
}
|
|
144
|
+
};
|
|
145
|
+
return AssertOrder;
|
|
146
|
+
}());
|
|
147
|
+
exports.AssertOrder = AssertOrder;
|
|
148
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXNzZXJ0T3JkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXNzZXJ0LW9yZGVyL0Fzc2VydE9yZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLCtDQUE2QztBQUM3QywrQ0FBNkM7QUFFN0MsK0VBQStFO0FBQy9FLDRFQUE0RTtBQUU1RTtJQVNFLHFCQUFZLElBQWE7UUFDdkIsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLDJCQUFZLENBQUMsSUFBSSxDQUFDLENBQUE7SUFDckMsQ0FBQztJQVBELHNCQUFJLG9DQUFXO1FBSGY7O1dBRUc7YUFDSDtZQUNFLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUE7UUFDeEIsQ0FBQzs7O09BQUE7SUFPRDs7O09BR0c7SUFDSCx3QkFBRSxHQUFGLFVBQUcsSUFBWTtRQUNiLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFBO0lBQ3pCLENBQUM7SUFFRDs7O09BR0c7SUFDSCx5QkFBRyxHQUFILFVBQUksSUFBWTtRQUNkLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDNUIsTUFBTSxJQUFJLDJCQUFZLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUUsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQTtTQUNoRTtJQUNILENBQUM7SUFFRDs7T0FFRztJQUNILDBCQUFJLEdBQUosVUFBSyxJQUFZO1FBQ2YsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUE7SUFDdkIsQ0FBQztJQUVEOztPQUVHO0lBQ0gsMEJBQUksR0FBSjtRQUNFLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUE7SUFDbkIsQ0FBQztJQUVEOztPQUVHO0lBQ0gsMEJBQUksR0FBSixVQUFLLElBQVk7UUFDZixJQUFJ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
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import AssertionError from 'assertion-error';
|
|
2
|
+
import { State } from './interfaces';
|
|
3
|
+
export declare class InvalidOrder extends AssertionError<{
|
|
4
|
+
method: string;
|
|
5
|
+
state: State;
|
|
6
|
+
args: any[];
|
|
7
|
+
}> {
|
|
8
|
+
constructor(state: State, method: string, ssf: (...args: any[]) => any, ...args: any[]);
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=InvalidOrder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"InvalidOrder.d.ts","sourceRoot":"","sources":["../../src/assert-order/InvalidOrder.ts"],"names":[],"mappings":"AAAA,OAAO,cAAc,MAAM,iBAAiB,CAAA;AAC5C,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAA;AAEpC,qBAAa,YAAa,SAAQ,cAAc,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,KAAK,CAAC;IAAC,IAAI,EAAE,GAAG,EAAE,CAAA;CAAE,CAAC;gBACjF,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE;CAIvF"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.InvalidOrder = void 0;
|
|
4
|
+
var tslib_1 = require("tslib");
|
|
5
|
+
var assertion_error_1 = (0, tslib_1.__importDefault)(require("assertion-error"));
|
|
6
|
+
var InvalidOrder = /** @class */ (function (_super) {
|
|
7
|
+
(0, tslib_1.__extends)(InvalidOrder, _super);
|
|
8
|
+
function InvalidOrder(state, method, ssf) {
|
|
9
|
+
var args = [];
|
|
10
|
+
for (var _i = 3; _i < arguments.length; _i++) {
|
|
11
|
+
args[_i - 3] = arguments[_i];
|
|
12
|
+
}
|
|
13
|
+
var _this = this;
|
|
14
|
+
var message = method === 'end' ? getEndMessage(state) : getExpectingMessage(state, method, args);
|
|
15
|
+
_this = _super.call(this, message, { method: method, state: state, args: args }, ssf) || this;
|
|
16
|
+
return _this;
|
|
17
|
+
}
|
|
18
|
+
return InvalidOrder;
|
|
19
|
+
}(assertion_error_1.default));
|
|
20
|
+
exports.InvalidOrder = InvalidOrder;
|
|
21
|
+
function getEndMessage(state) {
|
|
22
|
+
return "Planned for ".concat(state.maxStep, " step but expecting step ").concat(state.step, " when 'end()' is called");
|
|
23
|
+
}
|
|
24
|
+
function getExpectingMessage(state, method, args) {
|
|
25
|
+
return "Expecting ".concat(getExpectingCalls(state), ", but received '").concat(method, "(").concat(getMethodArgs(args), ")'");
|
|
26
|
+
}
|
|
27
|
+
function getExpectingCalls(state) {
|
|
28
|
+
var message;
|
|
29
|
+
if (state.subStep === 0) {
|
|
30
|
+
var methods = ['is', 'once', 'any'];
|
|
31
|
+
message = methods.map(function (m) { return ['any'].indexOf(m) === -1 ?
|
|
32
|
+
"'".concat(m, "(").concat(state.step, ")'") :
|
|
33
|
+
"'".concat(m, "([").concat(state.step, "])'"); }).join(', ');
|
|
34
|
+
}
|
|
35
|
+
else {
|
|
36
|
+
var methods = ['exactly'];
|
|
37
|
+
message = methods.map(function (m) { return "'".concat(m, "(").concat(state.step, ", ").concat(state.maxSubStep, ")'"); }).join(', ');
|
|
38
|
+
}
|
|
39
|
+
return message;
|
|
40
|
+
}
|
|
41
|
+
function getMethodArgs(args) {
|
|
42
|
+
return args.map(function (a) { return Array.isArray(a) ? "[".concat(a.join(', '), "]") : a; }).join(', ');
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSW52YWxpZE9yZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2Fzc2VydC1vcmRlci9JbnZhbGlkT3JkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLGlGQUE0QztBQUc1QztJQUFrQyw2Q0FBNkQ7SUFDN0Ysc0JBQVksS0FBWSxFQUFFLE1BQWMsRUFBRSxHQUE0QjtRQUFFLGNBQWM7YUFBZCxVQUFjLEVBQWQscUJBQWMsRUFBZCxJQUFjO1lBQWQsNkJBQWM7O1FBQXRGLGlCQUdDO1FBRkMsSUFBTSxPQUFPLEdBQUcsTUFBTSxLQUFLLEtBQUssQ0FBQyxDQUFDLENBQUMsYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxtQkFBbUIsQ0FBQyxLQUFLLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFBO1FBQ2xHLFFBQUEsa0JBQU0sT0FBTyxFQUFFLEVBQUUsTUFBTSxRQUFBLEVBQUUsS0FBSyxPQUFBLEVBQUUsSUFBSSxNQUFBLEVBQUUsRUFBRSxHQUFHLENBQUMsU0FBQTs7SUFDOUMsQ0FBQztJQUNILG1CQUFDO0FBQUQsQ0FBQyxBQUxELENBQWtDLHlCQUFjLEdBSy9DO0FBTFksb0NBQVk7QUFPekIsU0FBUyxhQUFhLENBQUMsS0FBWTtJQUNqQyxPQUFPLHNCQUFlLEtBQUssQ0FBQyxPQUFPLHNDQUE0QixLQUFLLENBQUMsSUFBSSw0QkFBeUIsQ0FBQTtBQUNwRyxDQUFDO0FBRUQsU0FBUyxtQkFBbUIsQ0FBQyxLQUFZLEVBQUUsTUFBYyxFQUFFLElBQVc7SUFDcEUsT0FBTyxvQkFBYSxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsNkJBQW1CLE1BQU0sY0FBSSxhQUFhLENBQUMsSUFBSSxDQUFDLE9BQUksQ0FBQTtBQUNsRyxDQUFDO0FBRUQsU0FBUyxpQkFBaUIsQ0FBQyxLQUFZO0lBQ3JDLElBQUksT0FBZSxDQUFBO0lBQ25CLElBQUksS0FBSyxDQUFDLE9BQU8sS0FBSyxDQUFDLEVBQUU7UUFDdkIsSUFBTSxPQUFPLEdBQUcsQ0FBQyxJQUFJLEVBQUUsTUFBTSxFQUFFLEtBQUssQ0FBQyxDQUFBO1FBQ3JDLE9BQU8sR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLFVBQUEsQ0FBQyxJQUFJLE9BQUEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNwRCxXQUFJLENBQUMsY0FBSSxLQUFLLENBQUMsSUFBSSxPQUFJLENBQUMsQ0FBQztZQUN6QixXQUFJLENBQUMsZUFBSyxLQUFLLENBQUMsSUFBSSxRQUFLLEVBRkEsQ0FFQSxDQUMxQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQTtLQUNiO1NBQ0k7UUFDSCxJQUFNLE9BQU8sR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFBO1FBQzNCLE9BQU8sR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLFVBQUEsQ0FBQyxJQUFJLE9BQUEsV0FBSSxDQUFDLGNBQUksS0FBSyxDQUFDLElBQUksZUFBSyxLQUFLLENBQUMsVUFBVSxPQUFJLEVBQTVDLENBQTRDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUE7S0FDcEY7SUFDRCxPQUFPLE9BQU8sQ0FBQTtBQUNoQixDQUFDO0FBRUQsU0FBUyxhQUFhLENBQUMsSUFBVztJQUNoQyxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsVUFBQSxDQUFDLElBQUksT0FBQSxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUExQyxDQUEwQyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFBO0FBQzdFLENBQUMifQ==
|
|
@@ -1,23 +1,22 @@
|
|
|
1
1
|
import { State } from './interfaces';
|
|
2
2
|
export declare class StateMachine {
|
|
3
|
-
listeners:
|
|
3
|
+
listeners: Record<number, Array<() => void>>;
|
|
4
4
|
step: number;
|
|
5
5
|
maxStep?: number;
|
|
6
6
|
subStep: number;
|
|
7
7
|
minSubStep?: number;
|
|
8
8
|
maxSubStep?: number;
|
|
9
|
-
private startTick;
|
|
10
9
|
constructor(maxStep?: number);
|
|
11
10
|
jump(step: number): number;
|
|
12
11
|
move(): number;
|
|
13
12
|
moveSubStep(): number;
|
|
14
13
|
get(): State;
|
|
15
|
-
on(step: number, listener:
|
|
14
|
+
on(step: number, listener: () => void): void;
|
|
16
15
|
isNotValid(step: number): boolean;
|
|
17
16
|
isValid(step: number): boolean;
|
|
18
17
|
isMaxStepDefined(): boolean;
|
|
19
18
|
stopAccepting(): void;
|
|
20
19
|
isAccepting(): boolean;
|
|
21
|
-
getTimeTaken():
|
|
22
|
-
private getStartTick;
|
|
20
|
+
getTimeTaken(): number;
|
|
23
21
|
}
|
|
22
|
+
//# sourceMappingURL=StateMachine.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StateMachine.d.ts","sourceRoot":"","sources":["../../src/assert-order/StateMachine.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAA;AA6CpC,qBAAa,YAAY;IACvB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,IAAI,CAAC,CAAC,CAAK;IACjD,IAAI,SAAI;IACR,OAAO,CAAC,EAAE,MAAM,CAAA;IAEhB,OAAO,SAAI;IACX,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,UAAU,CAAC,EAAE,MAAM,CAAA;gBACP,OAAO,CAAC,EAAE,MAAM;IAI5B,IAAI,CAAC,IAAI,EAAE,MAAM;IAKjB,IAAI;IASJ,WAAW;IAMX,GAAG,IAAI,KAAK;IAUZ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,IAAI;IAGrC,UAAU,CAAC,IAAI,EAAE,MAAM;IAGvB,OAAO,CAAC,IAAI,EAAE,MAAM;IAGpB,gBAAgB;IAGhB,aAAa;IAGb,WAAW;IAIX,YAAY;CAGb"}
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.StateMachine = void 0;
|
|
4
|
+
var tslib_1 = require("tslib");
|
|
5
|
+
var is_node_1 = (0, tslib_1.__importDefault)(require("is-node"));
|
|
6
|
+
// istanbul ignore next
|
|
7
|
+
function nodeVersionIsOrAbove(major, minor, patch) {
|
|
8
|
+
if (minor === void 0) { minor = 0; }
|
|
9
|
+
if (patch === void 0) { patch = 0; }
|
|
10
|
+
// without this, systemJS will complain `process is not defined`
|
|
11
|
+
if (!global.process)
|
|
12
|
+
return false;
|
|
13
|
+
var versionString = process.version.startsWith('v') ? process.version.slice(1) : process.version;
|
|
14
|
+
var _a = versionString.split('.').map(function (s) { return parseInt(s, 10); }), actualMajor = _a[0], actualMinor = _a[1], actualPatch = _a[2];
|
|
15
|
+
var checking = major * 1000 * 1000 + minor * 1000 + patch;
|
|
16
|
+
var actual = actualMajor * 1000 * 1000 + actualMinor * 1000 + actualPatch;
|
|
17
|
+
return actual >= checking;
|
|
18
|
+
}
|
|
19
|
+
// istanbul ignore next
|
|
20
|
+
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
|
21
|
+
var performance = is_node_1.default && nodeVersionIsOrAbove(8, 5) ? require('perf_hooks').performance : undefined;
|
|
22
|
+
var timeTracker;
|
|
23
|
+
// istanbul ignore else
|
|
24
|
+
if (process && typeof process.hrtime === 'function') {
|
|
25
|
+
var tick_1;
|
|
26
|
+
timeTracker = {
|
|
27
|
+
start: function () { tick_1 = process.hrtime(); },
|
|
28
|
+
taken: function () {
|
|
29
|
+
var _a = process.hrtime(tick_1), second = _a[0], nanoSecond = _a[1];
|
|
30
|
+
return second * 1000 + nanoSecond / 1e6;
|
|
31
|
+
}
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
else if (performance && typeof performance.now === 'function') {
|
|
35
|
+
var tick_2;
|
|
36
|
+
timeTracker = {
|
|
37
|
+
start: function () { tick_2 = performance.now(); },
|
|
38
|
+
taken: function () { return performance.now() - tick_2; }
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
else {
|
|
42
|
+
var tick_3;
|
|
43
|
+
timeTracker = {
|
|
44
|
+
start: function () { tick_3 = new Date().valueOf(); },
|
|
45
|
+
taken: function () { return new Date().valueOf() - tick_3; }
|
|
46
|
+
};
|
|
47
|
+
}
|
|
48
|
+
var StateMachine = /** @class */ (function () {
|
|
49
|
+
function StateMachine(maxStep) {
|
|
50
|
+
this.listeners = {};
|
|
51
|
+
this.step = 1;
|
|
52
|
+
this.subStep = 0;
|
|
53
|
+
this.maxStep = maxStep;
|
|
54
|
+
timeTracker.start();
|
|
55
|
+
}
|
|
56
|
+
StateMachine.prototype.jump = function (step) {
|
|
57
|
+
this.step = step;
|
|
58
|
+
this.subStep = 0;
|
|
59
|
+
return this.step;
|
|
60
|
+
};
|
|
61
|
+
StateMachine.prototype.move = function () {
|
|
62
|
+
var listeners = this.listeners[this.step];
|
|
63
|
+
this.step = this.step + 1;
|
|
64
|
+
this.subStep = 0;
|
|
65
|
+
if (listeners) {
|
|
66
|
+
listeners.forEach(function (l) { return l(); });
|
|
67
|
+
}
|
|
68
|
+
return this.step;
|
|
69
|
+
};
|
|
70
|
+
StateMachine.prototype.moveSubStep = function () {
|
|
71
|
+
var subStep = ++this.subStep;
|
|
72
|
+
if (this.maxSubStep === this.subStep)
|
|
73
|
+
this.move();
|
|
74
|
+
return subStep;
|
|
75
|
+
};
|
|
76
|
+
StateMachine.prototype.get = function () {
|
|
77
|
+
var _a = this, step = _a.step, subStep = _a.subStep, maxStep = _a.maxStep, minSubStep = _a.minSubStep, maxSubStep = _a.maxSubStep;
|
|
78
|
+
return {
|
|
79
|
+
step: step,
|
|
80
|
+
maxStep: maxStep,
|
|
81
|
+
subStep: subStep,
|
|
82
|
+
minSubStep: minSubStep,
|
|
83
|
+
maxSubStep: maxSubStep
|
|
84
|
+
};
|
|
85
|
+
};
|
|
86
|
+
StateMachine.prototype.on = function (step, listener) {
|
|
87
|
+
this.listeners[step] = [listener];
|
|
88
|
+
};
|
|
89
|
+
StateMachine.prototype.isNotValid = function (step) {
|
|
90
|
+
return step !== this.step || (this.maxStep !== undefined && this.maxStep < step);
|
|
91
|
+
};
|
|
92
|
+
StateMachine.prototype.isValid = function (step) {
|
|
93
|
+
return step === this.step;
|
|
94
|
+
};
|
|
95
|
+
StateMachine.prototype.isMaxStepDefined = function () {
|
|
96
|
+
return this.maxStep !== undefined;
|
|
97
|
+
};
|
|
98
|
+
StateMachine.prototype.stopAccepting = function () {
|
|
99
|
+
this.maxStep = this.step - 1;
|
|
100
|
+
};
|
|
101
|
+
StateMachine.prototype.isAccepting = function () {
|
|
102
|
+
// istanbul ignore next
|
|
103
|
+
return this.maxStep ? this.maxStep >= this.step : true;
|
|
104
|
+
};
|
|
105
|
+
StateMachine.prototype.getTimeTaken = function () {
|
|
106
|
+
return timeTracker.taken();
|
|
107
|
+
};
|
|
108
|
+
return StateMachine;
|
|
109
|
+
}());
|
|
110
|
+
exports.StateMachine = StateMachine;
|
|
111
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU3RhdGVNYWNoaW5lLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2Fzc2VydC1vcmRlci9TdGF0ZU1hY2hpbmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLGlFQUE0QjtBQUc1Qix1QkFBdUI7QUFDdkIsU0FBUyxvQkFBb0IsQ0FBQyxLQUFhLEVBQUUsS0FBUyxFQUFFLEtBQVM7SUFBcEIsc0JBQUEsRUFBQSxTQUFTO0lBQUUsc0JBQUEsRUFBQSxTQUFTO0lBQy9ELGdFQUFnRTtJQUNoRSxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU87UUFDakIsT0FBTyxLQUFLLENBQUE7SUFDZCxJQUFNLGFBQWEsR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUE7SUFDNUYsSUFBQSxLQUEwQyxhQUFhLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxVQUFBLENBQUMsSUFBSSxPQUFBLFFBQVEsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLEVBQWYsQ0FBZSxDQUFDLEVBQTNGLFdBQVcsUUFBQSxFQUFFLFdBQVcsUUFBQSxFQUFFLFdBQVcsUUFBc0QsQ0FBQTtJQUNsRyxJQUFNLFFBQVEsR0FBRyxLQUFLLEdBQUcsSUFBSSxHQUFHLElBQUksR0FBRyxLQUFLLEdBQUcsSUFBSSxHQUFHLEtBQUssQ0FBQTtJQUMzRCxJQUFNLE1BQU0sR0FBRyxXQUFXLEdBQUcsSUFBSSxHQUFHLElBQUksR0FBRyxXQUFXLEdBQUcsSUFBSSxHQUFHLFdBQVcsQ0FBQTtJQUMzRSxPQUFPLE1BQU0sSUFBSSxRQUFRLENBQUE7QUFDM0IsQ0FBQztBQUVELHVCQUF1QjtBQUN2Qiw4REFBOEQ7QUFDOUQsSUFBTSxXQUFXLEdBQUcsaUJBQU0s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
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/assert-order/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA;AAC7B,cAAc,cAAc,CAAA"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
var tslib_1 = require("tslib");
|
|
4
|
+
(0, tslib_1.__exportStar)(require("./AssertOrder"), exports);
|
|
5
|
+
(0, tslib_1.__exportStar)(require("./interfaces"), exports);
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXNzZXJ0LW9yZGVyL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDZEQUE2QjtBQUM3Qiw0REFBNEIifQ==
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../src/assert-order/interfaces.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,KAAK;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJmYWNlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hc3NlcnQtb3JkZXIvaW50ZXJmYWNlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIn0=
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"assertron.d.ts","sourceRoot":"","sources":["../../src/assertron/assertron.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAC/B,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AAEjC,eAAO,MAAM,SAAS;iBACP,GAAG;;;;;;;;gBAcJ,GAAG;;CAIhB,CAAA"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.assertron = void 0;
|
|
4
|
+
var tslib_1 = require("tslib");
|
|
5
|
+
var assertion_error_1 = (0, tslib_1.__importDefault)(require("assertion-error"));
|
|
6
|
+
var falsy_1 = require("./falsy");
|
|
7
|
+
var pathEqual_1 = require("./pathEqual");
|
|
8
|
+
var rejects_1 = require("./rejects");
|
|
9
|
+
var repeat_1 = require("./repeat");
|
|
10
|
+
var resolves_1 = require("./resolves");
|
|
11
|
+
var satisfies_1 = require("./satisfies");
|
|
12
|
+
var throws_1 = require("./throws");
|
|
13
|
+
var truthy_1 = require("./truthy");
|
|
14
|
+
exports.assertron = {
|
|
15
|
+
false: function (value) {
|
|
16
|
+
if (value !== false)
|
|
17
|
+
throw new assertion_error_1.default("Expected value to equal false, but received ".concat(value), { value: value }, exports.assertron.false);
|
|
18
|
+
},
|
|
19
|
+
falsy: falsy_1.falsy,
|
|
20
|
+
pathEqual: pathEqual_1.pathEqual,
|
|
21
|
+
rejects: rejects_1.rejects,
|
|
22
|
+
repeat: repeat_1.repeat,
|
|
23
|
+
resolves: resolves_1.resolves,
|
|
24
|
+
satisfies: satisfies_1.satisfies,
|
|
25
|
+
throws: throws_1.throws,
|
|
26
|
+
true: function (value) {
|
|
27
|
+
if (value !== true)
|
|
28
|
+
throw new assertion_error_1.default("Expected value to equal true, but received ".concat(value), { value: value }, exports.assertron.true);
|
|
29
|
+
},
|
|
30
|
+
truthy: truthy_1.truthy
|
|
31
|
+
};
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXJ0cm9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2Fzc2VydHJvbi9hc3NlcnRyb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLGlGQUE0QztBQUM1QyxpQ0FBK0I7QUFDL0IseUNBQXVDO0FBQ3ZDLHFDQUFtQztBQUNuQyxtQ0FBaUM7QUFDakMsdUNBQXFDO0FBQ3JDLHlDQUF1QztBQUN2QyxtQ0FBaUM7QUFDakMsbUNBQWlDO0FBRXBCLFFBQUEsU0FBUyxHQUFHO0lBQ3ZCLEtBQUssRUFBTCxVQUFNLEtBQVU7UUFDZCxJQUFJLEtBQUssS0FBSyxLQUFLO1lBQ2pCLE1BQU0sSUFBSSx5QkFBYyxDQUN0QixzREFBK0MsS0FBSyxDQUFFLEVBQ3RELEVBQUUsS0FBSyxPQUFBLEVBQUUsRUFDVCxpQkFBUyxDQUFDLEtBQUssQ0FBQyxDQUFBO0lBQ3RCLENBQUM7SUFDRCxLQUFLLGVBQUE7SUFDTCxTQUFTLHVCQUFBO0lBQ1QsT0FBTyxtQkFBQTtJQUNQLE1BQU0saUJBQUE7SUFDTixRQUFRLHFCQUFBO0lBQ1IsU0FBUyx1QkFBQTtJQUNULE1BQU0saUJBQUE7SUFDTixJQUFJLEVBQUosVUFBSyxLQUFVO1FBQ2IsSUFBSSxLQUFLLEtBQUssSUFBSTtZQUFFLE1BQU0sSUFBSSx5QkFBYyxDQUFDLHFEQUE4QyxLQUFLLENBQUUsRUFBRSxFQUFFLEtBQUssT0FBQSxFQUFFLEVBQUUsaUJBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUNoSSxDQUFDO0lBQ0QsTUFBTSxpQkFBQTtDQUNQLENBQUEifQ==
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"falsy.d.ts","sourceRoot":"","sources":["../../src/assertron/falsy.ts"],"names":[],"mappings":"AAEA,wBAAgB,KAAK,CAAC,KAAK,EAAE,GAAG,QAO/B"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.falsy = void 0;
|
|
4
|
+
var tslib_1 = require("tslib");
|
|
5
|
+
var assertion_error_1 = (0, tslib_1.__importDefault)(require("assertion-error"));
|
|
6
|
+
function falsy(value) {
|
|
7
|
+
if (value)
|
|
8
|
+
throw new assertion_error_1.default("Expected value to be falsy, but received ".concat(value), { value: value }, falsy);
|
|
9
|
+
}
|
|
10
|
+
exports.falsy = falsy;
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFsc3kuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXNzZXJ0cm9uL2ZhbHN5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxpRkFBNEM7QUFFNUMsU0FBZ0IsS0FBSyxDQUFDLEtBQVU7SUFDOUIsSUFBSSxLQUFLO1FBQ1AsTUFBTSxJQUFJLHlCQUFjLENBQ3RCLG1EQUE0QyxLQUFLLENBQUUsRUFDbkQsRUFBRSxLQUFLLE9BQUEsRUFBRSxFQUNULEtBQUssQ0FDTixDQUFBO0FBQ0wsQ0FBQztBQVBELHNCQU9DIn0=
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/assertron/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
var tslib_1 = require("tslib");
|
|
4
|
+
(0, tslib_1.__exportStar)(require("./assertron"), exports);
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXNzZXJ0cm9uL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLDJEQUEyQiJ9
|