@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/_mjs/control/Gen/api.mjs
CHANGED
@@ -1,205 +1,428 @@
|
|
1
1
|
const fileName_1 = "(@fncts/test) src/control/Gen/api.ts";
|
2
|
-
import * as tsplus_module_1 from "@fncts/test/control/
|
3
|
-
import * as tsplus_module_2 from "@fncts/
|
4
|
-
import * as tsplus_module_3 from "@fncts/io/
|
5
|
-
import * as tsplus_module_4 from "@fncts/
|
6
|
-
import * as tsplus_module_5 from "@fncts/
|
7
|
-
import * as tsplus_module_6 from "@fncts/base/data/Maybe/
|
8
|
-
import * as tsplus_module_7 from "@fncts/
|
9
|
-
import * as tsplus_module_8 from "@fncts/
|
10
|
-
import * as tsplus_module_9 from "@fncts/base/collection/
|
11
|
-
import * as tsplus_module_10 from "@fncts/base/collection/immutable/Conc/
|
12
|
-
import * as tsplus_module_11 from "@fncts/base/
|
13
|
-
import * as tsplus_module_12 from "@fncts/base/data/
|
14
|
-
import * as tsplus_module_13 from "@fncts/base/collection/
|
2
|
+
import * as tsplus_module_1 from "@fncts/test/control/Sized/api";
|
3
|
+
import * as tsplus_module_2 from "@fncts/test/control/Sample/api";
|
4
|
+
import * as tsplus_module_3 from "@fncts/io/Random/api";
|
5
|
+
import * as tsplus_module_4 from "@fncts/io/IO/api";
|
6
|
+
import * as tsplus_module_5 from "@fncts/base/collection/immutable/Conc/definition";
|
7
|
+
import * as tsplus_module_6 from "@fncts/base/data/Maybe/constructors";
|
8
|
+
import * as tsplus_module_7 from "@fncts/io/Stream/api";
|
9
|
+
import * as tsplus_module_8 from "@fncts/base/collection/immutable/Conc/api/empty";
|
10
|
+
import * as tsplus_module_9 from "@fncts/base/collection/immutable/Conc/api";
|
11
|
+
import * as tsplus_module_10 from "@fncts/base/collection/immutable/Conc/api/replicate";
|
12
|
+
import * as tsplus_module_11 from "@fncts/base/data/Maybe/api";
|
13
|
+
import * as tsplus_module_12 from "@fncts/base/data/Maybe/destructors";
|
14
|
+
import * as tsplus_module_13 from "@fncts/base/collection/compat/Array/api";
|
15
|
+
import * as tsplus_module_14 from "@fncts/base/collection/immutable/Conc/constructors";
|
16
|
+
import * as tsplus_module_15 from "@fncts/base/data/Equatable/api";
|
17
|
+
import * as tsplus_module_16 from "@fncts/base/data/Eq/definition";
|
18
|
+
import * as tsplus_module_17 from "@fncts/base/data/number/instances";
|
19
|
+
import * as tsplus_module_18 from "@fncts/base/collection/immutable/SortedMap/api";
|
20
|
+
export const arrayWith = arrayWith_1;
|
21
|
+
export const arrayN = arrayN_1;
|
22
|
+
export const arrayInt64 = arrayInt64_1;
|
23
|
+
export const asciiStringWith = asciiStringWith_1;
|
24
|
+
export const base64StringWith = base64StringWith_1;
|
25
|
+
export const bounded = bounded_1;
|
26
|
+
export const char = char_1;
|
27
|
+
export const concWith = concWith_1;
|
28
|
+
export const concN = concN_1;
|
15
29
|
export const constant = constant_1;
|
16
|
-
export const
|
17
|
-
export const
|
30
|
+
export const defer = defer_1;
|
31
|
+
export const filter = filter_1;
|
32
|
+
export const flatMap = flatMap_1;
|
18
33
|
export const flatten = flatten_1;
|
19
34
|
export const fromIO = fromIO_1;
|
20
35
|
export const fromIOSample = fromIOSample_1;
|
21
|
-
export const
|
22
|
-
export const
|
23
|
-
export const
|
36
|
+
export const intWith = intWith_1;
|
37
|
+
export const map = map_1;
|
38
|
+
export const oneOf = oneOf_1;
|
39
|
+
export const reshrink = reshrink_1;
|
24
40
|
export const small = small_1;
|
41
|
+
export const string = string_1;
|
42
|
+
export const stringN = stringN_1;
|
25
43
|
export const unfoldGenN = unfoldGenN_1;
|
44
|
+
export const uniqueConc = uniqueConc_1;
|
45
|
+
export const uniqueConcN = uniqueConcN_1;
|
46
|
+
export const unwrap = unwrap_1;
|
47
|
+
export const weighted = weighted_1;
|
48
|
+
export const zipWith = zipWith_1;
|
26
49
|
import { IllegalArgumentError, NoSuchElementError } from "@fncts/base/data/exceptions";
|
27
50
|
import { tuple } from "@fncts/base/data/function";
|
28
51
|
import { identity } from "@fncts/base/data/function";
|
29
|
-
import { clamp } from "../../util/math.mjs";
|
52
|
+
import { add64, clamp, computeArrayInt64GenerateRange, indexToDouble, indexToFloat, isStrictlyPositive64, isStrictlySmaller64, MAX_VALUE_32, safeDoubleToIndex, safeFloatToIndex, substract64, Unit64 } from "../../util/math.mjs";
|
30
53
|
import { Sample } from "../Sample.mjs";
|
31
54
|
import { Gen } from "./definition.mjs";
|
55
|
+
const gapSize = 0xdfff + 1 - 0xd800;
|
32
56
|
/**
|
33
|
-
* @tsplus static fncts.test.GenOps
|
57
|
+
* @tsplus static fncts.test.GenOps size
|
34
58
|
*/
|
35
|
-
|
36
|
-
export const
|
59
|
+
const size_1 = /*#__PURE__*/fromIO_1(tsplus_module_1.size);
|
60
|
+
export const size = size_1;
|
37
61
|
/**
|
38
|
-
* @tsplus static fncts.test.GenOps
|
62
|
+
* @tsplus static fncts.test.GenOps uniform
|
39
63
|
*/
|
40
|
-
|
41
|
-
export const
|
64
|
+
const uniform_1 = /*#__PURE__*/fromIOSample_1( /*#__PURE__*/tsplus_module_4.map(tsplus_module_2.shrinkFractional(0.0), fileName_1 + ":38:82")(tsplus_module_3.nextDouble));
|
65
|
+
export const uniform = uniform_1;
|
42
66
|
/**
|
43
|
-
* @tsplus static fncts.test.GenOps
|
67
|
+
* @tsplus static fncts.test.GenOps alphaNumericChar
|
44
68
|
*/
|
45
|
-
|
46
|
-
|
69
|
+
const alphaNumericChar_1 = /*#__PURE__*/weighted_1([/*#__PURE__*/char_1({
|
70
|
+
min: 48,
|
71
|
+
max: 57
|
72
|
+
}), 10], [/*#__PURE__*/char_1({
|
73
|
+
min: 65,
|
74
|
+
max: 90
|
75
|
+
}), 26], [/*#__PURE__*/char_1({
|
76
|
+
min: 97,
|
77
|
+
max: 122
|
78
|
+
}), 26]);
|
79
|
+
export const alphaNumericChar = alphaNumericChar_1;
|
80
|
+
/**
|
81
|
+
* @tsplus static fncts.test.GenOps alphaNumericStringWith
|
82
|
+
*/
|
83
|
+
export function alphaNumericStringWith(constraints = {}) {
|
84
|
+
return string_1(constraints)(alphaNumericChar_1);
|
85
|
+
}
|
86
|
+
/**
|
87
|
+
* @tsplus static fncts.test.GenOps alphaNumericString
|
88
|
+
*/
|
89
|
+
export const alphaNumericString = /*#__PURE__*/string_1()(alphaNumericChar_1);
|
90
|
+
/**
|
91
|
+
* @tsplus getter fncts.test.Gen array
|
92
|
+
*/
|
93
|
+
export function array(self) {
|
94
|
+
return arrayWith_1()(self);
|
95
|
+
}
|
96
|
+
/**
|
97
|
+
* @tsplus pipeable fncts.test.Gen arrayWith
|
98
|
+
*/
|
99
|
+
function arrayWith_1(constraints = {}) {
|
100
|
+
return g => {
|
101
|
+
const minLength = constraints.minLength || 0;
|
102
|
+
return constraints.maxLength ? flatMap_1(n => arrayN_1(n)(g))(intWith_1({
|
103
|
+
min: minLength,
|
104
|
+
max: constraints.maxLength
|
105
|
+
})) : small_1(n => arrayN_1(n)(g), minLength);
|
106
|
+
};
|
107
|
+
}
|
108
|
+
/**
|
109
|
+
* @tsplus pipeable fncts.test.Gen arrayN
|
110
|
+
*/
|
111
|
+
function arrayN_1(n) {
|
112
|
+
return self => {
|
113
|
+
return map_1(conc => tsplus_module_5.toArray(conc))(concN_1(n)(self));
|
114
|
+
};
|
115
|
+
}
|
116
|
+
/**
|
117
|
+
* @tsplus static fncts.test.GenOps arrayInt64
|
118
|
+
*/
|
119
|
+
function arrayInt64_1(min, max) {
|
120
|
+
return new Gen(tsplus_module_7.map(uncheckedValue => {
|
121
|
+
if (uncheckedValue.data.length === 1) {
|
122
|
+
uncheckedValue.data.unshift(0);
|
123
|
+
}
|
124
|
+
return tsplus_module_6.just(tsplus_module_2.shrinkArrayInt64(min)(uncheckedValue));
|
125
|
+
}, fileName_1 + ":96:11")(tsplus_module_7.flatMap(({
|
126
|
+
min,
|
127
|
+
max
|
128
|
+
}) => tsplus_module_7.repeatIO(tsplus_module_3.nextArrayIntBetween(min, max, fileName_1 + ":95:76"), fileName_1 + ":95:49"), fileName_1 + ":95:15")(tsplus_module_7.fromIO(computeArrayInt64GenerateRange(min, max, undefined, undefined), fileName_1 + ":94:18"))));
|
129
|
+
}
|
130
|
+
/**
|
131
|
+
* @tsplus static fncts.test.GenOps asciiChar
|
132
|
+
*/
|
133
|
+
const asciiChar_1 = /*#__PURE__*/_char(0x00, 0x7f, indexToPrintableIndex);
|
134
|
+
export const asciiChar = asciiChar_1;
|
135
|
+
/**
|
136
|
+
* @tsplus static fncts.test.GenOps asciiStringWith
|
137
|
+
*/
|
138
|
+
function asciiStringWith_1(constraints) {
|
139
|
+
return string_1(constraints)(asciiChar_1);
|
140
|
+
}
|
141
|
+
/**
|
142
|
+
* @tsplus static fncts.test.GenOps asciiString
|
143
|
+
*/
|
144
|
+
export const asciiString = /*#__PURE__*/asciiStringWith_1();
|
145
|
+
/**
|
146
|
+
* @tsplus static fncts.test.GenOps base64Char
|
147
|
+
*/
|
148
|
+
const base64Char_1 = /*#__PURE__*/_char(0, 63, base64ToCharCode);
|
149
|
+
export const base64Char = base64Char_1;
|
150
|
+
/**
|
151
|
+
* @tsplus static fncts.test.GenOps base64String
|
152
|
+
*/
|
153
|
+
export const base64String = /*#__PURE__*/base64StringWith_1();
|
154
|
+
/**
|
155
|
+
* @tsplus static fncts.test.GenOps base64StringWith
|
156
|
+
*/
|
157
|
+
function base64StringWith_1(constraints = {}) {
|
158
|
+
return string_1(constraints)(base64Char_1);
|
159
|
+
}
|
160
|
+
/**
|
161
|
+
* @tsplus static fncts.test.GenOps bigInt
|
162
|
+
*/
|
163
|
+
export const bigInt = /*#__PURE__*/fromIOSample_1( /*#__PURE__*/tsplus_module_4.map(tsplus_module_2.shrinkBigInt(BigInt(0)), fileName_1 + ":143:98")( /*#__PURE__*/tsplus_module_3.nextBigIntBetween( /*#__PURE__*/BigInt(-1) << /*#__PURE__*/BigInt(255), ( /*#__PURE__*/BigInt(1) << /*#__PURE__*/BigInt(255)) - /*#__PURE__*/BigInt(1), fileName_1 + ":143:27")));
|
164
|
+
/**
|
165
|
+
* @tsplus static fncts.test.GenOps boolean
|
166
|
+
*/
|
167
|
+
export const boolean = /*#__PURE__*/defer_1(() => oneOf_1(constant_1(true), constant_1(false)));
|
47
168
|
/**
|
48
169
|
* @tsplus static fncts.test.GenOps bounded
|
49
170
|
*/
|
50
|
-
|
51
|
-
|
52
|
-
return flatMap_1(int_1({
|
171
|
+
function bounded_1(min, max, f) {
|
172
|
+
return flatMap_1(f)(intWith_1({
|
53
173
|
min,
|
54
174
|
max
|
55
|
-
})
|
175
|
+
}));
|
176
|
+
}
|
177
|
+
/**
|
178
|
+
* @tsplus static fncts.test.GenOps char
|
179
|
+
*/
|
180
|
+
function char_1(constraints) {
|
181
|
+
return _char(constraints.min, constraints.max, identity);
|
182
|
+
}
|
183
|
+
/**
|
184
|
+
* @tsplus static fncts.test.GenOps char16
|
185
|
+
*/
|
186
|
+
const char16_1 = /*#__PURE__*/_char(0x0000, 0xffff, indexToPrintableIndex);
|
187
|
+
export const char16 = char16_1;
|
188
|
+
/**
|
189
|
+
* @tsplus pipeable fncts.test.Gen conc
|
190
|
+
*/
|
191
|
+
function concWith_1(constraints = {}) {
|
192
|
+
return self => {
|
193
|
+
const minLength = constraints.minLength ?? 0;
|
194
|
+
return constraints.maxLength ? flatMap_1(n => concN_1(n)(self))(intWith_1({
|
195
|
+
min: minLength,
|
196
|
+
max: constraints.maxLength
|
197
|
+
})) : small_1(n => concN_1(n)(self), minLength);
|
198
|
+
};
|
199
|
+
}
|
200
|
+
/**
|
201
|
+
* @tsplus getter fncts.test.Gen conc
|
202
|
+
*/
|
203
|
+
export function conc(self) {
|
204
|
+
return concWith_1()(self);
|
205
|
+
}
|
206
|
+
/**
|
207
|
+
* @tsplus pipeable fncts.test.Gen concN
|
208
|
+
*/
|
209
|
+
function concN_1(n) {
|
210
|
+
return g => {
|
211
|
+
return tsplus_module_9.foldLeft(constant_1(tsplus_module_8.empty()), (gen, a) => zipWith_1(a, (as, a) => tsplus_module_9.append(a)(as))(gen))(tsplus_module_10.replicate(n, g));
|
212
|
+
};
|
56
213
|
}
|
57
214
|
/**
|
58
215
|
* @tsplus static fncts.test.GenOps constant
|
59
216
|
*/
|
60
|
-
|
61
217
|
function constant_1(a) {
|
62
|
-
return new Gen(
|
218
|
+
return new Gen(tsplus_module_7.succeedNow(tsplus_module_6.just(tsplus_module_2.noShrink(a)), fileName_1 + ":206:35"));
|
63
219
|
}
|
64
220
|
/**
|
65
|
-
* @tsplus
|
221
|
+
* @tsplus static fncts.test.GenOps defer
|
66
222
|
*/
|
67
|
-
|
68
|
-
|
69
|
-
function flatMap_1(ma, f) {
|
70
|
-
return new Gen(tsplus_module_1.flatMapStream(ma.sample, sample => {
|
71
|
-
const values = f(sample.value).sample;
|
72
|
-
const shrinks = flatMap_1(new Gen(sample.shrink), a => f(a)).sample;
|
73
|
-
return tsplus_module_5.map_(values, maybeSample => tsplus_module_6.map_(maybeSample, sample => tsplus_module_1.flatMap_(sample, b => new Sample(b, shrinks))), fileName_1 + ":55:24");
|
74
|
-
}));
|
223
|
+
function defer_1(gen) {
|
224
|
+
return flatten_1(fromIO_1(tsplus_module_4.succeed(gen, fileName_1 + ":213:31")));
|
75
225
|
}
|
76
226
|
/**
|
77
|
-
* @tsplus static fncts.test.GenOps
|
227
|
+
* @tsplus static fncts.test.GenOps double
|
78
228
|
*/
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
229
|
+
export const double = /*#__PURE__*/fromIOSample_1( /*#__PURE__*/tsplus_module_4.map(tsplus_module_2.shrinkFractional(0), fileName_1 + ":219:81")(tsplus_module_3.nextDouble));
|
230
|
+
/**
|
231
|
+
* @tsplus static fncts.test.GenOps doubleWith
|
232
|
+
*/
|
233
|
+
export function doubleWith(constraints = {}) {
|
234
|
+
const {
|
235
|
+
noDefaultInfinity = false,
|
236
|
+
noNaN = false,
|
237
|
+
min = noDefaultInfinity ? -Number.MAX_VALUE : Number.NEGATIVE_INFINITY,
|
238
|
+
max = noDefaultInfinity ? Number.MAX_VALUE : Number.POSITIVE_INFINITY
|
239
|
+
} = constraints;
|
240
|
+
return unwrap_1(tsplus_module_4.gen(function* (_) {
|
241
|
+
const minIndex = yield* _(safeDoubleToIndex(min, "min"), fileName_1 + ":233:32");
|
242
|
+
const maxIndex = yield* _(safeDoubleToIndex(max, "max"), fileName_1 + ":234:32");
|
243
|
+
if (isStrictlySmaller64(maxIndex, minIndex)) {
|
244
|
+
return yield* _(tsplus_module_4.haltNow(new IllegalArgumentError("min must be less than or equal to max", "Gen.double"), fileName_1 + ":236:35"), fileName_1 + ":236:24");
|
245
|
+
}
|
246
|
+
if (noNaN) {
|
247
|
+
return map_1(indexToDouble)(arrayInt64_1(minIndex, maxIndex));
|
248
|
+
}
|
249
|
+
const positiveMaxIdx = isStrictlyPositive64(maxIndex);
|
250
|
+
const minIndexWithNaN = positiveMaxIdx ? minIndex : substract64(minIndex, Unit64);
|
251
|
+
const maxIndexWithNaN = positiveMaxIdx ? add64(maxIndex, Unit64) : maxIndex;
|
252
|
+
return map_1(index => {
|
253
|
+
if (isStrictlySmaller64(maxIndex, index) || isStrictlySmaller64(index, minIndex)) return Number.NaN;else return indexToDouble(index);
|
254
|
+
})(arrayInt64_1(minIndexWithNaN, maxIndexWithNaN));
|
255
|
+
}, fileName_1 + ":232:11"));
|
83
256
|
}
|
84
257
|
/**
|
85
258
|
* @tsplus static fncts.test.GenOps empty
|
86
259
|
*/
|
87
|
-
|
88
|
-
const empty_1 = /*#__PURE__*/new Gen(tsplus_module_5.empty);
|
260
|
+
const empty_1 = /*#__PURE__*/new Gen(tsplus_module_7.empty);
|
89
261
|
export const empty = empty_1;
|
90
|
-
|
91
|
-
|
92
|
-
|
262
|
+
/**
|
263
|
+
* @tsplus static fncts.test.GenOps exponential
|
264
|
+
*/
|
265
|
+
const exponential_1 = /*#__PURE__*/map_1(n => -Math.log(1 - n))(uniform_1);
|
266
|
+
export const exponential = exponential_1;
|
267
|
+
function filter_1(p) {
|
268
|
+
return fa => {
|
269
|
+
return flatMap_1(a => p(a) ? constant_1(a) : empty_1)(fa);
|
270
|
+
};
|
93
271
|
}
|
94
272
|
/**
|
95
|
-
* @tsplus
|
273
|
+
* @tsplus pipeable fncts.test.Gen filterNot
|
96
274
|
*/
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
275
|
+
export function filterNot(p) {
|
276
|
+
return fa => {
|
277
|
+
return filter_1(a => !p(a))(fa);
|
278
|
+
};
|
279
|
+
}
|
280
|
+
/**
|
281
|
+
* @tsplus pipeable fncts.test.Gen flatMap
|
282
|
+
*/
|
283
|
+
function flatMap_1(f) {
|
284
|
+
return ma => {
|
285
|
+
return new Gen(tsplus_module_2.flatMapStream(ma.sample, sample => {
|
286
|
+
const values = f(sample.value).sample;
|
287
|
+
const shrinks = flatMap_1(a => f(a))(new Gen(sample.shrink)).sample;
|
288
|
+
return tsplus_module_7.map(maybeSample => tsplus_module_11.map(sample => tsplus_module_2.flatMap(b => new Sample(b, shrinks))(sample))(maybeSample), fileName_1 + ":291:26")(values);
|
289
|
+
}));
|
290
|
+
};
|
101
291
|
}
|
102
292
|
/**
|
103
293
|
* @tsplus getter fncts.test.Gen flatten
|
104
294
|
*/
|
105
|
-
|
106
295
|
function flatten_1(mma) {
|
107
|
-
return flatMap_1(
|
296
|
+
return flatMap_1(identity)(mma);
|
108
297
|
}
|
109
298
|
/**
|
110
299
|
* @tsplus static fncts.test.GenOps fromIO
|
111
300
|
*/
|
112
|
-
|
113
|
-
|
114
301
|
function fromIO_1(effect) {
|
115
|
-
return fromIOSample_1(
|
302
|
+
return fromIOSample_1(tsplus_module_4.map(tsplus_module_2.noShrink, fileName_1 + ":308:37")(effect));
|
116
303
|
}
|
117
304
|
/**
|
118
305
|
* @tsplus static fncts.test.GenOps fromIOSample
|
119
306
|
*/
|
120
|
-
|
121
|
-
|
122
307
|
function fromIOSample_1(effect) {
|
123
|
-
return new Gen(
|
308
|
+
return new Gen(tsplus_module_7.fromIO(tsplus_module_4.map(tsplus_module_6.just, fileName_1 + ":315:42")(effect), fileName_1 + ":315:31"));
|
309
|
+
}
|
310
|
+
/**
|
311
|
+
* @tsplus static fncts.test.GenOps floatWith
|
312
|
+
*/
|
313
|
+
export function floatWith(constraints = {}) {
|
314
|
+
const {
|
315
|
+
noDefaultInfinity = false,
|
316
|
+
min = noDefaultInfinity ? -MAX_VALUE_32 : Number.NEGATIVE_INFINITY,
|
317
|
+
max = noDefaultInfinity ? MAX_VALUE_32 : Number.POSITIVE_INFINITY,
|
318
|
+
noNaN = false
|
319
|
+
} = constraints;
|
320
|
+
return unwrap_1(tsplus_module_4.gen(function* (_) {
|
321
|
+
const minIndex = yield* _(safeFloatToIndex(min, "min"), fileName_1 + ":330:32");
|
322
|
+
const maxIndex = yield* _(safeFloatToIndex(max, "max"), fileName_1 + ":331:32");
|
323
|
+
if (minIndex > maxIndex) {
|
324
|
+
return yield* _(tsplus_module_4.haltNow(new Error("Gen.float constraints.min must be less than or equal to constraints.max"), fileName_1 + ":334:21"), fileName_1 + ":333:24");
|
325
|
+
}
|
326
|
+
if (noNaN) {
|
327
|
+
return map_1(indexToFloat)(intWith_1({
|
328
|
+
min: minIndex,
|
329
|
+
max: maxIndex
|
330
|
+
}));
|
331
|
+
}
|
332
|
+
const minIndexWithNaN = maxIndex > 0 ? minIndex : minIndex - 1;
|
333
|
+
const maxIndexWithNaN = maxIndex > 0 ? maxIndex + 1 : maxIndex;
|
334
|
+
return map_1(index => {
|
335
|
+
if (index > maxIndex || index < minIndex) return Number.NaN;else return indexToFloat(index);
|
336
|
+
})(intWith_1({
|
337
|
+
min: minIndexWithNaN,
|
338
|
+
max: maxIndexWithNaN
|
339
|
+
}));
|
340
|
+
}, fileName_1 + ":329:11"));
|
341
|
+
}
|
342
|
+
/**
|
343
|
+
* @tsplus static fncts.test.GenOps fullUnicodeChar
|
344
|
+
*/
|
345
|
+
const fullUnicodeChar_1 = /*#__PURE__*/_char(0x0000, 0x10ffff - gapSize, unicodeToCharCode);
|
346
|
+
export const fullUnicodeChar = fullUnicodeChar_1;
|
347
|
+
/**
|
348
|
+
* @tsplus static fncts.test.GenOps fullUnicodeString
|
349
|
+
*/
|
350
|
+
export function fullUnicodeString(constraints = {}) {
|
351
|
+
return string_1(constraints)(fullUnicodeChar_1);
|
352
|
+
}
|
353
|
+
/**
|
354
|
+
* @tsplus static fncts.test.GenOps hexChar
|
355
|
+
*/
|
356
|
+
const hexChar_1 = /*#__PURE__*/_char(0, 15, hexToCharCode);
|
357
|
+
export const hexChar = hexChar_1;
|
358
|
+
/**
|
359
|
+
* @tsplus static fncts.test.GenOps hexString
|
360
|
+
*/
|
361
|
+
export function hexString(constraints = {}) {
|
362
|
+
return string_1(constraints)(hexChar_1);
|
124
363
|
}
|
125
364
|
/**
|
126
365
|
* @tsplus static fncts.test.GenOps int
|
127
366
|
*/
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
|
367
|
+
export const int = /*#__PURE__*/fromIOSample_1( /*#__PURE__*/tsplus_module_4.map(tsplus_module_2.shrinkIntegral(0), fileName_1 + ":377:75")(tsplus_module_3.nextInt));
|
368
|
+
/**
|
369
|
+
* @tsplus static fncts.test.GenOps intWith
|
370
|
+
*/
|
371
|
+
function intWith_1(constraints = {}) {
|
372
|
+
return fromIOSample_1(tsplus_module_4.defer(() => {
|
132
373
|
const min = constraints.min ?? -0x80000000;
|
133
374
|
const max = constraints.max ?? 0x7fffffff;
|
134
|
-
|
135
375
|
if (min > max || min < Number.MIN_SAFE_INTEGER || max > Number.MAX_SAFE_INTEGER) {
|
136
|
-
return
|
376
|
+
return tsplus_module_4.haltNow(new IllegalArgumentError("invalid bounds", "Gen.intWith"), fileName_1 + ":388:26");
|
137
377
|
} else {
|
138
|
-
return
|
378
|
+
return tsplus_module_4.map(tsplus_module_2.shrinkIntegral(min), fileName_1 + ":390:51")(tsplus_module_3.nextIntBetween(min, max, fileName_1 + ":390:37"));
|
139
379
|
}
|
140
|
-
}, fileName_1 + ":
|
380
|
+
}, fileName_1 + ":384:13"));
|
141
381
|
}
|
142
382
|
/**
|
143
|
-
* @tsplus
|
383
|
+
* @tsplus pipeable fncts.test.Gen map
|
144
384
|
*/
|
145
|
-
|
146
|
-
|
147
|
-
|
148
|
-
|
385
|
+
function map_1(f) {
|
386
|
+
return self => {
|
387
|
+
return new Gen(tsplus_module_7.map(maybeSample => tsplus_module_11.map(sample => tsplus_module_2.map(f)(sample))(maybeSample), fileName_1 + ":401:35")(self.sample));
|
388
|
+
};
|
149
389
|
}
|
150
390
|
/**
|
151
|
-
* @tsplus
|
391
|
+
* @tsplus pipeable fncts.test.Gen mapIO
|
152
392
|
*/
|
153
|
-
|
154
|
-
|
155
|
-
|
156
|
-
|
393
|
+
export function mapIO(f) {
|
394
|
+
return self => {
|
395
|
+
return new Gen(tsplus_module_7.mapIO(maybeSample => tsplus_module_12.match(() => tsplus_module_4.succeedNow(tsplus_module_6.nothing(), fileName_1 + ":413:30"), sample => tsplus_module_4.map(tsplus_module_6.just, fileName_1 + ":414:44")(tsplus_module_2.foreach(f)(sample)))(maybeSample), fileName_1 + ":411:24")(self.sample));
|
396
|
+
};
|
157
397
|
}
|
158
|
-
/**
|
159
|
-
* @tsplus static fncts.test.GenOps exponential
|
160
|
-
*/
|
161
|
-
|
162
|
-
const exponential_1 = /*#__PURE__*/map_1(uniform_1, n => -Math.log(1 - n));
|
163
|
-
export const exponential = exponential_1;
|
164
|
-
/**
|
165
|
-
* @tsplus static fncts.test.GenOps size
|
166
|
-
*/
|
167
|
-
|
168
|
-
const size_1 = /*#__PURE__*/fromIO_1(tsplus_module_8.size);
|
169
|
-
export const size = size_1;
|
170
398
|
/**
|
171
399
|
* @tsplus static fncts.test.GenOps medium
|
172
400
|
*/
|
173
|
-
|
174
401
|
export function medium(f, min = 0) {
|
175
|
-
return flatMap_1(reshrink_1(flatMap_1(
|
402
|
+
return flatMap_1(f)(reshrink_1(tsplus_module_2.shrinkIntegral(min))(flatMap_1(max => map_1(n => clamp(Math.round(n * max / 10.0), min, max))(exponential_1))(size_1)));
|
176
403
|
}
|
177
404
|
/**
|
178
405
|
* @tsplus static fncts.test.GenOps memo
|
179
406
|
*/
|
180
|
-
|
181
407
|
export function memo(builder) {
|
182
408
|
const previous = {};
|
183
409
|
let remainingDepth = 10;
|
184
410
|
return maxDepth => {
|
185
411
|
const n = maxDepth !== undefined ? maxDepth : remainingDepth;
|
186
|
-
|
187
412
|
if (!Object.prototype.hasOwnProperty.call(previous, n)) {
|
188
413
|
const prev = remainingDepth;
|
189
414
|
remainingDepth = n - 1;
|
190
415
|
previous[n] = builder(n);
|
191
416
|
remainingDepth = prev;
|
192
417
|
}
|
193
|
-
|
194
418
|
return previous[n];
|
195
419
|
};
|
196
420
|
}
|
197
421
|
/**
|
198
422
|
* @tsplus static fncts.test.GenOps nat
|
199
423
|
*/
|
200
|
-
|
201
424
|
export function nat(max = 0x7fffffff) {
|
202
|
-
return
|
425
|
+
return intWith_1({
|
203
426
|
min: 0,
|
204
427
|
max: clamp(max, 0, max)
|
205
428
|
});
|
@@ -207,82 +430,183 @@ export function nat(max = 0x7fffffff) {
|
|
207
430
|
/**
|
208
431
|
* @tsplus static fncts.test.GenOps oneOf
|
209
432
|
*/
|
210
|
-
|
211
|
-
|
212
|
-
if (tsplus_module_9.isEmpty(gens)) return empty_1;else return flatMap_1(int_1({
|
433
|
+
function oneOf_1(...gens) {
|
434
|
+
if (tsplus_module_13.isEmpty(gens)) return empty_1;else return flatMap_1(i => gens[i])(intWith_1({
|
213
435
|
min: 0,
|
214
436
|
max: gens.length - 1
|
215
|
-
})
|
437
|
+
}));
|
438
|
+
}
|
439
|
+
export function partial(properties) {
|
440
|
+
const entries = Object.entries(properties);
|
441
|
+
return tsplus_module_13.foldLeft(constant_1({}), (b, [k, gen]) => unwrap_1(tsplus_module_4.ifIO(() => tsplus_module_4.succeed(() => zipWith_1(gen, (r, a) => ({
|
442
|
+
...r,
|
443
|
+
[k]: a
|
444
|
+
}))(b), fileName_1 + ":476:50"), () => tsplus_module_4.succeed(() => b, fileName_1 + ":476:108"), fileName_1 + ":476:39")(tsplus_module_3.nextBoolean)))(entries);
|
216
445
|
}
|
217
446
|
/**
|
218
|
-
* @tsplus
|
447
|
+
* @tsplus static fncts.test.GenOps printableChar
|
219
448
|
*/
|
220
|
-
|
221
|
-
|
222
|
-
|
449
|
+
export const printableChar = /*#__PURE__*/char_1({
|
450
|
+
min: 0x20,
|
451
|
+
max: 0x7e
|
452
|
+
});
|
453
|
+
/**
|
454
|
+
* @tsplus pipeable fncts.test.Gen reshrink
|
455
|
+
*/
|
456
|
+
function reshrink_1(f) {
|
457
|
+
return gen => {
|
458
|
+
return new Gen(tsplus_module_7.map(maybeSample => tsplus_module_11.map(sample => f(sample.value))(maybeSample), fileName_1 + ":491:69")(gen.sample));
|
459
|
+
};
|
223
460
|
}
|
224
461
|
/**
|
225
462
|
* @tsplus static fncts.test.GenOps sized
|
226
463
|
*/
|
227
|
-
|
228
|
-
|
229
464
|
export function sized(f) {
|
230
|
-
return flatMap_1(
|
465
|
+
return flatMap_1(f)(size_1);
|
231
466
|
}
|
232
467
|
/**
|
233
468
|
* @tsplus static fncts.test.GenOps small
|
234
469
|
*/
|
235
|
-
|
236
470
|
function small_1(f, min = 0) {
|
237
|
-
return flatMap_1(reshrink_1(flatMap_1(
|
471
|
+
return flatMap_1(f)(reshrink_1(tsplus_module_2.shrinkIntegral(min))(flatMap_1(max => map_1(n => clamp(Math.round(n * max / 25), min, max))(exponential_1))(size_1)));
|
472
|
+
}
|
473
|
+
/**
|
474
|
+
* @tsplus static fncts.test.GenOps string16
|
475
|
+
*/
|
476
|
+
export function string16(constraints = {}) {
|
477
|
+
return string_1(constraints)(char16_1);
|
478
|
+
}
|
479
|
+
/**
|
480
|
+
* @tsplus pipeable fncts.test.Gen string
|
481
|
+
*/
|
482
|
+
function string_1(constraints = {}) {
|
483
|
+
return char => {
|
484
|
+
const min = constraints.minLength || 0;
|
485
|
+
return constraints.maxLength ? bounded_1(min, constraints.maxLength, n => stringN_1(n)(char)) : small_1(n => stringN_1(n)(char), min);
|
486
|
+
};
|
487
|
+
}
|
488
|
+
/**
|
489
|
+
* @tsplus pipeable fncts.test.Gen stringN
|
490
|
+
*/
|
491
|
+
function stringN_1(n) {
|
492
|
+
return char => {
|
493
|
+
return map_1(arr => arr.join(""))(arrayN_1(n)(char));
|
494
|
+
};
|
495
|
+
}
|
496
|
+
export function struct(properties) {
|
497
|
+
const entries = Object.entries(properties);
|
498
|
+
return tsplus_module_13.foldLeft(constant_1({}), (b, [k, gen]) => zipWith_1(gen, (out, a) => ({
|
499
|
+
...out,
|
500
|
+
[k]: a
|
501
|
+
}))(b))(entries);
|
238
502
|
}
|
239
503
|
/**
|
240
504
|
* @tsplus static fncts.test.GenOps unfoldGen
|
241
505
|
*/
|
242
|
-
|
243
|
-
|
244
506
|
export function unfoldGen(s, f) {
|
245
507
|
return small_1(n => unfoldGenN_1(n, s, f));
|
246
508
|
}
|
247
509
|
/**
|
248
510
|
* @tsplus static fncts.test.GenOps unfoldGenN
|
249
511
|
*/
|
250
|
-
|
251
512
|
function unfoldGenN_1(n, s, f) {
|
252
|
-
if (n <= 0) return constant_1(
|
513
|
+
if (n <= 0) return constant_1(tsplus_module_14.make());else return flatMap_1(([s, a]) => map_1(as => tsplus_module_9.append(a)(as))(unfoldGenN_1(n - 1, s, f)))(f(s));
|
253
514
|
}
|
254
515
|
/**
|
255
|
-
* @tsplus static fncts.test.GenOps
|
516
|
+
* @tsplus static fncts.test.GenOps unicodeChar
|
256
517
|
*/
|
257
|
-
|
258
|
-
|
259
|
-
|
260
|
-
|
518
|
+
const unicodeChar_1 = /*#__PURE__*/_char(0x0000, 0xffff - gapSize, unicodeToCharCode);
|
519
|
+
export const unicodeChar = unicodeChar_1;
|
520
|
+
/**
|
521
|
+
* @tsplus static fncts.test.GenOps unicodeString
|
522
|
+
*/
|
523
|
+
export function unicodeString(constraints = {}) {
|
524
|
+
return string_1(constraints)(unicodeChar_1);
|
525
|
+
}
|
526
|
+
/**
|
527
|
+
* @tsplus pipeable fncts.test.Gen uniqueArray
|
528
|
+
*/
|
529
|
+
export function uniqueArray(constraints = {}) {
|
530
|
+
return gen => {
|
531
|
+
return map_1(conc => tsplus_module_5.toArray(conc))(uniqueConc_1(constraints)(gen));
|
532
|
+
};
|
533
|
+
}
|
534
|
+
/**
|
535
|
+
* @tsplus pipeable fncts.test.Gen uniqueConc
|
536
|
+
*/
|
537
|
+
function uniqueConc_1(constraints = {}) {
|
538
|
+
return self => {
|
539
|
+
const minLength = constraints.minLength ?? 0;
|
540
|
+
const eq = constraints.eq ?? tsplus_module_16.makeEq({
|
541
|
+
equals: y => x => tsplus_module_15.strictEquals(x, y)
|
542
|
+
});
|
543
|
+
return constraints.maxLength ? bounded_1(minLength, constraints.maxLength, n => uniqueConcN_1(n, eq)(self)) : small_1(n => uniqueConcN_1(n, eq)(self), minLength);
|
544
|
+
};
|
545
|
+
}
|
546
|
+
/**
|
547
|
+
* @tsplus pipeable fncts.test.Gen uniqueConcN
|
548
|
+
*/
|
549
|
+
function uniqueConcN_1(n, /** @tsplus auto */E) {
|
550
|
+
return self => {
|
551
|
+
return tsplus_module_9.foldLeft(constant_1(tsplus_module_8.empty()), (gen, a) => zipWith_1(a, (as, a) => tsplus_module_9.elem(a, E)(as) ? as : tsplus_module_9.append(a)(as))(gen))(tsplus_module_10.replicate(n, self));
|
552
|
+
};
|
553
|
+
}
|
261
554
|
/**
|
262
555
|
* @tsplus static fncts.test.GenOps unwrap
|
263
556
|
*/
|
264
|
-
|
265
|
-
export function unwrap(effect) {
|
557
|
+
function unwrap_1(effect) {
|
266
558
|
return flatten_1(fromIO_1(effect));
|
267
559
|
}
|
268
560
|
/**
|
269
561
|
* @tsplus static fncts.test.GenOps weighted
|
270
562
|
*/
|
271
|
-
|
272
|
-
|
273
|
-
const
|
274
|
-
|
275
|
-
|
276
|
-
|
277
|
-
return flatMap_1(uniform_1, n => tsplus_module_6.getOrElse_(tsplus_module_13.getGte_(map, n), () => {
|
563
|
+
function weighted_1(...gens) {
|
564
|
+
const sum = tsplus_module_13.foldLeft(0, (b, a) => b + a)(gens.map(([, weight]) => weight));
|
565
|
+
const [map] = tsplus_module_13.foldLeft(tuple(tsplus_module_18.make(tsplus_module_17.Ord), 0), ([map, acc], [gen, d]) => {
|
566
|
+
if ((acc + d) / sum > acc / sum) return tuple(tsplus_module_18.set((acc + d) / sum, gen)(map), acc + d);else return tuple(map, acc);
|
567
|
+
})(gens);
|
568
|
+
return flatMap_1(n => tsplus_module_11.getOrElse(() => {
|
278
569
|
throw new NoSuchElementError("Gen.weighted");
|
279
|
-
}));
|
570
|
+
})(tsplus_module_18.getGte(n)(map)))(uniform_1);
|
571
|
+
}
|
572
|
+
/**
|
573
|
+
* @tsplus pipeable fncts.test.Gen zipWith
|
574
|
+
*/
|
575
|
+
function zipWith_1(that, f) {
|
576
|
+
return self => {
|
577
|
+
return flatMap_1(a => map_1(b => f(a, b))(that))(self);
|
578
|
+
};
|
280
579
|
}
|
281
580
|
/**
|
282
|
-
* @tsplus
|
581
|
+
* @tsplus pipeable fncts.test.Gen zip
|
283
582
|
*/
|
583
|
+
export function zip(that) {
|
584
|
+
return self => {
|
585
|
+
return zipWith_1(that, tuple)(self);
|
586
|
+
};
|
587
|
+
}
|
588
|
+
function _char(min, max, mapToCode) {
|
589
|
+
return map_1(n => String.fromCharCode(mapToCode(n)))(intWith_1({
|
590
|
+
min,
|
591
|
+
max
|
592
|
+
}));
|
593
|
+
}
|
594
|
+
function indexToPrintableIndex(v) {
|
595
|
+
return v < 95 ? v + 0x20 : v <= 0x7e ? v - 95 : v;
|
596
|
+
}
|
597
|
+
function base64ToCharCode(v) {
|
598
|
+
if (v < 26) return v + 65; // A-Z
|
599
|
+
if (v < 52) return v + 97 - 26; // a-z
|
600
|
+
if (v < 62) return v + 48 - 52; // 0-9
|
601
|
+
return v === 62 ? 43 : 47; // +/
|
602
|
+
}
|
603
|
+
|
604
|
+
function hexToCharCode(v) {
|
605
|
+
return v < 10 ? v + 48 // 0-9
|
606
|
+
: v + 97 - 10; // a-f
|
607
|
+
}
|
284
608
|
|
285
|
-
|
286
|
-
return
|
609
|
+
function unicodeToCharCode(v) {
|
610
|
+
return v < 0xd800 ? indexToPrintableIndex(v) : v + gapSize;
|
287
611
|
}
|
288
612
|
//# sourceMappingURL=api.mjs.map
|