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