ts-data-forge 5.0.1 → 5.1.1

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 (539) hide show
  1. package/README.md +101 -50
  2. package/dist/array/impl/array-utils-creation.d.mts +14 -0
  3. package/dist/array/impl/array-utils-creation.d.mts.map +1 -1
  4. package/dist/array/impl/array-utils-creation.mjs +12 -0
  5. package/dist/array/impl/array-utils-creation.mjs.map +1 -1
  6. package/dist/array/impl/array-utils-element-access.d.mts +10 -0
  7. package/dist/array/impl/array-utils-element-access.d.mts.map +1 -1
  8. package/dist/array/impl/array-utils-element-access.mjs +6 -0
  9. package/dist/array/impl/array-utils-element-access.mjs.map +1 -1
  10. package/dist/array/impl/array-utils-modification.d.mts +14 -0
  11. package/dist/array/impl/array-utils-modification.d.mts.map +1 -1
  12. package/dist/array/impl/array-utils-modification.mjs.map +1 -1
  13. package/dist/array/impl/array-utils-reducing-value.d.mts +34 -10
  14. package/dist/array/impl/array-utils-reducing-value.d.mts.map +1 -1
  15. package/dist/array/impl/array-utils-reducing-value.mjs.map +1 -1
  16. package/dist/array/impl/array-utils-search.d.mts +34 -4
  17. package/dist/array/impl/array-utils-search.d.mts.map +1 -1
  18. package/dist/array/impl/array-utils-search.mjs.map +1 -1
  19. package/dist/array/impl/array-utils-set-op.d.mts +20 -7
  20. package/dist/array/impl/array-utils-set-op.d.mts.map +1 -1
  21. package/dist/array/impl/array-utils-set-op.mjs +20 -7
  22. package/dist/array/impl/array-utils-set-op.mjs.map +1 -1
  23. package/dist/array/impl/array-utils-size.d.mts +5 -2
  24. package/dist/array/impl/array-utils-size.d.mts.map +1 -1
  25. package/dist/array/impl/array-utils-size.mjs +5 -2
  26. package/dist/array/impl/array-utils-size.mjs.map +1 -1
  27. package/dist/array/impl/array-utils-slice-clamped.d.mts +2 -0
  28. package/dist/array/impl/array-utils-slice-clamped.d.mts.map +1 -1
  29. package/dist/array/impl/array-utils-slice-clamped.mjs.map +1 -1
  30. package/dist/array/impl/array-utils-slicing.d.mts +17 -2
  31. package/dist/array/impl/array-utils-slicing.d.mts.map +1 -1
  32. package/dist/array/impl/array-utils-slicing.mjs +9 -2
  33. package/dist/array/impl/array-utils-slicing.mjs.map +1 -1
  34. package/dist/array/impl/array-utils-transformation.d.mts +27 -0
  35. package/dist/array/impl/array-utils-transformation.d.mts.map +1 -1
  36. package/dist/array/impl/array-utils-transformation.mjs +6 -0
  37. package/dist/array/impl/array-utils-transformation.mjs.map +1 -1
  38. package/dist/array/impl/array-utils-validation.d.mts +35 -18
  39. package/dist/array/impl/array-utils-validation.d.mts.map +1 -1
  40. package/dist/array/impl/array-utils-validation.mjs +25 -14
  41. package/dist/array/impl/array-utils-validation.mjs.map +1 -1
  42. package/dist/collections/imap-mapped.mjs.map +1 -1
  43. package/dist/collections/imap.d.mts +35 -15
  44. package/dist/collections/imap.d.mts.map +1 -1
  45. package/dist/collections/imap.mjs +5 -3
  46. package/dist/collections/imap.mjs.map +1 -1
  47. package/dist/collections/iset-mapped.d.mts +46 -19
  48. package/dist/collections/iset-mapped.d.mts.map +1 -1
  49. package/dist/collections/iset-mapped.mjs +9 -2
  50. package/dist/collections/iset-mapped.mjs.map +1 -1
  51. package/dist/collections/iset.d.mts +48 -19
  52. package/dist/collections/iset.d.mts.map +1 -1
  53. package/dist/collections/iset.mjs +9 -2
  54. package/dist/collections/iset.mjs.map +1 -1
  55. package/dist/collections/queue.d.mts +65 -25
  56. package/dist/collections/queue.d.mts.map +1 -1
  57. package/dist/collections/queue.mjs +13 -5
  58. package/dist/collections/queue.mjs.map +1 -1
  59. package/dist/collections/stack.d.mts +60 -25
  60. package/dist/collections/stack.d.mts.map +1 -1
  61. package/dist/collections/stack.mjs +12 -5
  62. package/dist/collections/stack.mjs.map +1 -1
  63. package/dist/entry-point.mjs +1 -1
  64. package/dist/functional/match.d.mts +1 -1
  65. package/dist/functional/match.d.mts.map +1 -1
  66. package/dist/functional/match.mjs.map +1 -1
  67. package/dist/functional/optional/impl/optional-expect-to-be.d.mts +3 -2
  68. package/dist/functional/optional/impl/optional-expect-to-be.d.mts.map +1 -1
  69. package/dist/functional/optional/impl/optional-expect-to-be.mjs.map +1 -1
  70. package/dist/functional/optional/impl/optional-filter.d.mts +3 -0
  71. package/dist/functional/optional/impl/optional-filter.d.mts.map +1 -1
  72. package/dist/functional/optional/impl/optional-filter.mjs.map +1 -1
  73. package/dist/functional/optional/impl/optional-flat-map.d.mts +2 -0
  74. package/dist/functional/optional/impl/optional-flat-map.d.mts.map +1 -1
  75. package/dist/functional/optional/impl/optional-flat-map.mjs.map +1 -1
  76. package/dist/functional/optional/impl/optional-from-nullable.d.mts +2 -0
  77. package/dist/functional/optional/impl/optional-from-nullable.d.mts.map +1 -1
  78. package/dist/functional/optional/impl/optional-from-nullable.mjs +2 -0
  79. package/dist/functional/optional/impl/optional-from-nullable.mjs.map +1 -1
  80. package/dist/functional/optional/impl/optional-is-none.d.mts +1 -1
  81. package/dist/functional/optional/impl/optional-is-none.mjs +1 -1
  82. package/dist/functional/optional/impl/optional-is-optional.d.mts +4 -2
  83. package/dist/functional/optional/impl/optional-is-optional.d.mts.map +1 -1
  84. package/dist/functional/optional/impl/optional-is-optional.mjs +4 -2
  85. package/dist/functional/optional/impl/optional-is-optional.mjs.map +1 -1
  86. package/dist/functional/optional/impl/optional-is-some.d.mts +2 -1
  87. package/dist/functional/optional/impl/optional-is-some.d.mts.map +1 -1
  88. package/dist/functional/optional/impl/optional-is-some.mjs +2 -1
  89. package/dist/functional/optional/impl/optional-is-some.mjs.map +1 -1
  90. package/dist/functional/optional/impl/optional-map.d.mts +2 -0
  91. package/dist/functional/optional/impl/optional-map.d.mts.map +1 -1
  92. package/dist/functional/optional/impl/optional-map.mjs.map +1 -1
  93. package/dist/functional/optional/impl/optional-none.d.mts +4 -2
  94. package/dist/functional/optional/impl/optional-none.d.mts.map +1 -1
  95. package/dist/functional/optional/impl/optional-none.mjs +4 -2
  96. package/dist/functional/optional/impl/optional-none.mjs.map +1 -1
  97. package/dist/functional/optional/impl/optional-or-else.d.mts +4 -0
  98. package/dist/functional/optional/impl/optional-or-else.d.mts.map +1 -1
  99. package/dist/functional/optional/impl/optional-or-else.mjs.map +1 -1
  100. package/dist/functional/optional/impl/optional-some.d.mts +5 -3
  101. package/dist/functional/optional/impl/optional-some.d.mts.map +1 -1
  102. package/dist/functional/optional/impl/optional-some.mjs +4 -2
  103. package/dist/functional/optional/impl/optional-some.mjs.map +1 -1
  104. package/dist/functional/optional/impl/optional-to-nullable.d.mts +4 -2
  105. package/dist/functional/optional/impl/optional-to-nullable.d.mts.map +1 -1
  106. package/dist/functional/optional/impl/optional-to-nullable.mjs +4 -2
  107. package/dist/functional/optional/impl/optional-to-nullable.mjs.map +1 -1
  108. package/dist/functional/optional/impl/optional-unwrap-or.d.mts +7 -4
  109. package/dist/functional/optional/impl/optional-unwrap-or.d.mts.map +1 -1
  110. package/dist/functional/optional/impl/optional-unwrap-or.mjs.map +1 -1
  111. package/dist/functional/optional/impl/optional-unwrap-throw.d.mts +2 -1
  112. package/dist/functional/optional/impl/optional-unwrap-throw.d.mts.map +1 -1
  113. package/dist/functional/optional/impl/optional-unwrap-throw.mjs +2 -1
  114. package/dist/functional/optional/impl/optional-unwrap-throw.mjs.map +1 -1
  115. package/dist/functional/optional/impl/optional-unwrap.d.mts +4 -2
  116. package/dist/functional/optional/impl/optional-unwrap.d.mts.map +1 -1
  117. package/dist/functional/optional/impl/optional-unwrap.mjs.map +1 -1
  118. package/dist/functional/optional/impl/optional-zip.d.mts +3 -1
  119. package/dist/functional/optional/impl/optional-zip.d.mts.map +1 -1
  120. package/dist/functional/optional/impl/optional-zip.mjs +3 -1
  121. package/dist/functional/optional/impl/optional-zip.mjs.map +1 -1
  122. package/dist/functional/pipe.d.mts +2 -2
  123. package/dist/functional/result/impl/result-err.d.mts +4 -2
  124. package/dist/functional/result/impl/result-err.d.mts.map +1 -1
  125. package/dist/functional/result/impl/result-err.mjs +3 -1
  126. package/dist/functional/result/impl/result-err.mjs.map +1 -1
  127. package/dist/functional/result/impl/result-expect-to-be.d.mts +3 -2
  128. package/dist/functional/result/impl/result-expect-to-be.d.mts.map +1 -1
  129. package/dist/functional/result/impl/result-expect-to-be.mjs.map +1 -1
  130. package/dist/functional/result/impl/result-flat-map.d.mts +5 -0
  131. package/dist/functional/result/impl/result-flat-map.d.mts.map +1 -1
  132. package/dist/functional/result/impl/result-flat-map.mjs.map +1 -1
  133. package/dist/functional/result/impl/result-fold.d.mts +4 -0
  134. package/dist/functional/result/impl/result-fold.d.mts.map +1 -1
  135. package/dist/functional/result/impl/result-fold.mjs.map +1 -1
  136. package/dist/functional/result/impl/result-from-promise.d.mts +4 -1
  137. package/dist/functional/result/impl/result-from-promise.d.mts.map +1 -1
  138. package/dist/functional/result/impl/result-from-promise.mjs +4 -1
  139. package/dist/functional/result/impl/result-from-promise.mjs.map +1 -1
  140. package/dist/functional/result/impl/result-from-throwable.d.mts +3 -1
  141. package/dist/functional/result/impl/result-from-throwable.d.mts.map +1 -1
  142. package/dist/functional/result/impl/result-from-throwable.mjs +3 -1
  143. package/dist/functional/result/impl/result-from-throwable.mjs.map +1 -1
  144. package/dist/functional/result/impl/result-is-err.d.mts +4 -2
  145. package/dist/functional/result/impl/result-is-err.d.mts.map +1 -1
  146. package/dist/functional/result/impl/result-is-err.mjs +4 -2
  147. package/dist/functional/result/impl/result-is-err.mjs.map +1 -1
  148. package/dist/functional/result/impl/result-is-ok.d.mts +4 -2
  149. package/dist/functional/result/impl/result-is-ok.d.mts.map +1 -1
  150. package/dist/functional/result/impl/result-is-ok.mjs +4 -2
  151. package/dist/functional/result/impl/result-is-ok.mjs.map +1 -1
  152. package/dist/functional/result/impl/result-is-result.d.mts +7 -3
  153. package/dist/functional/result/impl/result-is-result.d.mts.map +1 -1
  154. package/dist/functional/result/impl/result-is-result.mjs +7 -3
  155. package/dist/functional/result/impl/result-is-result.mjs.map +1 -1
  156. package/dist/functional/result/impl/result-map-err.d.mts +3 -0
  157. package/dist/functional/result/impl/result-map-err.d.mts.map +1 -1
  158. package/dist/functional/result/impl/result-map-err.mjs.map +1 -1
  159. package/dist/functional/result/impl/result-map.d.mts +4 -0
  160. package/dist/functional/result/impl/result-map.d.mts.map +1 -1
  161. package/dist/functional/result/impl/result-map.mjs.map +1 -1
  162. package/dist/functional/result/impl/result-ok.d.mts +4 -2
  163. package/dist/functional/result/impl/result-ok.d.mts.map +1 -1
  164. package/dist/functional/result/impl/result-ok.mjs +3 -1
  165. package/dist/functional/result/impl/result-ok.mjs.map +1 -1
  166. package/dist/functional/result/impl/result-or-else.d.mts +4 -0
  167. package/dist/functional/result/impl/result-or-else.d.mts.map +1 -1
  168. package/dist/functional/result/impl/result-or-else.mjs.map +1 -1
  169. package/dist/functional/result/impl/result-swap.d.mts +2 -0
  170. package/dist/functional/result/impl/result-swap.d.mts.map +1 -1
  171. package/dist/functional/result/impl/result-swap.mjs +2 -0
  172. package/dist/functional/result/impl/result-swap.mjs.map +1 -1
  173. package/dist/functional/result/impl/result-to-optional.d.mts +2 -0
  174. package/dist/functional/result/impl/result-to-optional.d.mts.map +1 -1
  175. package/dist/functional/result/impl/result-to-optional.mjs +2 -0
  176. package/dist/functional/result/impl/result-to-optional.mjs.map +1 -1
  177. package/dist/functional/result/impl/result-unwrap-err-or.d.mts +7 -4
  178. package/dist/functional/result/impl/result-unwrap-err-or.d.mts.map +1 -1
  179. package/dist/functional/result/impl/result-unwrap-err-or.mjs.map +1 -1
  180. package/dist/functional/result/impl/result-unwrap-err-throw.d.mts +3 -1
  181. package/dist/functional/result/impl/result-unwrap-err-throw.d.mts.map +1 -1
  182. package/dist/functional/result/impl/result-unwrap-err-throw.mjs +3 -1
  183. package/dist/functional/result/impl/result-unwrap-err-throw.mjs.map +1 -1
  184. package/dist/functional/result/impl/result-unwrap-err.d.mts +3 -2
  185. package/dist/functional/result/impl/result-unwrap-err.d.mts.map +1 -1
  186. package/dist/functional/result/impl/result-unwrap-err.mjs +3 -2
  187. package/dist/functional/result/impl/result-unwrap-err.mjs.map +1 -1
  188. package/dist/functional/result/impl/result-unwrap-ok-or.d.mts +7 -4
  189. package/dist/functional/result/impl/result-unwrap-ok-or.d.mts.map +1 -1
  190. package/dist/functional/result/impl/result-unwrap-ok-or.mjs.map +1 -1
  191. package/dist/functional/result/impl/result-unwrap-ok.d.mts +3 -2
  192. package/dist/functional/result/impl/result-unwrap-ok.d.mts.map +1 -1
  193. package/dist/functional/result/impl/result-unwrap-ok.mjs.map +1 -1
  194. package/dist/functional/result/impl/result-unwrap-throw.d.mts +3 -1
  195. package/dist/functional/result/impl/result-unwrap-throw.d.mts.map +1 -1
  196. package/dist/functional/result/impl/result-unwrap-throw.mjs +3 -1
  197. package/dist/functional/result/impl/result-unwrap-throw.mjs.map +1 -1
  198. package/dist/functional/result/impl/result-zip.d.mts +3 -1
  199. package/dist/functional/result/impl/result-zip.d.mts.map +1 -1
  200. package/dist/functional/result/impl/result-zip.mjs +3 -1
  201. package/dist/functional/result/impl/result-zip.mjs.map +1 -1
  202. package/dist/functional/ternary-result/impl/ternary-result-err.d.mts +3 -2
  203. package/dist/functional/ternary-result/impl/ternary-result-err.d.mts.map +1 -1
  204. package/dist/functional/ternary-result/impl/ternary-result-err.mjs +2 -1
  205. package/dist/functional/ternary-result/impl/ternary-result-err.mjs.map +1 -1
  206. package/dist/functional/ternary-result/impl/ternary-result-expect-to-be.d.mts +1 -0
  207. package/dist/functional/ternary-result/impl/ternary-result-expect-to-be.d.mts.map +1 -1
  208. package/dist/functional/ternary-result/impl/ternary-result-expect-to-be.mjs.map +1 -1
  209. package/dist/functional/ternary-result/impl/ternary-result-flat-map.d.mts +4 -0
  210. package/dist/functional/ternary-result/impl/ternary-result-flat-map.d.mts.map +1 -1
  211. package/dist/functional/ternary-result/impl/ternary-result-flat-map.mjs.map +1 -1
  212. package/dist/functional/ternary-result/impl/ternary-result-fold.d.mts +2 -0
  213. package/dist/functional/ternary-result/impl/ternary-result-fold.d.mts.map +1 -1
  214. package/dist/functional/ternary-result/impl/ternary-result-fold.mjs.map +1 -1
  215. package/dist/functional/ternary-result/impl/ternary-result-from-promise.d.mts +3 -1
  216. package/dist/functional/ternary-result/impl/ternary-result-from-promise.d.mts.map +1 -1
  217. package/dist/functional/ternary-result/impl/ternary-result-from-promise.mjs +3 -1
  218. package/dist/functional/ternary-result/impl/ternary-result-from-promise.mjs.map +1 -1
  219. package/dist/functional/ternary-result/impl/ternary-result-from-throwable.d.mts +3 -1
  220. package/dist/functional/ternary-result/impl/ternary-result-from-throwable.d.mts.map +1 -1
  221. package/dist/functional/ternary-result/impl/ternary-result-from-throwable.mjs +3 -1
  222. package/dist/functional/ternary-result/impl/ternary-result-from-throwable.mjs.map +1 -1
  223. package/dist/functional/ternary-result/impl/ternary-result-is-ok.d.mts +1 -0
  224. package/dist/functional/ternary-result/impl/ternary-result-is-ok.d.mts.map +1 -1
  225. package/dist/functional/ternary-result/impl/ternary-result-is-ok.mjs +1 -0
  226. package/dist/functional/ternary-result/impl/ternary-result-is-ok.mjs.map +1 -1
  227. package/dist/functional/ternary-result/impl/ternary-result-is-ternary-result.d.mts +7 -3
  228. package/dist/functional/ternary-result/impl/ternary-result-is-ternary-result.d.mts.map +1 -1
  229. package/dist/functional/ternary-result/impl/ternary-result-is-ternary-result.mjs +7 -3
  230. package/dist/functional/ternary-result/impl/ternary-result-is-ternary-result.mjs.map +1 -1
  231. package/dist/functional/ternary-result/impl/ternary-result-is-warn.d.mts +1 -0
  232. package/dist/functional/ternary-result/impl/ternary-result-is-warn.d.mts.map +1 -1
  233. package/dist/functional/ternary-result/impl/ternary-result-is-warn.mjs +1 -0
  234. package/dist/functional/ternary-result/impl/ternary-result-is-warn.mjs.map +1 -1
  235. package/dist/functional/ternary-result/impl/ternary-result-map-err.d.mts +3 -0
  236. package/dist/functional/ternary-result/impl/ternary-result-map-err.d.mts.map +1 -1
  237. package/dist/functional/ternary-result/impl/ternary-result-map-err.mjs.map +1 -1
  238. package/dist/functional/ternary-result/impl/ternary-result-map-warn.d.mts +3 -0
  239. package/dist/functional/ternary-result/impl/ternary-result-map-warn.d.mts.map +1 -1
  240. package/dist/functional/ternary-result/impl/ternary-result-map-warn.mjs.map +1 -1
  241. package/dist/functional/ternary-result/impl/ternary-result-map.d.mts +6 -0
  242. package/dist/functional/ternary-result/impl/ternary-result-map.d.mts.map +1 -1
  243. package/dist/functional/ternary-result/impl/ternary-result-map.mjs.map +1 -1
  244. package/dist/functional/ternary-result/impl/ternary-result-ok.d.mts +1 -1
  245. package/dist/functional/ternary-result/impl/ternary-result-ok.d.mts.map +1 -1
  246. package/dist/functional/ternary-result/impl/ternary-result-ok.mjs.map +1 -1
  247. package/dist/functional/ternary-result/impl/ternary-result-or-else.d.mts +2 -0
  248. package/dist/functional/ternary-result/impl/ternary-result-or-else.d.mts.map +1 -1
  249. package/dist/functional/ternary-result/impl/ternary-result-or-else.mjs.map +1 -1
  250. package/dist/functional/ternary-result/impl/ternary-result-to-optional.d.mts +2 -0
  251. package/dist/functional/ternary-result/impl/ternary-result-to-optional.d.mts.map +1 -1
  252. package/dist/functional/ternary-result/impl/ternary-result-to-optional.mjs +2 -0
  253. package/dist/functional/ternary-result/impl/ternary-result-to-optional.mjs.map +1 -1
  254. package/dist/functional/ternary-result/impl/ternary-result-unwrap-err-or.d.mts +2 -0
  255. package/dist/functional/ternary-result/impl/ternary-result-unwrap-err-or.d.mts.map +1 -1
  256. package/dist/functional/ternary-result/impl/ternary-result-unwrap-err-or.mjs.map +1 -1
  257. package/dist/functional/ternary-result/impl/ternary-result-unwrap-err-throw.d.mts +1 -0
  258. package/dist/functional/ternary-result/impl/ternary-result-unwrap-err-throw.d.mts.map +1 -1
  259. package/dist/functional/ternary-result/impl/ternary-result-unwrap-err-throw.mjs +1 -0
  260. package/dist/functional/ternary-result/impl/ternary-result-unwrap-err-throw.mjs.map +1 -1
  261. package/dist/functional/ternary-result/impl/ternary-result-unwrap-err.d.mts +2 -0
  262. package/dist/functional/ternary-result/impl/ternary-result-unwrap-err.d.mts.map +1 -1
  263. package/dist/functional/ternary-result/impl/ternary-result-unwrap-err.mjs +2 -0
  264. package/dist/functional/ternary-result/impl/ternary-result-unwrap-err.mjs.map +1 -1
  265. package/dist/functional/ternary-result/impl/ternary-result-unwrap-ok-or.d.mts +2 -0
  266. package/dist/functional/ternary-result/impl/ternary-result-unwrap-ok-or.d.mts.map +1 -1
  267. package/dist/functional/ternary-result/impl/ternary-result-unwrap-ok-or.mjs.map +1 -1
  268. package/dist/functional/ternary-result/impl/ternary-result-unwrap-ok.d.mts +2 -0
  269. package/dist/functional/ternary-result/impl/ternary-result-unwrap-ok.d.mts.map +1 -1
  270. package/dist/functional/ternary-result/impl/ternary-result-unwrap-ok.mjs.map +1 -1
  271. package/dist/functional/ternary-result/impl/ternary-result-unwrap-throw.d.mts +1 -0
  272. package/dist/functional/ternary-result/impl/ternary-result-unwrap-throw.d.mts.map +1 -1
  273. package/dist/functional/ternary-result/impl/ternary-result-unwrap-throw.mjs +1 -0
  274. package/dist/functional/ternary-result/impl/ternary-result-unwrap-throw.mjs.map +1 -1
  275. package/dist/functional/ternary-result/impl/ternary-result-unwrap-warn-or.d.mts +2 -0
  276. package/dist/functional/ternary-result/impl/ternary-result-unwrap-warn-or.d.mts.map +1 -1
  277. package/dist/functional/ternary-result/impl/ternary-result-unwrap-warn-or.mjs.map +1 -1
  278. package/dist/functional/ternary-result/impl/ternary-result-unwrap-warn-throw.d.mts +1 -0
  279. package/dist/functional/ternary-result/impl/ternary-result-unwrap-warn-throw.d.mts.map +1 -1
  280. package/dist/functional/ternary-result/impl/ternary-result-unwrap-warn-throw.mjs +1 -0
  281. package/dist/functional/ternary-result/impl/ternary-result-unwrap-warn-throw.mjs.map +1 -1
  282. package/dist/functional/ternary-result/impl/ternary-result-unwrap-warn.d.mts +2 -0
  283. package/dist/functional/ternary-result/impl/ternary-result-unwrap-warn.d.mts.map +1 -1
  284. package/dist/functional/ternary-result/impl/ternary-result-unwrap-warn.mjs +2 -0
  285. package/dist/functional/ternary-result/impl/ternary-result-unwrap-warn.mjs.map +1 -1
  286. package/dist/functional/ternary-result/impl/ternary-result-warn.d.mts +1 -1
  287. package/dist/functional/ternary-result/impl/ternary-result-warn.d.mts.map +1 -1
  288. package/dist/functional/ternary-result/impl/ternary-result-warn.mjs.map +1 -1
  289. package/dist/functional/ternary-result/impl/ternary-result-zip.d.mts +4 -0
  290. package/dist/functional/ternary-result/impl/ternary-result-zip.d.mts.map +1 -1
  291. package/dist/functional/ternary-result/impl/ternary-result-zip.mjs +4 -0
  292. package/dist/functional/ternary-result/impl/ternary-result-zip.mjs.map +1 -1
  293. package/dist/globals.d.mts +12 -1
  294. package/dist/guard/has-key.d.mts +6 -3
  295. package/dist/guard/has-key.d.mts.map +1 -1
  296. package/dist/guard/has-key.mjs +2 -2
  297. package/dist/guard/index.mjs +1 -1
  298. package/dist/guard/is-record.d.mts +31 -0
  299. package/dist/guard/is-record.d.mts.map +1 -1
  300. package/dist/guard/is-record.mjs +32 -1
  301. package/dist/guard/is-record.mjs.map +1 -1
  302. package/dist/guard/is-type.d.mts +3 -0
  303. package/dist/guard/is-type.d.mts.map +1 -1
  304. package/dist/guard/is-type.mjs +3 -0
  305. package/dist/guard/is-type.mjs.map +1 -1
  306. package/dist/guard/key-is-in.d.mts +3 -2
  307. package/dist/guard/key-is-in.d.mts.map +1 -1
  308. package/dist/guard/key-is-in.mjs +3 -2
  309. package/dist/guard/key-is-in.mjs.map +1 -1
  310. package/dist/index.mjs +1 -1
  311. package/dist/iterator/range.d.mts +4 -0
  312. package/dist/iterator/range.d.mts.map +1 -1
  313. package/dist/iterator/range.mjs +1 -0
  314. package/dist/iterator/range.mjs.map +1 -1
  315. package/dist/json/json.d.mts +42 -21
  316. package/dist/json/json.d.mts.map +1 -1
  317. package/dist/json/json.mjs +42 -21
  318. package/dist/json/json.mjs.map +1 -1
  319. package/dist/number/branded-types/int.d.mts +33 -19
  320. package/dist/number/branded-types/int.d.mts.map +1 -1
  321. package/dist/number/branded-types/int.mjs +33 -19
  322. package/dist/number/branded-types/int.mjs.map +1 -1
  323. package/dist/number/branded-types/non-zero-safe-int.mjs +2 -2
  324. package/dist/number/branded-types/positive-int.d.mts +34 -20
  325. package/dist/number/branded-types/positive-int.d.mts.map +1 -1
  326. package/dist/number/branded-types/positive-int.mjs +34 -20
  327. package/dist/number/branded-types/positive-int.mjs.map +1 -1
  328. package/dist/number/branded-types/positive-safe-int.d.mts +47 -26
  329. package/dist/number/branded-types/positive-safe-int.d.mts.map +1 -1
  330. package/dist/number/branded-types/positive-safe-int.mjs +48 -27
  331. package/dist/number/branded-types/positive-safe-int.mjs.map +1 -1
  332. package/dist/number/branded-types/safe-int.d.mts +48 -27
  333. package/dist/number/branded-types/safe-int.d.mts.map +1 -1
  334. package/dist/number/branded-types/safe-int.mjs +50 -29
  335. package/dist/number/branded-types/safe-int.mjs.map +1 -1
  336. package/dist/number/branded-types/safe-uint.mjs +1 -1
  337. package/dist/number/branded-types/uint.d.mts +31 -19
  338. package/dist/number/branded-types/uint.d.mts.map +1 -1
  339. package/dist/number/branded-types/uint.mjs +31 -19
  340. package/dist/number/branded-types/uint.mjs.map +1 -1
  341. package/dist/number/num.d.mts +29 -20
  342. package/dist/number/num.d.mts.map +1 -1
  343. package/dist/number/num.mjs +24 -17
  344. package/dist/number/num.mjs.map +1 -1
  345. package/dist/number/refined-number-utils.d.mts +33 -11
  346. package/dist/number/refined-number-utils.d.mts.map +1 -1
  347. package/dist/number/refined-number-utils.mjs +33 -11
  348. package/dist/number/refined-number-utils.mjs.map +1 -1
  349. package/dist/object/object.d.mts +12 -3
  350. package/dist/object/object.d.mts.map +1 -1
  351. package/dist/object/object.mjs +10 -3
  352. package/dist/object/object.mjs.map +1 -1
  353. package/dist/others/map-nullable.mjs.map +1 -1
  354. package/dist/others/tuple.d.mts +14 -3
  355. package/dist/others/tuple.d.mts.map +1 -1
  356. package/dist/others/tuple.mjs +14 -3
  357. package/dist/others/tuple.mjs.map +1 -1
  358. package/dist/others/unknown-to-string.d.mts.map +1 -1
  359. package/dist/others/unknown-to-string.mjs.map +1 -1
  360. package/dist/promise/promise.d.mts +8 -4
  361. package/dist/promise/promise.d.mts.map +1 -1
  362. package/dist/promise/promise.mjs +8 -4
  363. package/dist/promise/promise.mjs.map +1 -1
  364. package/package.json +26 -28
  365. package/src/array/impl/array-utils-creation.mts +20 -0
  366. package/src/array/impl/array-utils-creation.test.mts +72 -1
  367. package/src/array/impl/array-utils-element-access.mts +13 -0
  368. package/src/array/impl/array-utils-element-access.test.mts +36 -15
  369. package/src/array/impl/array-utils-iterators.test.mts +17 -0
  370. package/src/array/impl/array-utils-modification.mts +78 -19
  371. package/src/array/impl/array-utils-modification.test.mts +75 -0
  372. package/src/array/impl/array-utils-overload-type-error.test.mts +19 -0
  373. package/src/array/impl/array-utils-reducing-value.mts +61 -16
  374. package/src/array/impl/array-utils-reducing-value.test.mts +107 -25
  375. package/src/array/impl/array-utils-search.mts +57 -4
  376. package/src/array/impl/array-utils-search.test.mts +61 -10
  377. package/src/array/impl/array-utils-set-op.mts +26 -7
  378. package/src/array/impl/array-utils-set-op.test.mts +129 -13
  379. package/src/array/impl/array-utils-size.mts +5 -2
  380. package/src/array/impl/array-utils-size.test.mts +1 -0
  381. package/src/array/impl/array-utils-slice-clamped.mts +7 -0
  382. package/src/array/impl/array-utils-slice-clamped.test.mts +20 -0
  383. package/src/array/impl/array-utils-slicing.mts +29 -2
  384. package/src/array/impl/array-utils-slicing.test.mts +57 -0
  385. package/src/array/impl/array-utils-transformation.mts +58 -0
  386. package/src/array/impl/array-utils-transformation.test.mts +115 -3
  387. package/src/array/impl/array-utils-validation.mts +41 -18
  388. package/src/array/impl/array-utils-validation.test.mts +176 -78
  389. package/src/array/impl/array.test.mts +18 -6
  390. package/src/collections/imap-mapped.mts +11 -0
  391. package/src/collections/imap-mapped.test.mts +86 -18
  392. package/src/collections/imap.mts +47 -15
  393. package/src/collections/imap.test.mts +137 -31
  394. package/src/collections/iset-mapped.mts +54 -19
  395. package/src/collections/iset-mapped.test.mts +163 -52
  396. package/src/collections/iset.mts +53 -19
  397. package/src/collections/iset.test.mts +323 -130
  398. package/src/collections/queue.mts +78 -25
  399. package/src/collections/queue.test.mts +65 -35
  400. package/src/collections/stack.mts +67 -25
  401. package/src/collections/stack.test.mts +59 -15
  402. package/src/functional/match.mts +17 -1
  403. package/src/functional/match.test.mts +2 -0
  404. package/src/functional/optional/impl/optional-expect-to-be.mts +5 -2
  405. package/src/functional/optional/impl/optional-filter.mts +6 -0
  406. package/src/functional/optional/impl/optional-flat-map.mts +4 -0
  407. package/src/functional/optional/impl/optional-from-nullable.mts +2 -0
  408. package/src/functional/optional/impl/optional-is-none.mts +1 -1
  409. package/src/functional/optional/impl/optional-is-optional.mts +4 -2
  410. package/src/functional/optional/impl/optional-is-some.mts +2 -1
  411. package/src/functional/optional/impl/optional-map.mts +5 -0
  412. package/src/functional/optional/impl/optional-none.mts +4 -2
  413. package/src/functional/optional/impl/optional-or-else.mts +6 -0
  414. package/src/functional/optional/impl/optional-some.mts +5 -3
  415. package/src/functional/optional/impl/optional-to-nullable.mts +4 -2
  416. package/src/functional/optional/impl/optional-unwrap-or.mts +9 -4
  417. package/src/functional/optional/impl/optional-unwrap-throw.mts +2 -1
  418. package/src/functional/optional/impl/optional-unwrap.mts +4 -2
  419. package/src/functional/optional/impl/optional-zip.mts +3 -1
  420. package/src/functional/optional.test.mts +126 -54
  421. package/src/functional/pipe.mts +2 -2
  422. package/src/functional/pipe.test.mts +7 -4
  423. package/src/functional/result/impl/result-err.mts +4 -2
  424. package/src/functional/result/impl/result-expect-to-be.mts +5 -2
  425. package/src/functional/result/impl/result-flat-map.mts +7 -0
  426. package/src/functional/result/impl/result-fold.mts +6 -0
  427. package/src/functional/result/impl/result-from-promise.mts +4 -1
  428. package/src/functional/result/impl/result-from-throwable.mts +5 -1
  429. package/src/functional/result/impl/result-is-err.mts +4 -2
  430. package/src/functional/result/impl/result-is-ok.mts +4 -2
  431. package/src/functional/result/impl/result-is-result.mts +7 -3
  432. package/src/functional/result/impl/result-map-err.mts +5 -0
  433. package/src/functional/result/impl/result-map.mts +6 -0
  434. package/src/functional/result/impl/result-ok.mts +4 -2
  435. package/src/functional/result/impl/result-or-else.mts +6 -0
  436. package/src/functional/result/impl/result-swap.mts +2 -0
  437. package/src/functional/result/impl/result-to-optional.mts +2 -0
  438. package/src/functional/result/impl/result-unwrap-err-or.mts +9 -4
  439. package/src/functional/result/impl/result-unwrap-err-throw.mts +3 -1
  440. package/src/functional/result/impl/result-unwrap-err.mts +3 -2
  441. package/src/functional/result/impl/result-unwrap-ok-or.mts +9 -4
  442. package/src/functional/result/impl/result-unwrap-ok.mts +4 -2
  443. package/src/functional/result/impl/result-unwrap-throw.mts +3 -1
  444. package/src/functional/result/impl/result-zip.mts +3 -1
  445. package/src/functional/result.test.mts +182 -152
  446. package/src/functional/ternary-result/impl/ternary-result-err.mts +3 -2
  447. package/src/functional/ternary-result/impl/ternary-result-expect-to-be.mts +4 -0
  448. package/src/functional/ternary-result/impl/ternary-result-flat-map.mts +7 -0
  449. package/src/functional/ternary-result/impl/ternary-result-fold.mts +5 -0
  450. package/src/functional/ternary-result/impl/ternary-result-from-promise.mts +3 -1
  451. package/src/functional/ternary-result/impl/ternary-result-from-throwable.mts +4 -1
  452. package/src/functional/ternary-result/impl/ternary-result-is-ok.mts +1 -0
  453. package/src/functional/ternary-result/impl/ternary-result-is-ternary-result.mts +7 -3
  454. package/src/functional/ternary-result/impl/ternary-result-is-warn.mts +1 -0
  455. package/src/functional/ternary-result/impl/ternary-result-map-err.mts +6 -0
  456. package/src/functional/ternary-result/impl/ternary-result-map-warn.mts +6 -0
  457. package/src/functional/ternary-result/impl/ternary-result-map.mts +9 -0
  458. package/src/functional/ternary-result/impl/ternary-result-ok.mts +1 -1
  459. package/src/functional/ternary-result/impl/ternary-result-or-else.mts +5 -0
  460. package/src/functional/ternary-result/impl/ternary-result-to-optional.mts +2 -0
  461. package/src/functional/ternary-result/impl/ternary-result-unwrap-err-or.mts +5 -0
  462. package/src/functional/ternary-result/impl/ternary-result-unwrap-err-throw.mts +1 -0
  463. package/src/functional/ternary-result/impl/ternary-result-unwrap-err.mts +2 -0
  464. package/src/functional/ternary-result/impl/ternary-result-unwrap-ok-or.mts +5 -0
  465. package/src/functional/ternary-result/impl/ternary-result-unwrap-ok.mts +3 -0
  466. package/src/functional/ternary-result/impl/ternary-result-unwrap-throw.mts +1 -0
  467. package/src/functional/ternary-result/impl/ternary-result-unwrap-warn-or.mts +5 -0
  468. package/src/functional/ternary-result/impl/ternary-result-unwrap-warn-throw.mts +1 -0
  469. package/src/functional/ternary-result/impl/ternary-result-unwrap-warn.mts +2 -0
  470. package/src/functional/ternary-result/impl/ternary-result-warn.mts +4 -1
  471. package/src/functional/ternary-result/impl/ternary-result-zip.mts +4 -0
  472. package/src/functional/ternary-result.test.mts +99 -8
  473. package/src/globals.d.mts +12 -1
  474. package/src/guard/has-key.mts +8 -5
  475. package/src/guard/has-key.test.mts +9 -5
  476. package/src/guard/is-error.test.mts +143 -0
  477. package/src/guard/is-non-empty-string.test.mts +44 -24
  478. package/src/guard/is-non-null-object.test.mts +45 -26
  479. package/src/guard/is-primitive.test.mts +51 -28
  480. package/src/guard/is-record.mts +34 -0
  481. package/src/guard/is-record.test.mts +28 -7
  482. package/src/guard/is-type.mts +3 -0
  483. package/src/guard/is-type.test.mts +285 -155
  484. package/src/guard/key-is-in.mts +3 -2
  485. package/src/guard/key-is-in.test.mts +2 -2
  486. package/src/iterator/range.mts +9 -0
  487. package/src/json/json.mts +50 -21
  488. package/src/json/json.test.mts +224 -176
  489. package/src/number/branded-types/finite-number.test.mts +51 -11
  490. package/src/number/branded-types/int.mts +33 -19
  491. package/src/number/branded-types/int.test.mts +56 -14
  492. package/src/number/branded-types/int16.test.mts +63 -16
  493. package/src/number/branded-types/int32.test.mts +63 -16
  494. package/src/number/branded-types/non-negative-finite-number.test.mts +52 -12
  495. package/src/number/branded-types/non-negative-int16.test.mts +59 -16
  496. package/src/number/branded-types/non-negative-int32.test.mts +59 -16
  497. package/src/number/branded-types/non-zero-finite-number.test.mts +65 -14
  498. package/src/number/branded-types/non-zero-int.test.mts +72 -19
  499. package/src/number/branded-types/non-zero-int16.test.mts +60 -16
  500. package/src/number/branded-types/non-zero-int32.test.mts +60 -16
  501. package/src/number/branded-types/non-zero-safe-int.mts +2 -2
  502. package/src/number/branded-types/non-zero-safe-int.test.mts +85 -23
  503. package/src/number/branded-types/non-zero-uint16.test.mts +53 -16
  504. package/src/number/branded-types/non-zero-uint32.test.mts +53 -16
  505. package/src/number/branded-types/positive-finite-number.test.mts +59 -14
  506. package/src/number/branded-types/positive-int.mts +34 -20
  507. package/src/number/branded-types/positive-int.test.mts +64 -17
  508. package/src/number/branded-types/positive-int16.test.mts +50 -15
  509. package/src/number/branded-types/positive-int32.test.mts +50 -15
  510. package/src/number/branded-types/positive-safe-int.mts +48 -27
  511. package/src/number/branded-types/positive-safe-int.test.mts +68 -19
  512. package/src/number/branded-types/positive-uint16.test.mts +53 -16
  513. package/src/number/branded-types/positive-uint32.test.mts +53 -16
  514. package/src/number/branded-types/safe-int.mts +50 -29
  515. package/src/number/branded-types/safe-int.test.mts +70 -18
  516. package/src/number/branded-types/safe-uint.mts +1 -1
  517. package/src/number/branded-types/safe-uint.test.mts +65 -17
  518. package/src/number/branded-types/uint.mts +31 -19
  519. package/src/number/branded-types/uint.test.mts +58 -15
  520. package/src/number/branded-types/uint16.test.mts +56 -15
  521. package/src/number/branded-types/uint32.test.mts +56 -15
  522. package/src/number/enum/int8.test.mts +7 -1
  523. package/src/number/enum/uint8.test.mts +7 -1
  524. package/src/number/num.mts +32 -21
  525. package/src/number/num.test.mts +88 -26
  526. package/src/number/refined-number-utils.mts +38 -13
  527. package/src/object/object.mts +19 -3
  528. package/src/object/object.test.mts +16 -6
  529. package/src/others/cast-mutable.test.mts +8 -1
  530. package/src/others/cast-readonly.test.mts +21 -4
  531. package/src/others/if-then.test.mts +40 -24
  532. package/src/others/map-nullable.mts +3 -0
  533. package/src/others/map-nullable.test.mts +27 -0
  534. package/src/others/memoize-function.test.mts +41 -0
  535. package/src/others/tuple.mts +14 -3
  536. package/src/others/unknown-to-string.mts +2 -0
  537. package/src/others/unknown-to-string.test.mts +10 -0
  538. package/src/promise/promise.mts +8 -4
  539. package/src/promise/promise.test.mts +8 -13
