@fncts/test 0.0.20 → 0.0.22
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/_cjs/api.cjs +39 -76
- package/_cjs/api.cjs.map +1 -1
- package/_cjs/control/AbstractRunnableSpec.cjs +1 -12
- package/_cjs/control/AbstractRunnableSpec.cjs.map +1 -1
- package/_cjs/control/Annotations/api.cjs +0 -12
- package/_cjs/control/Annotations/api.cjs.map +1 -1
- package/_cjs/control/Annotations/definition.cjs +0 -6
- package/_cjs/control/Annotations/definition.cjs.map +1 -1
- package/_cjs/control/Annotations/live.cjs +6 -29
- package/_cjs/control/Annotations/live.cjs.map +1 -1
- package/_cjs/control/Annotations.cjs +0 -6
- package/_cjs/control/Annotations.cjs.map +1 -1
- package/_cjs/control/Assertion/api.cjs +50 -100
- package/_cjs/control/Assertion/api.cjs.map +1 -1
- package/_cjs/control/Assertion/definition.cjs +0 -8
- package/_cjs/control/Assertion/definition.cjs.map +1 -1
- package/_cjs/control/Assertion.cjs +0 -4
- package/_cjs/control/Assertion.cjs.map +1 -1
- package/_cjs/control/AssertionIO/api.cjs +20 -26
- package/_cjs/control/AssertionIO/api.cjs.map +1 -1
- package/_cjs/control/AssertionIO/definition.cjs +0 -8
- package/_cjs/control/AssertionIO/definition.cjs.map +1 -1
- package/_cjs/control/AssertionIO.cjs +0 -4
- package/_cjs/control/AssertionIO.cjs.map +1 -1
- package/_cjs/control/DefaultRunnableSpec.cjs +0 -12
- package/_cjs/control/DefaultRunnableSpec.cjs.map +1 -1
- package/_cjs/control/DefaultTestReporter/definition.cjs.map +1 -1
- package/_cjs/control/DefaultTestReporter/render.cjs +54 -123
- package/_cjs/control/DefaultTestReporter/render.cjs.map +1 -1
- package/_cjs/control/DefaultTestReporter.cjs +0 -4
- package/_cjs/control/DefaultTestReporter.cjs.map +1 -1
- package/_cjs/control/FreeBooleanAlgebraIO/api.cjs +20 -36
- package/_cjs/control/FreeBooleanAlgebraIO/api.cjs.map +1 -1
- package/_cjs/control/FreeBooleanAlgebraIO/definition.cjs.map +1 -1
- package/_cjs/control/FreeBooleanAlgebraIO.cjs +0 -4
- package/_cjs/control/FreeBooleanAlgebraIO.cjs.map +1 -1
- package/_cjs/control/Gen/api.cjs +533 -200
- package/_cjs/control/Gen/api.cjs.map +1 -1
- package/_cjs/control/Gen/definition.cjs +0 -3
- package/_cjs/control/Gen/definition.cjs.map +1 -1
- package/_cjs/control/Gen.cjs +0 -97
- package/_cjs/control/Gen.cjs.map +1 -1
- package/_cjs/control/Live/definition.cjs +5 -23
- package/_cjs/control/Live/definition.cjs.map +1 -1
- package/_cjs/control/Live.cjs +0 -2
- package/_cjs/control/Live.cjs.map +1 -1
- package/_cjs/control/RunnableSpec.cjs +8 -28
- package/_cjs/control/RunnableSpec.cjs.map +1 -1
- package/_cjs/control/Sample/api.cjs +66 -107
- package/_cjs/control/Sample/api.cjs.map +1 -1
- package/_cjs/control/Sample/definition.cjs +0 -3
- package/_cjs/control/Sample/definition.cjs.map +1 -1
- package/_cjs/control/Sample.cjs +0 -4
- package/_cjs/control/Sample.cjs.map +1 -1
- package/_cjs/control/Sized/api.cjs +0 -8
- package/_cjs/control/Sized/api.cjs.map +1 -1
- package/_cjs/control/Sized/definition.cjs +0 -6
- package/_cjs/control/Sized/definition.cjs.map +1 -1
- package/_cjs/control/Sized/live.cjs +3 -15
- package/_cjs/control/Sized/live.cjs.map +1 -1
- package/_cjs/control/Sized.cjs +0 -6
- package/_cjs/control/Sized.cjs.map +1 -1
- package/_cjs/control/Spec/api.cjs +322 -367
- package/_cjs/control/Spec/api.cjs.map +1 -1
- package/_cjs/control/Spec/definition.cjs +6 -45
- package/_cjs/control/Spec/definition.cjs.map +1 -1
- package/_cjs/control/Spec.cjs +0 -4
- package/_cjs/control/Spec.cjs.map +1 -1
- package/_cjs/control/SummaryBuilder.cjs +10 -31
- package/_cjs/control/SummaryBuilder.cjs.map +1 -1
- package/_cjs/control/Test.cjs +1 -11
- package/_cjs/control/Test.cjs.map +1 -1
- package/_cjs/control/TestAnnotationRenderer/api.cjs +20 -45
- package/_cjs/control/TestAnnotationRenderer/api.cjs.map +1 -1
- package/_cjs/control/TestAnnotationRenderer/definition.cjs +4 -20
- package/_cjs/control/TestAnnotationRenderer/definition.cjs.map +1 -1
- package/_cjs/control/TestAnnotationRenderer.cjs +0 -4
- package/_cjs/control/TestAnnotationRenderer.cjs.map +1 -1
- package/_cjs/control/TestAspect/api.cjs +14 -55
- package/_cjs/control/TestAspect/api.cjs.map +1 -1
- package/_cjs/control/TestAspect.cjs +0 -4
- package/_cjs/control/TestAspect.cjs.map +1 -1
- package/_cjs/control/TestClock/api.cjs +1 -22
- package/_cjs/control/TestClock/api.cjs.map +1 -1
- package/_cjs/control/TestClock/definition.cjs +50 -110
- package/_cjs/control/TestClock/definition.cjs.map +1 -1
- package/_cjs/control/TestClock.cjs +0 -4
- package/_cjs/control/TestClock.cjs.map +1 -1
- package/_cjs/control/TestConsole/api.cjs +3 -21
- package/_cjs/control/TestConsole/api.cjs.map +1 -1
- package/_cjs/control/TestConsole/definition.cjs +23 -48
- package/_cjs/control/TestConsole/definition.cjs.map +1 -1
- package/_cjs/control/TestConsole.cjs +0 -4
- package/_cjs/control/TestConsole.cjs.map +1 -1
- package/_cjs/control/TestEnvironment.cjs +3 -15
- package/_cjs/control/TestEnvironment.cjs.map +1 -1
- package/_cjs/control/TestExecutor.cjs +3 -17
- package/_cjs/control/TestExecutor.cjs.map +1 -1
- package/_cjs/control/TestLogger.cjs +2 -17
- package/_cjs/control/TestLogger.cjs.map +1 -1
- package/_cjs/control/TestRandom/api.cjs +9 -39
- package/_cjs/control/TestRandom/api.cjs.map +1 -1
- package/_cjs/control/TestRandom/definition.cjs +61 -145
- package/_cjs/control/TestRandom/definition.cjs.map +1 -1
- package/_cjs/control/TestRandom.cjs +0 -4
- package/_cjs/control/TestRandom.cjs.map +1 -1
- package/_cjs/control/TestRenderer/ConsoleRenderer.cjs +11 -36
- package/_cjs/control/TestRenderer/ConsoleRenderer.cjs.map +1 -1
- package/_cjs/control/TestRunner.cjs +2 -19
- package/_cjs/control/TestRunner.cjs.map +1 -1
- package/_cjs/data/AssertionData.cjs +0 -14
- package/_cjs/data/AssertionData.cjs.map +1 -1
- package/_cjs/data/AssertionResult.cjs +0 -8
- package/_cjs/data/AssertionResult.cjs.map +1 -1
- package/_cjs/data/AssertionValue/api.cjs +23 -30
- package/_cjs/data/AssertionValue/api.cjs.map +1 -1
- package/_cjs/data/AssertionValue/definition.cjs +0 -8
- package/_cjs/data/AssertionValue/definition.cjs.map +1 -1
- package/_cjs/data/AssertionValue.cjs +0 -4
- package/_cjs/data/AssertionValue.cjs.map +1 -1
- package/_cjs/data/ExecutedSpec/api.cjs +61 -75
- package/_cjs/data/ExecutedSpec/api.cjs.map +1 -1
- package/_cjs/data/ExecutedSpec/definition.cjs +3 -21
- package/_cjs/data/ExecutedSpec/definition.cjs.map +1 -1
- package/_cjs/data/ExecutedSpec.cjs +0 -4
- package/_cjs/data/ExecutedSpec.cjs.map +1 -1
- package/_cjs/data/ExecutionResult.cjs +42 -67
- package/_cjs/data/ExecutionResult.cjs.map +1 -1
- package/_cjs/data/FailureDetails.cjs +0 -3
- package/_cjs/data/FailureDetails.cjs.map +1 -1
- package/_cjs/data/FreeBooleanAlgebra/api.cjs +82 -115
- package/_cjs/data/FreeBooleanAlgebra/api.cjs.map +1 -1
- package/_cjs/data/FreeBooleanAlgebra/definition.cjs +4 -24
- package/_cjs/data/FreeBooleanAlgebra/definition.cjs.map +1 -1
- package/_cjs/data/FreeBooleanAlgebra.cjs +0 -4
- package/_cjs/data/FreeBooleanAlgebra.cjs.map +1 -1
- package/_cjs/data/GenFailureDetails.cjs +0 -3
- package/_cjs/data/GenFailureDetails.cjs.map +1 -1
- package/_cjs/data/LogLine/Fragment.cjs +2 -24
- package/_cjs/data/LogLine/Fragment.cjs.map +1 -1
- package/_cjs/data/LogLine/Line.cjs +11 -41
- package/_cjs/data/LogLine/Line.cjs.map +1 -1
- package/_cjs/data/LogLine/Message.cjs +32 -58
- package/_cjs/data/LogLine/Message.cjs.map +1 -1
- package/_cjs/data/LogLine/Style.cjs +10 -44
- package/_cjs/data/LogLine/Style.cjs.map +1 -1
- package/_cjs/data/LogLine/api.cjs +0 -15
- package/_cjs/data/LogLine/api.cjs.map +1 -1
- package/_cjs/data/LogLine.cjs +0 -4
- package/_cjs/data/LogLine.cjs.map +1 -1
- package/_cjs/data/Render/api.cjs +0 -4
- package/_cjs/data/Render/api.cjs.map +1 -1
- package/_cjs/data/Render/definition.cjs +3 -17
- package/_cjs/data/Render/definition.cjs.map +1 -1
- package/_cjs/data/Render.cjs +0 -4
- package/_cjs/data/Render.cjs.map +1 -1
- package/_cjs/data/RenderParam/api.cjs +3 -15
- package/_cjs/data/RenderParam/api.cjs.map +1 -1
- package/_cjs/data/RenderParam/definition.cjs +2 -12
- package/_cjs/data/RenderParam/definition.cjs.map +1 -1
- package/_cjs/data/RenderParam.cjs +0 -4
- package/_cjs/data/RenderParam.cjs.map +1 -1
- package/_cjs/data/Summary.cjs +0 -3
- package/_cjs/data/Summary.cjs.map +1 -1
- package/_cjs/data/TestAnnotation/api.cjs +2 -17
- package/_cjs/data/TestAnnotation/api.cjs.map +1 -1
- package/_cjs/data/TestAnnotation/definition.cjs +4 -19
- package/_cjs/data/TestAnnotation/definition.cjs.map +1 -1
- package/_cjs/data/TestAnnotation.cjs +0 -4
- package/_cjs/data/TestAnnotation.cjs.map +1 -1
- package/_cjs/data/TestAnnotationMap.cjs +4 -19
- package/_cjs/data/TestAnnotationMap.cjs.map +1 -1
- package/_cjs/data/TestArgs/definition.cjs +0 -3
- package/_cjs/data/TestArgs/definition.cjs.map +1 -1
- package/_cjs/data/TestArgs.cjs +0 -2
- package/_cjs/data/TestArgs.cjs.map +1 -1
- package/_cjs/data/TestConfig.cjs +0 -17
- package/_cjs/data/TestConfig.cjs.map +1 -1
- package/_cjs/data/TestFailure.cjs +2 -23
- package/_cjs/data/TestFailure.cjs.map +1 -1
- package/_cjs/data/TestSuccess.cjs +2 -16
- package/_cjs/data/TestSuccess.cjs.map +1 -1
- package/_cjs/data/TestTimeoutException.cjs +0 -3
- package/_cjs/data/TestTimeoutException.cjs.map +1 -1
- package/_cjs/demo.cjs +5 -15
- package/_cjs/demo.cjs.map +1 -1
- package/_cjs/util/math.cjs +20 -148
- package/_cjs/util/math.cjs.map +1 -1
- package/_mjs/api.mjs +37 -40
- package/_mjs/api.mjs.map +1 -1
- package/_mjs/control/AbstractRunnableSpec.mjs +1 -7
- package/_mjs/control/AbstractRunnableSpec.mjs.map +1 -1
- package/_mjs/control/Annotations/api.mjs +0 -4
- package/_mjs/control/Annotations/api.mjs.map +1 -1
- package/_mjs/control/Annotations/definition.mjs +0 -2
- package/_mjs/control/Annotations/definition.mjs.map +1 -1
- package/_mjs/control/Annotations/live.mjs +6 -11
- package/_mjs/control/Annotations/live.mjs.map +1 -1
- package/_mjs/control/Annotations.mjs.map +1 -1
- package/_mjs/control/Assertion/api.mjs +43 -46
- package/_mjs/control/Assertion/api.mjs.map +1 -1
- package/_mjs/control/Assertion/definition.mjs +0 -2
- package/_mjs/control/Assertion/definition.mjs.map +1 -1
- package/_mjs/control/Assertion.mjs.map +1 -1
- package/_mjs/control/AssertionIO/api.mjs +17 -14
- package/_mjs/control/AssertionIO/api.mjs.map +1 -1
- package/_mjs/control/AssertionIO/definition.mjs +0 -3
- package/_mjs/control/AssertionIO/definition.mjs.map +1 -1
- package/_mjs/control/AssertionIO.mjs.map +1 -1
- package/_mjs/control/DefaultRunnableSpec.mjs +0 -1
- package/_mjs/control/DefaultRunnableSpec.mjs.map +1 -1
- package/_mjs/control/DefaultTestReporter/definition.mjs.map +1 -1
- package/_mjs/control/DefaultTestReporter/render.mjs +54 -87
- package/_mjs/control/DefaultTestReporter/render.mjs.map +1 -1
- package/_mjs/control/DefaultTestReporter.mjs.map +1 -1
- package/_mjs/control/FreeBooleanAlgebraIO/api.mjs +18 -22
- package/_mjs/control/FreeBooleanAlgebraIO/api.mjs.map +1 -1
- package/_mjs/control/FreeBooleanAlgebraIO/definition.mjs.map +1 -1
- package/_mjs/control/FreeBooleanAlgebraIO.mjs.map +1 -1
- package/_mjs/control/Gen/api.mjs +462 -138
- package/_mjs/control/Gen/api.mjs.map +1 -1
- package/_mjs/control/Gen/definition.mjs +0 -1
- package/_mjs/control/Gen/definition.mjs.map +1 -1
- package/_mjs/control/Gen.mjs +1 -10
- package/_mjs/control/Gen.mjs.map +1 -1
- package/_mjs/control/Live/definition.mjs +5 -10
- package/_mjs/control/Live/definition.mjs.map +1 -1
- package/_mjs/control/Live.mjs.map +1 -1
- package/_mjs/control/RunnableSpec.mjs +8 -11
- package/_mjs/control/RunnableSpec.mjs.map +1 -1
- package/_mjs/control/Sample/api.mjs +57 -73
- package/_mjs/control/Sample/api.mjs.map +1 -1
- package/_mjs/control/Sample/definition.mjs +0 -1
- package/_mjs/control/Sample/definition.mjs.map +1 -1
- package/_mjs/control/Sample.mjs.map +1 -1
- package/_mjs/control/Sized/api.mjs +0 -2
- package/_mjs/control/Sized/api.mjs.map +1 -1
- package/_mjs/control/Sized/definition.mjs +0 -2
- package/_mjs/control/Sized/definition.mjs.map +1 -1
- package/_mjs/control/Sized/live.mjs +3 -6
- package/_mjs/control/Sized/live.mjs.map +1 -1
- package/_mjs/control/Sized.mjs.map +1 -1
- package/_mjs/control/Spec/api.mjs +300 -309
- package/_mjs/control/Spec/api.mjs.map +1 -1
- package/_mjs/control/Spec/definition.mjs +6 -31
- package/_mjs/control/Spec/definition.mjs.map +1 -1
- package/_mjs/control/Spec.mjs.map +1 -1
- package/_mjs/control/SummaryBuilder.mjs +10 -15
- package/_mjs/control/SummaryBuilder.mjs.map +1 -1
- package/_mjs/control/Test.mjs +1 -2
- package/_mjs/control/Test.mjs.map +1 -1
- package/_mjs/control/TestAnnotationRenderer/api.mjs +20 -34
- package/_mjs/control/TestAnnotationRenderer/api.mjs.map +1 -1
- package/_mjs/control/TestAnnotationRenderer/definition.mjs +4 -10
- package/_mjs/control/TestAnnotationRenderer/definition.mjs.map +1 -1
- package/_mjs/control/TestAnnotationRenderer.mjs.map +1 -1
- package/_mjs/control/TestAspect/api.mjs +14 -18
- package/_mjs/control/TestAspect/api.mjs.map +1 -1
- package/_mjs/control/TestAspect.mjs.map +1 -1
- package/_mjs/control/TestClock/api.mjs +1 -5
- package/_mjs/control/TestClock/api.mjs.map +1 -1
- package/_mjs/control/TestClock/definition.mjs +50 -72
- package/_mjs/control/TestClock/definition.mjs.map +1 -1
- package/_mjs/control/TestClock.mjs.map +1 -1
- package/_mjs/control/TestConsole/api.mjs +3 -6
- package/_mjs/control/TestConsole/api.mjs.map +1 -1
- package/_mjs/control/TestConsole/definition.mjs +23 -32
- package/_mjs/control/TestConsole/definition.mjs.map +1 -1
- package/_mjs/control/TestConsole.mjs.map +1 -1
- package/_mjs/control/TestEnvironment.mjs +3 -3
- package/_mjs/control/TestEnvironment.mjs.map +1 -1
- package/_mjs/control/TestExecutor.mjs +3 -3
- package/_mjs/control/TestExecutor.mjs.map +1 -1
- package/_mjs/control/TestLogger.mjs +2 -7
- package/_mjs/control/TestLogger.mjs.map +1 -1
- package/_mjs/control/TestRandom/api.mjs +9 -19
- package/_mjs/control/TestRandom/api.mjs.map +1 -1
- package/_mjs/control/TestRandom/definition.mjs +61 -121
- package/_mjs/control/TestRandom/definition.mjs.map +1 -1
- package/_mjs/control/TestRandom.mjs.map +1 -1
- package/_mjs/control/TestRenderer/ConsoleRenderer.mjs +11 -21
- package/_mjs/control/TestRenderer/ConsoleRenderer.mjs.map +1 -1
- package/_mjs/control/TestRunner.mjs +2 -6
- package/_mjs/control/TestRunner.mjs.map +1 -1
- package/_mjs/data/AssertionData.mjs +0 -5
- package/_mjs/data/AssertionData.mjs.map +1 -1
- package/_mjs/data/AssertionResult.mjs +0 -2
- package/_mjs/data/AssertionResult.mjs.map +1 -1
- package/_mjs/data/AssertionValue/api.mjs +23 -20
- package/_mjs/data/AssertionValue/api.mjs.map +1 -1
- package/_mjs/data/AssertionValue/definition.mjs +0 -2
- package/_mjs/data/AssertionValue/definition.mjs.map +1 -1
- package/_mjs/data/AssertionValue.mjs.map +1 -1
- package/_mjs/data/ExecutedSpec/api.mjs +55 -57
- package/_mjs/data/ExecutedSpec/api.mjs.map +1 -1
- package/_mjs/data/ExecutedSpec/definition.mjs +5 -13
- package/_mjs/data/ExecutedSpec/definition.mjs.map +1 -1
- package/_mjs/data/ExecutedSpec.mjs.map +1 -1
- package/_mjs/data/ExecutionResult.mjs +40 -52
- package/_mjs/data/ExecutionResult.mjs.map +1 -1
- package/_mjs/data/FailureDetails.mjs +0 -1
- package/_mjs/data/FailureDetails.mjs.map +1 -1
- package/_mjs/data/FreeBooleanAlgebra/api.mjs +70 -87
- package/_mjs/data/FreeBooleanAlgebra/api.mjs.map +1 -1
- package/_mjs/data/FreeBooleanAlgebra/definition.mjs +8 -16
- package/_mjs/data/FreeBooleanAlgebra/definition.mjs.map +1 -1
- package/_mjs/data/FreeBooleanAlgebra.mjs.map +1 -1
- package/_mjs/data/GenFailureDetails.mjs +0 -1
- package/_mjs/data/GenFailureDetails.mjs.map +1 -1
- package/_mjs/data/LogLine/Fragment.mjs +2 -11
- package/_mjs/data/LogLine/Fragment.mjs.map +1 -1
- package/_mjs/data/LogLine/Line.mjs +11 -24
- package/_mjs/data/LogLine/Line.mjs.map +1 -1
- package/_mjs/data/LogLine/Message.mjs +26 -36
- package/_mjs/data/LogLine/Message.mjs.map +1 -1
- package/_mjs/data/LogLine/Style.mjs +10 -39
- package/_mjs/data/LogLine/Style.mjs.map +1 -1
- package/_mjs/data/LogLine/api.mjs.map +1 -1
- package/_mjs/data/LogLine.mjs.map +1 -1
- package/_mjs/data/Render/api.mjs +0 -2
- package/_mjs/data/Render/api.mjs.map +1 -1
- package/_mjs/data/Render/definition.mjs +3 -9
- package/_mjs/data/Render/definition.mjs.map +1 -1
- package/_mjs/data/Render.mjs.map +1 -1
- package/_mjs/data/RenderParam/api.mjs +3 -10
- package/_mjs/data/RenderParam/api.mjs.map +1 -1
- package/_mjs/data/RenderParam/definition.mjs +4 -8
- package/_mjs/data/RenderParam/definition.mjs.map +1 -1
- package/_mjs/data/RenderParam.mjs.map +1 -1
- package/_mjs/data/Summary.mjs +0 -1
- package/_mjs/data/Summary.mjs.map +1 -1
- package/_mjs/data/TestAnnotation/api.mjs +2 -8
- package/_mjs/data/TestAnnotation/api.mjs.map +1 -1
- package/_mjs/data/TestAnnotation/definition.mjs +4 -8
- package/_mjs/data/TestAnnotation/definition.mjs.map +1 -1
- package/_mjs/data/TestAnnotation.mjs.map +1 -1
- package/_mjs/data/TestAnnotationMap.mjs +4 -10
- package/_mjs/data/TestAnnotationMap.mjs.map +1 -1
- package/_mjs/data/TestArgs/definition.mjs +0 -1
- package/_mjs/data/TestArgs/definition.mjs.map +1 -1
- package/_mjs/data/TestArgs.mjs.map +1 -1
- package/_mjs/data/TestConfig.mjs +0 -8
- package/_mjs/data/TestConfig.mjs.map +1 -1
- package/_mjs/data/TestFailure.mjs +4 -12
- package/_mjs/data/TestFailure.mjs.map +1 -1
- package/_mjs/data/TestSuccess.mjs +4 -10
- package/_mjs/data/TestSuccess.mjs.map +1 -1
- package/_mjs/data/TestTimeoutException.mjs +0 -1
- package/_mjs/data/TestTimeoutException.mjs.map +1 -1
- package/_mjs/demo.mjs +5 -8
- package/_mjs/demo.mjs.map +1 -1
- package/_mjs/util/math.mjs +20 -117
- package/_mjs/util/math.mjs.map +1 -1
- package/_src/api.ts +36 -35
- package/_src/control/AbstractRunnableSpec.ts +0 -6
- package/_src/control/Annotations/live.ts +4 -10
- package/_src/control/Assertion/api.ts +36 -25
- package/_src/control/AssertionIO/api.ts +23 -17
- package/_src/control/DefaultTestReporter/render.ts +2 -12
- package/_src/control/FreeBooleanAlgebraIO/api.ts +12 -14
- package/_src/control/Gen/api.ts +476 -71
- package/_src/control/Gen.ts +0 -10
- package/_src/control/Live/definition.ts +0 -4
- package/_src/control/RunnableSpec.ts +1 -1
- package/_src/control/Sample/api.ts +78 -67
- package/_src/control/Spec/api.ts +235 -222
- package/_src/control/Spec/definition.ts +0 -2
- package/_src/control/SummaryBuilder.ts +0 -1
- package/_src/control/TestAnnotationRenderer/api.ts +17 -15
- package/_src/control/TestAnnotationRenderer/definition.ts +0 -2
- package/_src/control/TestAspect/api.ts +2 -3
- package/_src/control/TestClock/definition.ts +13 -25
- package/_src/control/TestConsole/definition.ts +1 -2
- package/_src/control/TestLogger.ts +0 -2
- package/_src/control/TestRandom/api.ts +5 -0
- package/_src/control/TestRandom/definition.ts +3 -37
- package/_src/control/TestRenderer/ConsoleRenderer.ts +0 -1
- package/_src/control/TestRunner.ts +0 -3
- package/_src/data/AssertionValue/api.ts +27 -23
- package/_src/data/AssertionValue/definition.ts +0 -1
- package/_src/data/ExecutedSpec/api.ts +41 -36
- package/_src/data/ExecutionResult.ts +54 -51
- package/_src/data/FreeBooleanAlgebra/api.ts +68 -58
- package/_src/data/LogLine/Line.ts +5 -3
- package/_src/data/LogLine/Message.ts +26 -18
- package/_src/data/LogLine/Style.ts +0 -1
- package/_src/data/Render/definition.ts +0 -2
- package/_src/data/RenderParam/api.ts +1 -1
- package/_src/data/TestAnnotation/api.ts +4 -2
- package/_src/data/TestAnnotation/definition.ts +0 -3
- package/_src/data/TestAnnotationMap.ts +2 -8
- package/_src/demo.ts +3 -4
- package/_src/util/math.ts +31 -17
- package/api.d.ts +12 -12
- package/control/AbstractRunnableSpec.d.ts +0 -1
- package/control/Annotations/live.d.ts +1 -1
- package/control/Assertion/api.d.ts +16 -12
- package/control/AssertionIO/api.d.ts +8 -8
- package/control/FreeBooleanAlgebraIO/api.d.ts +6 -6
- package/control/Gen/api.d.ts +216 -33
- package/control/Gen.d.ts +0 -7
- package/control/Sample/api.d.ts +14 -14
- package/control/Spec/api.d.ts +38 -41
- package/control/TestAnnotationRenderer/api.d.ts +3 -3
- package/control/TestClock/definition.d.ts +2 -2
- package/control/TestConsole/definition.d.ts +1 -1
- package/control/TestRandom/definition.d.ts +1 -1
- package/control/TestRunner.d.ts +1 -3
- package/data/AssertionValue/api.d.ts +8 -8
- package/data/ExecutedSpec/api.d.ts +8 -8
- package/data/ExecutionResult.d.ts +4 -4
- package/data/FreeBooleanAlgebra/api.d.ts +20 -20
- package/data/LogLine/Line.d.ts +2 -2
- package/data/LogLine/Message.d.ts +10 -10
- package/data/TestAnnotation/api.d.ts +1 -1
- package/data/TestAnnotation/definition.d.ts +2 -2
- package/package.json +4 -4
- package/_cjs/control/Gen/api/array.cjs +0 -50
- package/_cjs/control/Gen/api/array.cjs.map +0 -1
- package/_cjs/control/Gen/api/char.cjs +0 -129
- package/_cjs/control/Gen/api/char.cjs.map +0 -1
- package/_cjs/control/Gen/api/conc.cjs +0 -73
- package/_cjs/control/Gen/api/conc.cjs.map +0 -1
- package/_cjs/control/Gen/api/double.cjs +0 -82
- package/_cjs/control/Gen/api/double.cjs.map +0 -1
- package/_cjs/control/Gen/api/float.cjs +0 -55
- package/_cjs/control/Gen/api/float.cjs.map +0 -1
- package/_cjs/control/Gen/api/string.cjs +0 -102
- package/_cjs/control/Gen/api/string.cjs.map +0 -1
- package/_cjs/control/Gen/api/struct.cjs +0 -36
- package/_cjs/control/Gen/api/struct.cjs.map +0 -1
- package/_mjs/control/Gen/api/array.mjs +0 -31
- package/_mjs/control/Gen/api/array.mjs.map +0 -1
- package/_mjs/control/Gen/api/char.mjs +0 -95
- package/_mjs/control/Gen/api/char.mjs.map +0 -1
- package/_mjs/control/Gen/api/conc.mjs +0 -49
- package/_mjs/control/Gen/api/conc.mjs.map +0 -1
- package/_mjs/control/Gen/api/double.mjs +0 -60
- package/_mjs/control/Gen/api/double.mjs.map +0 -1
- package/_mjs/control/Gen/api/float.mjs +0 -41
- package/_mjs/control/Gen/api/float.mjs.map +0 -1
- package/_mjs/control/Gen/api/string.mjs +0 -72
- package/_mjs/control/Gen/api/string.mjs.map +0 -1
- package/_mjs/control/Gen/api/struct.mjs +0 -18
- package/_mjs/control/Gen/api/struct.mjs.map +0 -1
- package/_src/control/Gen/api/array.ts +0 -31
- package/_src/control/Gen/api/char.ts +0 -83
- package/_src/control/Gen/api/conc.ts +0 -48
- package/_src/control/Gen/api/double.ts +0 -64
- package/_src/control/Gen/api/float.ts +0 -36
- package/_src/control/Gen/api/string.ts +0 -71
- package/_src/control/Gen/api/struct.ts +0 -21
- package/control/Gen/api/array.d.ts +0 -18
- package/control/Gen/api/char.d.ts +0 -47
- package/control/Gen/api/conc.d.ts +0 -25
- package/control/Gen/api/double.d.ts +0 -13
- package/control/Gen/api/float.d.ts +0 -7
- package/control/Gen/api/string.d.ts +0 -48
- package/control/Gen/api/struct.d.ts +0 -8
package/_src/api.ts
CHANGED
@@ -50,21 +50,25 @@ export function traverseResult<A>(value: A, assertResult: AssertResult<A>, asser
|
|
50
50
|
}
|
51
51
|
|
52
52
|
/**
|
53
|
-
* @tsplus
|
53
|
+
* @tsplus pipeable global assert
|
54
54
|
*/
|
55
|
-
export function
|
56
|
-
return
|
55
|
+
export function assert<A>(assertion: Assertion<A>) {
|
56
|
+
return (value: A): TestResult => {
|
57
|
+
return traverseResult(value, assertion.run(value), assertion);
|
58
|
+
};
|
57
59
|
}
|
58
60
|
|
59
61
|
/**
|
60
|
-
* @tsplus
|
62
|
+
* @tsplus pipeable fncts.io.IO assert
|
61
63
|
*/
|
62
|
-
export function
|
63
|
-
return
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
64
|
+
export function assertIO<A>(assertion: AssertionIO<A>) {
|
65
|
+
return <R, E>(io: IO<R, E, A>): IO<R, E, TestResult> => {
|
66
|
+
return Do((_) => {
|
67
|
+
const value = _(io);
|
68
|
+
const assertResult = _(assertion.runIO(value));
|
69
|
+
return traverseResult(value, assertResult, assertion);
|
70
|
+
});
|
71
|
+
};
|
68
72
|
}
|
69
73
|
|
70
74
|
export function suite<Specs extends ReadonlyArray<Spec<any, any>>>(
|
@@ -83,44 +87,41 @@ export function test(label: string, assertion: Lazy<TestResult>): Spec<never, ne
|
|
83
87
|
}
|
84
88
|
|
85
89
|
/**
|
86
|
-
* @tsplus
|
90
|
+
* @tsplus pipeable fncts.test.Gen check
|
87
91
|
*/
|
88
|
-
export function check<
|
89
|
-
return
|
90
|
-
|
91
|
-
|
92
|
+
export function check<A>(test: (a: A) => TestResult) {
|
93
|
+
return <R>(rv: Gen<R, A>): IO<R | TestConfig, never, TestResult> => {
|
94
|
+
return TestConfig.samples.flatMap((n) =>
|
95
|
+
checkStream(rv.sample.forever.filterMap(identity).take(n), (a) => IO.succeed(test(a))),
|
96
|
+
);
|
97
|
+
};
|
92
98
|
}
|
93
99
|
|
94
100
|
/**
|
95
|
-
* @tsplus
|
101
|
+
* @tsplus pipeable fncts.test.Gen check
|
96
102
|
*/
|
97
|
-
export function checkIO<
|
98
|
-
rv: Gen<R, A
|
99
|
-
|
100
|
-
|
101
|
-
return TestConfig.samples.flatMap((n) => checkStream(rv.sample.forever.filterMap(identity).take(n), test));
|
103
|
+
export function checkIO<A, R1, E>(test: (a: A) => IO<R1, E, TestResult>) {
|
104
|
+
return <R>(rv: Gen<R, A>): IO<R | R1 | TestConfig, E, TestResult> => {
|
105
|
+
return TestConfig.samples.flatMap((n) => checkStream(rv.sample.forever.filterMap(identity).take(n), test));
|
106
|
+
};
|
102
107
|
}
|
103
108
|
|
104
109
|
/**
|
105
|
-
* @tsplus
|
110
|
+
* @tsplus pipeable fncts.test.Gen checkAllC
|
106
111
|
*/
|
107
|
-
export function checkAllC<
|
108
|
-
rv: Gen<R, A
|
109
|
-
|
110
|
-
|
111
|
-
): IO<R | TestConfig, never, TestResult> {
|
112
|
-
return checkStreamC(rv.sample.forever.filterMap(identity), concurrency, (a) => IO.succeed(test(a)));
|
112
|
+
export function checkAllC<A>(concurrency: number, test: (a: A) => TestResult) {
|
113
|
+
return <R>(rv: Gen<R, A>): IO<R | TestConfig, never, TestResult> => {
|
114
|
+
return checkStreamC(rv.sample.forever.filterMap(identity), concurrency, (a) => IO.succeed(test(a)));
|
115
|
+
};
|
113
116
|
}
|
114
117
|
|
115
118
|
/**
|
116
|
-
* @tsplus
|
119
|
+
* @tsplus pipeable fncts.test.Gen checkAllC
|
117
120
|
*/
|
118
|
-
export function checkAllIOC<
|
119
|
-
rv: Gen<R, A
|
120
|
-
|
121
|
-
|
122
|
-
): IO<R | R1 | TestConfig, E, TestResult> {
|
123
|
-
return checkStreamC(rv.sample.forever.filterMap(identity), concurrency, test);
|
121
|
+
export function checkAllIOC<A, R1, E>(concurrency: number, test: (a: A) => IO<R1, E, TestResult>) {
|
122
|
+
return <R>(rv: Gen<R, A>): IO<R | R1 | TestConfig, E, TestResult> => {
|
123
|
+
return checkStreamC(rv.sample.forever.filterMap(identity), concurrency, test);
|
124
|
+
};
|
124
125
|
}
|
125
126
|
|
126
127
|
function checkStreamC<R, E, A, R1>(
|
@@ -8,16 +8,10 @@ export abstract class AbstractRunnableSpec<R, E> {
|
|
8
8
|
abstract aspects: ReadonlyArray<TestAspect<R, any>>;
|
9
9
|
abstract runner: TestRunner<R, E>;
|
10
10
|
abstract spec: Spec<R, E>;
|
11
|
-
|
12
11
|
get _run(): URIO<TestLogger, ExecutedSpec<E>> {
|
13
12
|
return this.runSpec(this.spec);
|
14
13
|
}
|
15
|
-
|
16
14
|
runSpec(spec: Spec<R, E>): URIO<TestLogger, ExecutedSpec<E>> {
|
17
15
|
return this.runner.run(this.aspects.foldLeft(spec, (b, a) => a(b)));
|
18
16
|
}
|
19
|
-
|
20
|
-
get platform() {
|
21
|
-
return this.runner.runtimeConfig;
|
22
|
-
}
|
23
17
|
}
|
@@ -6,15 +6,12 @@ export class LiveAnnotations extends Annotations {
|
|
6
6
|
constructor(private fiberRef: FiberRef<TestAnnotationMap>) {
|
7
7
|
super();
|
8
8
|
}
|
9
|
-
|
10
9
|
annotate<V>(key: TestAnnotation<V>, value: V): UIO<void> {
|
11
10
|
return this.fiberRef.update((map) => map.annotate(key, value));
|
12
11
|
}
|
13
|
-
|
14
12
|
get<V>(key: TestAnnotation<V>) {
|
15
13
|
return this.fiberRef.get.map((map) => map.get(key));
|
16
14
|
}
|
17
|
-
|
18
15
|
withAnnotation<R, E, A>(io: IO<R, E, A>) {
|
19
16
|
return this.fiberRef.locally(TestAnnotationMap.empty)(
|
20
17
|
io.matchIO(
|
@@ -23,19 +20,16 @@ export class LiveAnnotations extends Annotations {
|
|
23
20
|
),
|
24
21
|
);
|
25
22
|
}
|
26
|
-
|
27
|
-
supervisedFibers = IO.descriptorWith((descriptor) =>
|
23
|
+
supervisedFibers = IO.fiberId.flatMap((fiberId) =>
|
28
24
|
this.fiberRef.get
|
29
25
|
.map((m) => m.get(TestAnnotation.Fibers))
|
30
26
|
.flatMap((r) =>
|
31
27
|
r.match(
|
32
|
-
() => IO.succeed(HashSet.
|
28
|
+
() => IO.succeed(HashSet.empty<Fiber.Runtime<any, any>>()),
|
33
29
|
(refs) =>
|
34
30
|
IO.foreach(refs, (ref) => ref.get)
|
35
|
-
.map((fibers) =>
|
36
|
-
|
37
|
-
)
|
38
|
-
.map((s) => s.filter((f) => Equatable.strictEquals(f.id, descriptor.id))),
|
31
|
+
.map((fibers) => fibers.foldLeft(HashSet.empty<Fiber.Runtime<any, any>>(), (s1, s2) => s1.union(s2)))
|
32
|
+
.map((s) => s.filter((f) => Equatable.strictEquals(f.id, fiberId))),
|
39
33
|
),
|
40
34
|
),
|
41
35
|
);
|
@@ -10,14 +10,16 @@ import { RenderParam } from "../../data/RenderParam.js";
|
|
10
10
|
import { Assertion } from "./definition.js";
|
11
11
|
|
12
12
|
/**
|
13
|
-
* @tsplus
|
14
|
-
* @tsplus operator fncts.test.Assertion &&
|
13
|
+
* @tsplus pipeable fncts.test.Assertion and
|
14
|
+
* @tsplus pipeable-operator fncts.test.Assertion &&
|
15
15
|
*/
|
16
|
-
export function
|
17
|
-
return
|
18
|
-
|
19
|
-
|
20
|
-
|
16
|
+
export function and<A>(that: Assertion<A>) {
|
17
|
+
return (self: Assertion<A>): Assertion<A> => {
|
18
|
+
return new Assertion(
|
19
|
+
Render.infix(RenderParam(self), "&&", RenderParam(that)),
|
20
|
+
(actual) => self.run(actual) && that.run(actual),
|
21
|
+
);
|
22
|
+
};
|
21
23
|
}
|
22
24
|
|
23
25
|
/**
|
@@ -115,8 +117,8 @@ export function containsString(element: string): Assertion<string> {
|
|
115
117
|
return Assertion.make("containsString", [RenderParam(element)], (str) => str.includes(element));
|
116
118
|
}
|
117
119
|
|
118
|
-
export function
|
119
|
-
return Assertion.rec("
|
120
|
+
export function some<A>(assertion: Assertion<A>): Assertion<Iterable<A>> {
|
121
|
+
return Assertion.rec("some", [RenderParam(assertion)], assertion, (ia) => ia.find((a) => assertion.test(a)));
|
120
122
|
}
|
121
123
|
|
122
124
|
export function fails<E>(assertion: Assertion<E>): Assertion<Exit<E, any>> {
|
@@ -128,9 +130,9 @@ export function fails<E>(assertion: Assertion<E>): Assertion<Exit<E, any>> {
|
|
128
130
|
);
|
129
131
|
}
|
130
132
|
|
131
|
-
export function
|
133
|
+
export function every<A>(assertion: Assertion<A>): Assertion<Iterable<A>> {
|
132
134
|
return Assertion.rec(
|
133
|
-
"
|
135
|
+
"every",
|
134
136
|
[RenderParam(assertion)],
|
135
137
|
assertion,
|
136
138
|
(ia) => ia.find((a) => !assertion.test(a)),
|
@@ -156,7 +158,7 @@ export function deepEqualTo<A>(expected: A): Assertion<A> {
|
|
156
158
|
}
|
157
159
|
|
158
160
|
export function equals<A>(expected: A, E: Eq<A>): Assertion<A> {
|
159
|
-
return Assertion.make("equals", [RenderParam(expected)],
|
161
|
+
return Assertion.make("equals", [RenderParam(expected)], E.equals(expected));
|
160
162
|
}
|
161
163
|
|
162
164
|
export const isFalse: Assertion<boolean> = Assertion.make("isFale", [], (b) => !b);
|
@@ -210,10 +212,12 @@ export function isLessThanOrEqualTo(n: number): Assertion<number> {
|
|
210
212
|
}
|
211
213
|
|
212
214
|
/**
|
213
|
-
* @tsplus
|
215
|
+
* @tsplus pipeable fncts.test.Assertion label
|
214
216
|
*/
|
215
|
-
export function
|
216
|
-
return
|
217
|
+
export function label(label: string) {
|
218
|
+
return <A>(self: Assertion<A>): Assertion<A> => {
|
219
|
+
return new Assertion(Render.infix(RenderParam(self), ":", RenderParam(label)), self.run);
|
220
|
+
};
|
217
221
|
}
|
218
222
|
|
219
223
|
/**
|
@@ -224,16 +228,21 @@ export function not<A>(assertion: Assertion<A>): Assertion<A> {
|
|
224
228
|
}
|
225
229
|
|
226
230
|
/**
|
227
|
-
* @tsplus
|
228
|
-
* @tsplus operator fncts.test.Assertion ||
|
231
|
+
* @tsplus pipeable fncts.test.Assertion or
|
232
|
+
* @tsplus pipeable-operator fncts.test.Assertion ||
|
229
233
|
*/
|
230
|
-
export function
|
231
|
-
return
|
232
|
-
|
233
|
-
|
234
|
-
|
234
|
+
export function or<A>(that: Assertion<A>) {
|
235
|
+
return (self: Assertion<A>): Assertion<A> => {
|
236
|
+
return new Assertion(
|
237
|
+
Render.infix(RenderParam(self), "||", RenderParam(that)),
|
238
|
+
(actual) => self.run(actual) || that.run(actual),
|
239
|
+
);
|
240
|
+
};
|
235
241
|
}
|
236
242
|
|
243
|
+
/**
|
244
|
+
* @tsplus getter fncts.test.Assertion succeeds
|
245
|
+
*/
|
237
246
|
export function succeeds<A>(assertion: Assertion<A>): Assertion<Exit<any, A>> {
|
238
247
|
return Assertion.rec("succeeds", [RenderParam(assertion)], assertion, (exit) =>
|
239
248
|
exit.match(
|
@@ -244,10 +253,12 @@ export function succeeds<A>(assertion: Assertion<A>): Assertion<Exit<any, A>> {
|
|
244
253
|
}
|
245
254
|
|
246
255
|
/**
|
247
|
-
* @tsplus
|
256
|
+
* @tsplus pipeable fncts.test.Assertion test
|
248
257
|
*/
|
249
|
-
export function
|
250
|
-
return self
|
258
|
+
export function test<A>(actual: A) {
|
259
|
+
return (self: Assertion<A>): boolean => {
|
260
|
+
return self.run(actual).isSuccess;
|
261
|
+
};
|
251
262
|
}
|
252
263
|
|
253
264
|
export const completes = Assertion.make("completes", [], () => true);
|
@@ -3,30 +3,36 @@ import { RenderParam } from "../../data/RenderParam.js";
|
|
3
3
|
import { AssertionIO } from "./definition.js";
|
4
4
|
|
5
5
|
/**
|
6
|
-
* @tsplus
|
7
|
-
* @tsplus operator fncts.test.AssertionIO &&
|
6
|
+
* @tsplus pipeable fncts.test.AssertionIO and
|
7
|
+
* @tsplus pipeable-operator fncts.test.AssertionIO &&
|
8
8
|
*/
|
9
|
-
export function
|
10
|
-
return
|
11
|
-
|
12
|
-
|
13
|
-
|
9
|
+
export function and<A>(that: AssertionIO<A>) {
|
10
|
+
return (self: AssertionIO<A>): AssertionIO<A> => {
|
11
|
+
return new AssertionIO(
|
12
|
+
Render.infix(RenderParam(self), "&&", RenderParam(that)),
|
13
|
+
(actual) => self.runIO(actual) && that.runIO(actual),
|
14
|
+
);
|
15
|
+
};
|
14
16
|
}
|
15
17
|
|
16
18
|
/**
|
17
|
-
* @tsplus
|
18
|
-
* @tsplus operator fncts.test.AssertionIO ||
|
19
|
+
* @tsplus pipeable fncts.test.AssertionIO or
|
20
|
+
* @tsplus pipeable-operator fncts.test.AssertionIO ||
|
19
21
|
*/
|
20
|
-
export function
|
21
|
-
return
|
22
|
-
|
23
|
-
|
24
|
-
|
22
|
+
export function or<A>(that: AssertionIO<A>) {
|
23
|
+
return (self: AssertionIO<A>): AssertionIO<A> => {
|
24
|
+
return new AssertionIO(
|
25
|
+
Render.infix(RenderParam(self), "||", RenderParam(that)),
|
26
|
+
(actual) => self.runIO(actual) || that.runIO(actual),
|
27
|
+
);
|
28
|
+
};
|
25
29
|
}
|
26
30
|
|
27
31
|
/**
|
28
|
-
* @tsplus
|
32
|
+
* @tsplus pipeable fncts.test.AssertionIO label
|
29
33
|
*/
|
30
|
-
export function
|
31
|
-
return
|
34
|
+
export function label(label: string) {
|
35
|
+
return <A>(self: AssertionIO<A>): AssertionIO<A> => {
|
36
|
+
return new AssertionIO(Render.infix(RenderParam(self), ":", RenderParam(label)), self.runIO);
|
37
|
+
};
|
32
38
|
}
|
@@ -51,15 +51,12 @@ export function renderStats<E>(duration: number, executedSpec: ExecutedSpec<E>)
|
|
51
51
|
],
|
52
52
|
}),
|
53
53
|
);
|
54
|
-
|
55
54
|
const total = success + ignore + failure;
|
56
|
-
|
57
55
|
const stats = detail(
|
58
56
|
`Ran ${total} test${
|
59
57
|
total === 1 ? "" : "s"
|
60
58
|
} in ${duration}ms: ${success} succeeded, ${ignore} ignored, ${failure} failed`,
|
61
59
|
);
|
62
|
-
|
63
60
|
return rendered(Other, "", Passed, 0, List(stats.toLine));
|
64
61
|
}
|
65
62
|
|
@@ -82,14 +79,13 @@ function renderLoop<E>(
|
|
82
79
|
}
|
83
80
|
case ExecutedSpecCaseTag.Multiple: {
|
84
81
|
const specs = executedSpec.caseValue.specs;
|
85
|
-
const hasFailures = executedSpec.
|
82
|
+
const hasFailures = executedSpec.some((specCase) => {
|
86
83
|
if (specCase._tag === ExecutedSpecCaseTag.Test) {
|
87
84
|
return specCase.test.isLeft();
|
88
85
|
} else {
|
89
86
|
return false;
|
90
87
|
}
|
91
88
|
});
|
92
|
-
|
93
89
|
const annotations = executedSpec.fold<E, TestAnnotationMap>(
|
94
90
|
matchTag({
|
95
91
|
Labeled: ({ spec }) => spec,
|
@@ -97,19 +93,15 @@ function renderLoop<E>(
|
|
97
93
|
Test: ({ annotations }) => annotations,
|
98
94
|
}),
|
99
95
|
);
|
100
|
-
|
101
96
|
const [status, renderedLabel] = specs.isEmpty
|
102
97
|
? [Ignored, Vector(renderSuiteIgnored(labels.reverse.join(" - "), depth))]
|
103
98
|
: hasFailures
|
104
99
|
? [Failed, Vector(renderSuiteFailed(labels.reverse.join(" - "), depth))]
|
105
100
|
: [Passed, Vector(renderSuiteSucceeded(labels.reverse.join(" - "), depth))];
|
106
|
-
|
107
101
|
const allAnnotations = ancestors.prepend(annotations);
|
108
|
-
|
109
|
-
const rest = Vector.from(specs).flatMap((spec) =>
|
102
|
+
const rest = Vector.from(specs).flatMap((spec) =>
|
110
103
|
renderLoop(spec, depth + 1, ancestors.prepend(annotations), List.empty()),
|
111
104
|
);
|
112
|
-
|
113
105
|
return rest.prepend(
|
114
106
|
rendered(
|
115
107
|
Suite,
|
@@ -215,7 +207,6 @@ function renderGenFailureDetails(failureDetails: Maybe<GenFailureDetails>, offse
|
|
215
207
|
`Test failed after ${details.iterations + 1} iteration${details.iterations > 0 ? "s" : ""} with input: `,
|
216
208
|
) + error(shrunken)
|
217
209
|
).withOffset(offset + 1);
|
218
|
-
|
219
210
|
return initial === shrunken
|
220
211
|
? renderShrunken.toMessage
|
221
212
|
: renderShrunken | (Fragment("Original input before shrinking was: ") + error(initial)).withOffset(offset + 1);
|
@@ -246,7 +237,6 @@ function renderValue<A>(av: AssertionValue<A>, offset: number) {
|
|
246
237
|
|
247
238
|
function expressionRedundant(valueStr: string, expression: string) {
|
248
239
|
const strip = (s: string) => s.replace('"', "").replace(" ", "").replace("\n", "").replace("\\n", "");
|
249
|
-
|
250
240
|
return strip(valueStr) === strip(expression);
|
251
241
|
}
|
252
242
|
|
@@ -3,25 +3,23 @@ import type { FreeBooleanAlgebraIO } from "./definition.js";
|
|
3
3
|
import { FreeBooleanAlgebra } from "../../data/FreeBooleanAlgebra.js";
|
4
4
|
|
5
5
|
/**
|
6
|
-
* @tsplus
|
7
|
-
* @tsplus operator fncts.test.FreeBooleanAlgebraIO &&
|
6
|
+
* @tsplus pipeable fncts.test.FreeBooleanAlgebraIO and
|
7
|
+
* @tsplus pipeable-operator fncts.test.FreeBooleanAlgebraIO &&
|
8
8
|
*/
|
9
|
-
export function
|
10
|
-
self: FreeBooleanAlgebraIO<R, E, A
|
11
|
-
|
12
|
-
|
13
|
-
return self.zipWith(that, (a, b) => a && b);
|
9
|
+
export function and<R1, E1, A1>(that: FreeBooleanAlgebraIO<R1, E1, A1>) {
|
10
|
+
return <R, E, A extends A1>(self: FreeBooleanAlgebraIO<R, E, A>): FreeBooleanAlgebraIO<R | R1, E | E1, A | A1> => {
|
11
|
+
return self.zipWith(that, (a, b) => a && b);
|
12
|
+
};
|
14
13
|
}
|
15
14
|
|
16
15
|
/**
|
17
|
-
* @tsplus
|
18
|
-
* @tsplus operator fncts.test.FreeBooleanAlgebraIO ||
|
16
|
+
* @tsplus pipeable fncts.test.FreeBooleanAlgebraIO or
|
17
|
+
* @tsplus pipeable-operator fncts.test.FreeBooleanAlgebraIO ||
|
19
18
|
*/
|
20
|
-
export function
|
21
|
-
self: FreeBooleanAlgebraIO<R, E, A
|
22
|
-
|
23
|
-
|
24
|
-
return self.zipWith(that, (a, b) => a || b);
|
19
|
+
export function or<R1, E1, A1>(that: FreeBooleanAlgebraIO<R1, E1, A1>) {
|
20
|
+
return <R, E, A extends A1>(self: FreeBooleanAlgebraIO<R, E, A>): FreeBooleanAlgebraIO<R | R1, E | E1, A | A1> => {
|
21
|
+
return self.zipWith(that, (a, b) => a || b);
|
22
|
+
};
|
25
23
|
}
|
26
24
|
|
27
25
|
/**
|