@@ -10,15 +10,21 @@ describe('NonZeroSafeInt test', () => {
10
10
  describe(asNonZeroSafeInt, () => {
11
11
  test('accepts valid non-zero safe integers', () => {
12
12
  expect(() => asNonZeroSafeInt(1)).not.toThrow();
13
+
13
14
  expect(() => asNonZeroSafeInt(-1)).not.toThrow();
15
+
14
16
  expect(() => asNonZeroSafeInt(42)).not.toThrow();
17
+
15
18
  expect(() => asNonZeroSafeInt(-42)).not.toThrow();
19
+
16
20
  expect(() => asNonZeroSafeInt(Number.MAX_SAFE_INTEGER)).not.toThrow();
21
+
17
22
  expect(() => asNonZeroSafeInt(Number.MIN_SAFE_INTEGER)).not.toThrow();
18
23
  });
19
24
 
20
25
  test('rejects zero', () => {
21
26
  expect(() => asNonZeroSafeInt(0)).toThrow(TypeError);
27
+
22
28
  expect(() => asNonZeroSafeInt(-0)).toThrow(TypeError);
23
29
  });
24
30
 
@@ -26,28 +32,37 @@ describe('NonZeroSafeInt test', () => {
26
32
  expect(() => asNonZeroSafeInt(Number.MAX_SAFE_INTEGER + 1)).toThrow(
27
33
  TypeError,
28
34
  );
35
+
29
36
  expect(() => asNonZeroSafeInt(Number.MIN_SAFE_INTEGER - 1)).toThrow(
30
37
  TypeError,
31
38
  );
39
+
32
40
  expect(() => asNonZeroSafeInt(Number.MAX_VALUE)).toThrow(TypeError);
41
+
33
42
  expect(() => asNonZeroSafeInt(-Number.MAX_VALUE)).toThrow(TypeError);
34
43
  });
35
44
 
36
45
  test('rejects non-integers', () => {
37
46
  expect(() => asNonZeroSafeInt(Number.NaN)).toThrow(TypeError);
47
+
38
48
  expect(() => asNonZeroSafeInt(Number.POSITIVE_INFINITY)).toThrow(
39
49
  TypeError,
40
50
  );
51
+
41
52
  expect(() => asNonZeroSafeInt(Number.NEGATIVE_INFINITY)).toThrow(
42
53
  TypeError,
43
54
  );
55
+
44
56
  expect(() => asNonZeroSafeInt(1.2)).toThrow(TypeError);
57
+
45
58
  expect(() => asNonZeroSafeInt(-3.4)).toThrow(TypeError);
46
59
  });
47
60
 
48
61
  test('returns the same value for valid inputs', () => {
49
62
  expect(asNonZeroSafeInt(5)).toBe(5);
63
+
50
64
  expect(asNonZeroSafeInt(-10)).toBe(-10);
65
+
51
66
  expect(asNonZeroSafeInt(1)).toBe(1);
52
67
  });
53
68
 
@@ -70,39 +85,54 @@ describe('NonZeroSafeInt test', () => {
70
85
 
71
86
  describe(isNonZeroSafeInt, () => {
72
87
  test('correctly identifies non-zero safe integers', () => {
73
- expect(isNonZeroSafeInt(1)).toBe(true);
74
- expect(isNonZeroSafeInt(-1)).toBe(true);
75
- expect(isNonZeroSafeInt(42)).toBe(true);
76
- expect(isNonZeroSafeInt(-42)).toBe(true);
77
- expect(isNonZeroSafeInt(Number.MAX_SAFE_INTEGER)).toBe(true);
78
- expect(isNonZeroSafeInt(Number.MIN_SAFE_INTEGER)).toBe(true);
88
+ assert.isTrue(isNonZeroSafeInt(1));
89
+
90
+ assert.isTrue(isNonZeroSafeInt(-1));
91
+
92
+ assert.isTrue(isNonZeroSafeInt(42));
93
+
94
+ assert.isTrue(isNonZeroSafeInt(-42));
95
+
96
+ assert.isTrue(isNonZeroSafeInt(Number.MAX_SAFE_INTEGER));
97
+
98
+ assert.isTrue(isNonZeroSafeInt(Number.MIN_SAFE_INTEGER));
79
99
  });
80
100
 
81
101
  test('correctly identifies zero', () => {
82
- expect(isNonZeroSafeInt(0)).toBe(false);
83
- expect(isNonZeroSafeInt(-0)).toBe(false);
102
+ assert.isFalse(isNonZeroSafeInt(0));
103
+
104
+ assert.isFalse(isNonZeroSafeInt(-0));
84
105
  });
85
106
 
86
107
  test('correctly identifies values outside safe integer range', () => {
87
- expect(isNonZeroSafeInt(Number.MAX_SAFE_INTEGER + 1)).toBe(false);
88
- expect(isNonZeroSafeInt(Number.MIN_SAFE_INTEGER - 1)).toBe(false);
89
- expect(isNonZeroSafeInt(Number.MAX_VALUE)).toBe(false);
90
- expect(isNonZeroSafeInt(-Number.MAX_VALUE)).toBe(false);
108
+ assert.isFalse(isNonZeroSafeInt(Number.MAX_SAFE_INTEGER + 1));
109
+
110
+ assert.isFalse(isNonZeroSafeInt(Number.MIN_SAFE_INTEGER - 1));
111
+
112
+ assert.isFalse(isNonZeroSafeInt(Number.MAX_VALUE));
113
+
114
+ assert.isFalse(isNonZeroSafeInt(-Number.MAX_VALUE));
91
115
  });
92
116
 
93
117
  test('correctly identifies non-integers', () => {
94
- expect(isNonZeroSafeInt(Number.NaN)).toBe(false);
95
- expect(isNonZeroSafeInt(Number.POSITIVE_INFINITY)).toBe(false);
96
- expect(isNonZeroSafeInt(Number.NEGATIVE_INFINITY)).toBe(false);
97
- expect(isNonZeroSafeInt(1.2)).toBe(false);
98
- expect(isNonZeroSafeInt(-3.4)).toBe(false);
118
+ assert.isFalse(isNonZeroSafeInt(Number.NaN));
119
+
120
+ assert.isFalse(isNonZeroSafeInt(Number.POSITIVE_INFINITY));
121
+
122
+ assert.isFalse(isNonZeroSafeInt(Number.NEGATIVE_INFINITY));
123
+
124
+ assert.isFalse(isNonZeroSafeInt(1.2));
125
+
126
+ assert.isFalse(isNonZeroSafeInt(-3.4));
99
127
  });
100
128
  });
101
129
 
102
130
  describe('NonZeroSafeInt.is', () => {
103
131
  test('same as isNonZeroSafeInt function', () => {
104
132
  expect(NonZeroSafeInt.is(5)).toBe(isNonZeroSafeInt(5));
133
+
105
134
  expect(NonZeroSafeInt.is(0)).toBe(isNonZeroSafeInt(0));
135
+
106
136
  expect(NonZeroSafeInt.is(-10)).toBe(isNonZeroSafeInt(-10));
107
137
  });
108
138
  });
@@ -110,41 +140,53 @@ describe('NonZeroSafeInt test', () => {
110
140
  describe('constants', () => {
111
141
  test('MIN_VALUE and MAX_VALUE', () => {
112
142
  expect(NonZeroSafeInt.MIN_VALUE).toBe(Number.MIN_SAFE_INTEGER);
143
+
113
144
  expect(NonZeroSafeInt.MAX_VALUE).toBe(Number.MAX_SAFE_INTEGER);
114
145
  });
115
146
  });
116
147
 
117
148
  describe('mathematical operations', () => {
118
149
  const a = asNonZeroSafeInt(5);
150
+
119
151
  const b = asNonZeroSafeInt(2);
152
+
120
153
  const c = asNonZeroSafeInt(-3);
121
154
 
122
155
  test('abs', () => {
123
156
  expect(NonZeroSafeInt.abs(a)).toBe(5);
157
+
124
158
  expect(NonZeroSafeInt.abs(c)).toBe(3);
159
+
125
160
  expect(NonZeroSafeInt.abs(asNonZeroSafeInt(-1))).toBe(1);
126
161
  });
127
162
 
128
163
  test('min and max', () => {
129
164
  expect(NonZeroSafeInt.min(a, b)).toBe(2);
165
+
130
166
  expect(NonZeroSafeInt.max(a, b)).toBe(5);
167
+
131
168
  expect(NonZeroSafeInt.min(a, c)).toBe(-3);
169
+
132
170
  expect(NonZeroSafeInt.max(a, c)).toBe(5);
133
171
  });
134
172
 
135
173
  test('add (with clamping to safe integer range)', () => {
136
174
  const largeValue = asNonZeroSafeInt(Number.MAX_SAFE_INTEGER - 1);
175
+
137
176
  const result = NonZeroSafeInt.add(largeValue, asNonZeroSafeInt(10));
138
177
 
139
178
  expect(result).toBe(Number.MAX_SAFE_INTEGER); // clamped to max
179
+
140
180
  expect(NonZeroSafeInt.add(a, b)).toBe(7);
141
181
  });
142
182
 
143
183
  test('sub (with clamping to safe integer range)', () => {
144
184
  const smallValue = asNonZeroSafeInt(Number.MIN_SAFE_INTEGER + 1);
185
+
145
186
  const result = NonZeroSafeInt.sub(smallValue, asNonZeroSafeInt(10));
146
187
 
147
188
  expect(result).toBe(Number.MIN_SAFE_INTEGER); // clamped to min
189
+
148
190
  expect(NonZeroSafeInt.sub(a, b)).toBe(3);
149
191
  });
150
192
 
@@ -152,9 +194,11 @@ describe('NonZeroSafeInt test', () => {
152
194
  const largeValue = asNonZeroSafeInt(
153
195
  Math.floor(Math.sqrt(Number.MAX_SAFE_INTEGER)),
154
196
  );
197
+
155
198
  const result = NonZeroSafeInt.mul(largeValue, largeValue);
156
199
 
157
200
  expect(result).toBeLessThanOrEqual(Number.MAX_SAFE_INTEGER);
201
+
158
202
  expect(
159
203
  NonZeroSafeInt.mul(asNonZeroSafeInt(10), asNonZeroSafeInt(5)),
160
204
  ).toBe(50);
@@ -162,9 +206,11 @@ describe('NonZeroSafeInt test', () => {
162
206
 
163
207
  test('div (floor division with clamping)', () => {
164
208
  expect(NonZeroSafeInt.div(a, b)).toBe(2);
209
+
165
210
  expect(NonZeroSafeInt.div(asNonZeroSafeInt(7), asNonZeroSafeInt(3))).toBe(
166
211
  2,
167
212
  );
213
+
168
214
  expect(
169
215
  NonZeroSafeInt.div(asNonZeroSafeInt(-7), asNonZeroSafeInt(3)),
170
216
  ).toBe(-3);
@@ -177,6 +223,7 @@ describe('NonZeroSafeInt test', () => {
177
223
  );
178
224
 
179
225
  expect(result).toBe(Number.MAX_SAFE_INTEGER); // clamped to max
226
+
180
227
  expect(NonZeroSafeInt.pow(asNonZeroSafeInt(2), asNonZeroSafeInt(3))).toBe(
181
228
  8,
182
229
  );
@@ -186,45 +233,60 @@ describe('NonZeroSafeInt test', () => {
186
233
  describe('random', () => {
187
234
  test('generates non-zero safe integers within specified range (positive range)', () => {
188
235
  const min = 1;
236
+
189
237
  const max = 20;
190
238
 
191
239
  for (const _ of range(10)) {
192
240
  const result = NonZeroSafeInt.random(min, max);
193
241
 
194
242
  expect(result).toBeGreaterThanOrEqual(min);
243
+
195
244
  expect(result).toBeLessThanOrEqual(max);
196
- expect(NonZeroSafeInt.is(result)).toBe(true);
197
- expect(Number.isInteger(result)).toBe(true);
245
+
246
+ assert.isTrue(NonZeroSafeInt.is(result));
247
+
248
+ assert.isTrue(Number.isInteger(result));
249
+
198
250
  expect(result).not.toBe(0);
199
251
  }
200
252
  });
201
253
 
202
254
  test('generates non-zero safe integers within specified range (negative range)', () => {
203
255
  const min = -20;
256
+
204
257
  const max = -1;
205
258
 
206
259
  for (const _ of range(10)) {
207
260
  const result = NonZeroSafeInt.random(min, max);
208
261
 
209
262
  expect(result).toBeGreaterThanOrEqual(min);
263
+
210
264
  expect(result).toBeLessThanOrEqual(max);
211
- expect(NonZeroSafeInt.is(result)).toBe(true);
212
- expect(Number.isInteger(result)).toBe(true);
265
+
266
+ assert.isTrue(NonZeroSafeInt.is(result));
267
+
268
+ assert.isTrue(Number.isInteger(result));
269
+
213
270
  expect(result).not.toBe(0);
214
271
  }
215
272
  });
216
273
 
217
274
  test('generates non-zero safe integers within range that spans zero', () => {
218
275
  const min = -5;
276
+
219
277
  const max = 5;
220
278
 
221
279
  for (const _ of range(10)) {
222
280
  const result = NonZeroSafeInt.random(min, max);
223
281
 
224
282
  expect(result).toBeGreaterThanOrEqual(min);
283
+
225
284
  expect(result).toBeLessThanOrEqual(max);
226
- expect(NonZeroSafeInt.is(result)).toBe(true);
227
- expect(Number.isInteger(result)).toBe(true);
285
+
286
+ assert.isTrue(NonZeroSafeInt.is(result));
287
+
288
+ assert.isTrue(Number.isInteger(result));
289
+
228
290
  expect(result).not.toBe(0);
229
291
  }
230
292
  });
@@ -10,8 +10,11 @@ describe('NonZeroUint16 test', () => {
10
10
  describe(asNonZeroUint16, () => {
11
11
  test('accepts valid non-zero uint16 values', () => {
12
12
  expect(() => asNonZeroUint16(1)).not.toThrow();
13
+
13
14
  expect(() => asNonZeroUint16(1000)).not.toThrow();
15
+
14
16
  expect(() => asNonZeroUint16(65_535)).not.toThrow(); // 2^16 - 1
17
+
15
18
  expect(() => asNonZeroUint16(32_768)).not.toThrow(); // 2^15
16
19
  });
17
20
 
@@ -21,29 +24,37 @@ describe('NonZeroUint16 test', () => {
21
24
 
22
25
  test('rejects values outside uint16 range', () => {
23
26
  expect(() => asNonZeroUint16(65_536)).toThrow(TypeError); // 2^16
27
+
24
28
  expect(() => asNonZeroUint16(100_000)).toThrow(TypeError);
25
29
  });
26
30
 
27
31
  test('rejects negative integers', () => {
28
32
  expect(() => asNonZeroUint16(-1)).toThrow(TypeError);
33
+
29
34
  expect(() => asNonZeroUint16(-42)).toThrow(TypeError);
30
35
  });
31
36
 
32
37
  test('rejects non-integers', () => {
33
38
  expect(() => asNonZeroUint16(Number.NaN)).toThrow(TypeError);
39
+
34
40
  expect(() => asNonZeroUint16(Number.POSITIVE_INFINITY)).toThrow(
35
41
  TypeError,
36
42
  );
43
+
37
44
  expect(() => asNonZeroUint16(Number.NEGATIVE_INFINITY)).toThrow(
38
45
  TypeError,
39
46
  );
47
+
40
48
  expect(() => asNonZeroUint16(1.2)).toThrow(TypeError);
49
+
41
50
  expect(() => asNonZeroUint16(-3.4)).toThrow(TypeError);
42
51
  });
43
52
 
44
53
  test('returns the same value for valid inputs', () => {
45
54
  expect(asNonZeroUint16(5)).toBe(5);
55
+
46
56
  expect(asNonZeroUint16(1)).toBe(1);
57
+
47
58
  expect(asNonZeroUint16(65_535)).toBe(65_535);
48
59
  });
49
60
 
@@ -70,39 +81,50 @@ describe('NonZeroUint16 test', () => {
70
81
 
71
82
  describe(isNonZeroUint16, () => {
72
83
  test('correctly identifies non-zero uint16 values', () => {
73
- expect(isNonZeroUint16(1)).toBe(true);
74
- expect(isNonZeroUint16(1000)).toBe(true);
75
- expect(isNonZeroUint16(65_535)).toBe(true);
76
- expect(isNonZeroUint16(32_768)).toBe(true);
84
+ assert.isTrue(isNonZeroUint16(1));
85
+
86
+ assert.isTrue(isNonZeroUint16(1000));
87
+
88
+ assert.isTrue(isNonZeroUint16(65_535));
89
+
90
+ assert.isTrue(isNonZeroUint16(32_768));
77
91
  });
78
92
 
79
93
  test('correctly identifies zero', () => {
80
- expect(isNonZeroUint16(0)).toBe(false);
94
+ assert.isFalse(isNonZeroUint16(0));
81
95
  });
82
96
 
83
97
  test('correctly identifies values outside uint16 range', () => {
84
- expect(isNonZeroUint16(65_536)).toBe(false);
85
- expect(isNonZeroUint16(100_000)).toBe(false);
98
+ assert.isFalse(isNonZeroUint16(65_536));
99
+
100
+ assert.isFalse(isNonZeroUint16(100_000));
86
101
  });
87
102
 
88
103
  test('correctly identifies negative integers', () => {
89
- expect(isNonZeroUint16(-1)).toBe(false);
90
- expect(isNonZeroUint16(-42)).toBe(false);
104
+ assert.isFalse(isNonZeroUint16(-1));
105
+
106
+ assert.isFalse(isNonZeroUint16(-42));
91
107
  });
92
108
 
93
109
  test('correctly identifies non-integers', () => {
94
- expect(isNonZeroUint16(Number.NaN)).toBe(false);
95
- expect(isNonZeroUint16(Number.POSITIVE_INFINITY)).toBe(false);
96
- expect(isNonZeroUint16(Number.NEGATIVE_INFINITY)).toBe(false);
97
- expect(isNonZeroUint16(1.2)).toBe(false);
98
- expect(isNonZeroUint16(-3.4)).toBe(false);
110
+ assert.isFalse(isNonZeroUint16(Number.NaN));
111
+
112
+ assert.isFalse(isNonZeroUint16(Number.POSITIVE_INFINITY));
113
+
114
+ assert.isFalse(isNonZeroUint16(Number.NEGATIVE_INFINITY));
115
+
116
+ assert.isFalse(isNonZeroUint16(1.2));
117
+
118
+ assert.isFalse(isNonZeroUint16(-3.4));
99
119
  });
100
120
  });
101
121
 
102
122
  describe('NonZeroUint16.is', () => {
103
123
  test('same as isNonZeroUint16 function', () => {
104
124
  expect(NonZeroUint16.is(5)).toBe(isNonZeroUint16(5));
125
+
105
126
  expect(NonZeroUint16.is(0)).toBe(isNonZeroUint16(0));
127
+
106
128
  expect(NonZeroUint16.is(-1)).toBe(isNonZeroUint16(-1));
107
129
  });
108
130
  });
@@ -110,16 +132,19 @@ describe('NonZeroUint16 test', () => {
110
132
  describe('constants', () => {
111
133
  test('MIN_VALUE and MAX_VALUE', () => {
112
134
  expect(NonZeroUint16.MIN_VALUE).toBe(1);
135
+
113
136
  expect(NonZeroUint16.MAX_VALUE).toBe(65_535);
114
137
  });
115
138
  });
116
139
 
117
140
  describe('mathematical operations', () => {
118
141
  const a = asNonZeroUint16(100);
142
+
119
143
  const b = asNonZeroUint16(50);
120
144
 
121
145
  test('min and max', () => {
122
146
  expect(NonZeroUint16.min(a, b)).toBe(50);
147
+
123
148
  expect(NonZeroUint16.max(a, b)).toBe(100);
124
149
  });
125
150
 
@@ -130,11 +155,13 @@ describe('NonZeroUint16 test', () => {
130
155
  );
131
156
 
132
157
  expect(result).toBe(65_535); // clamped to max
158
+
133
159
  expect(NonZeroUint16.add(a, b)).toBe(150);
134
160
  });
135
161
 
136
162
  test('sub (never goes below 1)', () => {
137
163
  expect(NonZeroUint16.sub(a, b)).toBe(50);
164
+
138
165
  expect(NonZeroUint16.sub(b, a)).toBe(1); // clamped to 1
139
166
  });
140
167
 
@@ -145,6 +172,7 @@ describe('NonZeroUint16 test', () => {
145
172
  );
146
173
 
147
174
  expect(result).toBe(65_535); // clamped to max
175
+
148
176
  expect(NonZeroUint16.mul(asNonZeroUint16(10), asNonZeroUint16(5))).toBe(
149
177
  50,
150
178
  );
@@ -152,7 +180,9 @@ describe('NonZeroUint16 test', () => {
152
180
 
153
181
  test('div (floor division, never goes below 1)', () => {
154
182
  expect(NonZeroUint16.div(a, asNonZeroUint16(50))).toBe(2);
183
+
155
184
  expect(NonZeroUint16.div(asNonZeroUint16(7), asNonZeroUint16(3))).toBe(2);
185
+
156
186
  expect(NonZeroUint16.div(asNonZeroUint16(50), asNonZeroUint16(100))).toBe(
157
187
  1,
158
188
  ); // floor(50/100) = 0, clamped to 1
@@ -165,6 +195,7 @@ describe('NonZeroUint16 test', () => {
165
195
  );
166
196
 
167
197
  expect(result).toBe(65_535); // clamped to max
198
+
168
199
  expect(NonZeroUint16.pow(asNonZeroUint16(2), asNonZeroUint16(3))).toBe(8);
169
200
  });
170
201
  });
@@ -172,15 +203,20 @@ describe('NonZeroUint16 test', () => {
172
203
  describe('random', () => {
173
204
  test('generates non-zero uint16 values within specified range', () => {
174
205
  const min = 1;
206
+
175
207
  const max = 20;
176
208
 
177
209
  for (const _ of range(10)) {
178
210
  const result = NonZeroUint16.random(min, max);
179
211
 
180
212
  expect(result).toBeGreaterThanOrEqual(min);
213
+
181
214
  expect(result).toBeLessThanOrEqual(max);
182
- expect(NonZeroUint16.is(result)).toBe(true);
183
- expect(Number.isInteger(result)).toBe(true);
215
+
216
+ assert.isTrue(NonZeroUint16.is(result));
217
+
218
+ assert.isTrue(Number.isInteger(result));
219
+
184
220
  expect(result).not.toBe(0);
185
221
  }
186
222
  });
@@ -190,6 +226,7 @@ describe('NonZeroUint16 test', () => {
190
226
  const result = NonZeroUint16.random(1, 30);
191
227
 
192
228
  expect(result).toBeGreaterThanOrEqual(1);
229
+
193
230
  expect(result).toBeLessThanOrEqual(65_535);
194
231
  }
195
232
  });
@@ -10,8 +10,11 @@ describe('NonZeroUint32 test', () => {
10
10
  describe(asNonZeroUint32, () => {
11
11
  test('accepts valid non-zero uint32 values', () => {
12
12
  expect(() => asNonZeroUint32(1)).not.toThrow();
13
+
13
14
  expect(() => asNonZeroUint32(1000)).not.toThrow();
15
+
14
16
  expect(() => asNonZeroUint32(4_294_967_295)).not.toThrow(); // 2^32 - 1
17
+
15
18
  expect(() => asNonZeroUint32(2_147_483_648)).not.toThrow(); // 2^31
16
19
  });
17
20
 
@@ -21,29 +24,37 @@ describe('NonZeroUint32 test', () => {
21
24
 
22
25
  test('rejects values outside uint32 range', () => {
23
26
  expect(() => asNonZeroUint32(4_294_967_296)).toThrow(TypeError); // 2^32
27
+
24
28
  expect(() => asNonZeroUint32(10_000_000_000)).toThrow(TypeError);
25
29
  });
26
30
 
27
31
  test('rejects negative integers', () => {
28
32
  expect(() => asNonZeroUint32(-1)).toThrow(TypeError);
33
+
29
34
  expect(() => asNonZeroUint32(-42)).toThrow(TypeError);
30
35
  });
31
36
 
32
37
  test('rejects non-integers', () => {
33
38
  expect(() => asNonZeroUint32(Number.NaN)).toThrow(TypeError);
39
+
34
40
  expect(() => asNonZeroUint32(Number.POSITIVE_INFINITY)).toThrow(
35
41
  TypeError,
36
42
  );
43
+
37
44
  expect(() => asNonZeroUint32(Number.NEGATIVE_INFINITY)).toThrow(
38
45
  TypeError,
39
46
  );
47
+
40
48
  expect(() => asNonZeroUint32(1.2)).toThrow(TypeError);
49
+
41
50
  expect(() => asNonZeroUint32(-3.4)).toThrow(TypeError);
42
51
  });
43
52
 
44
53
  test('returns the same value for valid inputs', () => {
45
54
  expect(asNonZeroUint32(5)).toBe(5);
55
+
46
56
  expect(asNonZeroUint32(1)).toBe(1);
57
+
47
58
  expect(asNonZeroUint32(4_294_967_295)).toBe(4_294_967_295);
48
59
  });
49
60
 
@@ -70,39 +81,50 @@ describe('NonZeroUint32 test', () => {
70
81
 
71
82
  describe(isNonZeroUint32, () => {
72
83
  test('correctly identifies non-zero uint32 values', () => {
73
- expect(isNonZeroUint32(1)).toBe(true);
74
- expect(isNonZeroUint32(1000)).toBe(true);
75
- expect(isNonZeroUint32(4_294_967_295)).toBe(true);
76
- expect(isNonZeroUint32(2_147_483_648)).toBe(true);
84
+ assert.isTrue(isNonZeroUint32(1));
85
+
86
+ assert.isTrue(isNonZeroUint32(1000));
87
+
88
+ assert.isTrue(isNonZeroUint32(4_294_967_295));
89
+
90
+ assert.isTrue(isNonZeroUint32(2_147_483_648));
77
91
  });
78
92
 
79
93
  test('correctly identifies zero', () => {
80
- expect(isNonZeroUint32(0)).toBe(false);
94
+ assert.isFalse(isNonZeroUint32(0));
81
95
  });
82
96
 
83
97
  test('correctly identifies values outside uint32 range', () => {
84
- expect(isNonZeroUint32(4_294_967_296)).toBe(false);
85
- expect(isNonZeroUint32(10_000_000_000)).toBe(false);
98
+ assert.isFalse(isNonZeroUint32(4_294_967_296));
99
+
100
+ assert.isFalse(isNonZeroUint32(10_000_000_000));
86
101
  });
87
102
 
88
103
  test('correctly identifies negative integers', () => {
89
- expect(isNonZeroUint32(-1)).toBe(false);
90
- expect(isNonZeroUint32(-42)).toBe(false);
104
+ assert.isFalse(isNonZeroUint32(-1));
105
+
106
+ assert.isFalse(isNonZeroUint32(-42));
91
107
  });
92
108
 
93
109
  test('correctly identifies non-integers', () => {
94
- expect(isNonZeroUint32(Number.NaN)).toBe(false);
95
- expect(isNonZeroUint32(Number.POSITIVE_INFINITY)).toBe(false);
96
- expect(isNonZeroUint32(Number.NEGATIVE_INFINITY)).toBe(false);
97
- expect(isNonZeroUint32(1.2)).toBe(false);
98
- expect(isNonZeroUint32(-3.4)).toBe(false);
110
+ assert.isFalse(isNonZeroUint32(Number.NaN));
111
+
112
+ assert.isFalse(isNonZeroUint32(Number.POSITIVE_INFINITY));
113
+
114
+ assert.isFalse(isNonZeroUint32(Number.NEGATIVE_INFINITY));
115
+
116
+ assert.isFalse(isNonZeroUint32(1.2));
117
+
118
+ assert.isFalse(isNonZeroUint32(-3.4));
99
119
  });
100
120
  });
101
121
 
102
122
  describe('NonZeroUint32.is', () => {
103
123
  test('same as isNonZeroUint32 function', () => {
104
124
  expect(NonZeroUint32.is(5)).toBe(isNonZeroUint32(5));
125
+
105
126
  expect(NonZeroUint32.is(0)).toBe(isNonZeroUint32(0));
127
+
106
128
  expect(NonZeroUint32.is(-1)).toBe(isNonZeroUint32(-1));
107
129
  });
108
130
  });
@@ -110,16 +132,19 @@ describe('NonZeroUint32 test', () => {
110
132
  describe('constants', () => {
111
133
  test('MIN_VALUE and MAX_VALUE', () => {
112
134
  expect(NonZeroUint32.MIN_VALUE).toBe(1);
135
+
113
136
  expect(NonZeroUint32.MAX_VALUE).toBe(4_294_967_295);
114
137
  });
115
138
  });
116
139
 
117
140
  describe('mathematical operations', () => {
118
141
  const a = asNonZeroUint32(1_000_000);
142
+
119
143
  const b = asNonZeroUint32(500_000);
120
144
 
121
145
  test('min and max', () => {
122
146
  expect(NonZeroUint32.min(a, b)).toBe(500_000);
147
+
123
148
  expect(NonZeroUint32.max(a, b)).toBe(1_000_000);
124
149
  });
125
150
 
@@ -130,11 +155,13 @@ describe('NonZeroUint32 test', () => {
130
155
  );
131
156
 
132
157
  expect(result).toBe(4_294_967_295); // clamped to max
158
+
133
159
  expect(NonZeroUint32.add(a, b)).toBe(1_500_000);
134
160
  });
135
161
 
136
162
  test('sub (never goes below 1)', () => {
137
163
  expect(NonZeroUint32.sub(a, b)).toBe(500_000);
164
+
138
165
  expect(NonZeroUint32.sub(b, a)).toBe(1); // clamped to 1
139
166
  });
140
167
 
@@ -145,6 +172,7 @@ describe('NonZeroUint32 test', () => {
145
172
  );
146
173
 
147
174
  expect(result).toBe(4_294_967_295); // clamped to max
175
+
148
176
  expect(NonZeroUint32.mul(asNonZeroUint32(1000), asNonZeroUint32(5))).toBe(
149
177
  5000,
150
178
  );
@@ -152,7 +180,9 @@ describe('NonZeroUint32 test', () => {
152
180
 
153
181
  test('div (floor division, never goes below 1)', () => {
154
182
  expect(NonZeroUint32.div(a, asNonZeroUint32(500_000))).toBe(2);
183
+
155
184
  expect(NonZeroUint32.div(asNonZeroUint32(7), asNonZeroUint32(3))).toBe(2);
185
+
156
186
  expect(
157
187
  NonZeroUint32.div(asNonZeroUint32(500_000), asNonZeroUint32(1_000_000)),
158
188
  ).toBe(1); // floor(500000/1000000) = 0, clamped to 1
@@ -165,6 +195,7 @@ describe('NonZeroUint32 test', () => {
165
195
  );
166
196
 
167
197
  expect(result).toBe(4_294_967_295); // clamped to max
198
+
168
199
  expect(NonZeroUint32.pow(asNonZeroUint32(2), asNonZeroUint32(3))).toBe(8);
169
200
  });
170
201
  });
@@ -172,15 +203,20 @@ describe('NonZeroUint32 test', () => {
172
203
  describe('random', () => {
173
204
  test('generates non-zero uint32 values within specified range', () => {
174
205
  const min = 1;
206
+
175
207
  const max = 20;
176
208
 
177
209
  for (const _ of range(10)) {
178
210
  const result = NonZeroUint32.random(min, max);
179
211
 
180
212
  expect(result).toBeGreaterThanOrEqual(min);
213
+
181
214
  expect(result).toBeLessThanOrEqual(max);
182
- expect(NonZeroUint32.is(result)).toBe(true);
183
- expect(Number.isInteger(result)).toBe(true);
215
+
216
+ assert.isTrue(NonZeroUint32.is(result));
217
+
218
+ assert.isTrue(Number.isInteger(result));
219
+
184
220
  expect(result).not.toBe(0);
185
221
  }
186
222
  });
@@ -190,6 +226,7 @@ describe('NonZeroUint32 test', () => {
190
226
  const result = NonZeroUint32.random(1, 30);
191
227
 
192
228
  expect(result).toBeGreaterThanOrEqual(1);
229
+
193
230
  expect(result).toBeLessThanOrEqual(4_294_967_295);
194
231
  }
195
232
  });