@rogolev/value 0.0.3 → 0.0.5

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 (355) hide show
  1. package/CHANGELOG.md +319 -1
  2. package/docs/classes/Expect/toBe.md +61 -0
  3. package/docs/classes/Expect/toBeArray.md +52 -0
  4. package/docs/classes/Expect/toBeAssoc.md +53 -0
  5. package/docs/classes/Expect/toBeBigInt.md +52 -0
  6. package/docs/classes/Expect/toBeBool.md +53 -0
  7. package/docs/classes/Expect/toBeBoolean.md +53 -0
  8. package/docs/classes/Expect/toBeChar.md +53 -0
  9. package/docs/classes/Expect/toBeClass.md +53 -0
  10. package/docs/classes/Expect/toBeFloat.md +53 -0
  11. package/docs/classes/Expect/toBeFunction.md +52 -0
  12. package/docs/classes/Expect/toBeInfinity.md +53 -0
  13. package/docs/classes/Expect/toBeInt.md +53 -0
  14. package/docs/classes/Expect/toBeInteger.md +53 -0
  15. package/docs/classes/Expect/toBeList.md +53 -0
  16. package/docs/classes/Expect/toBeNaN.md +53 -0
  17. package/docs/classes/Expect/toBeNull.md +51 -0
  18. package/docs/classes/Expect/toBeNumber.md +52 -0
  19. package/docs/classes/Expect/toBeNumeric.md +53 -0
  20. package/docs/classes/Expect/toBeObject.md +52 -0
  21. package/docs/classes/Expect/toBeScalar.md +53 -0
  22. package/docs/classes/Expect/toBeString.md +52 -0
  23. package/docs/classes/Expect/toBeSymbol.md +53 -0
  24. package/docs/classes/Expect/toBeUndefined.md +54 -0
  25. package/docs/classes/Expect/toEqual.md +69 -0
  26. package/docs/classes/Expect/toStrictEqual.md +70 -0
  27. package/docs/classes/Expect.md +87 -0
  28. package/docs/classes/Type/expectArray.md +63 -0
  29. package/docs/classes/Type/expectAssoc.md +65 -0
  30. package/docs/classes/Type/expectBigInt.md +63 -0
  31. package/docs/classes/Type/expectBool.md +65 -0
  32. package/docs/classes/Type/expectBoolean.md +65 -0
  33. package/docs/classes/Type/expectChar.md +63 -0
  34. package/docs/classes/Type/expectClass.md +63 -0
  35. package/docs/classes/Type/expectFloat.md +68 -0
  36. package/docs/classes/Type/expectFunction.md +63 -0
  37. package/docs/classes/Type/expectInfinity.md +65 -0
  38. package/docs/classes/Type/expectInt.md +64 -0
  39. package/docs/classes/Type/expectInteger.md +64 -0
  40. package/docs/classes/Type/expectList.md +63 -0
  41. package/docs/classes/Type/expectNaN.md +63 -0
  42. package/docs/classes/Type/expectNull.md +63 -0
  43. package/docs/classes/Type/expectNumber.md +63 -0
  44. package/docs/classes/Type/expectNumeric.md +63 -0
  45. package/docs/classes/Type/expectObject.md +64 -0
  46. package/docs/classes/Type/expectScalar.md +63 -0
  47. package/docs/classes/Type/expectString.md +63 -0
  48. package/docs/classes/Type/expectSymbol.md +63 -0
  49. package/docs/classes/Type/expectUndefined.md +63 -0
  50. package/docs/classes/Type.md +101 -2
  51. package/docs/classes.md +2 -1
  52. package/docs/helpers/array/array_chunk.md +80 -0
  53. package/docs/helpers/array/array_chunk_with_keys.md +81 -0
  54. package/docs/helpers/array/array_column.md +110 -0
  55. package/docs/helpers/array/array_combine.md +77 -0
  56. package/docs/helpers/array/array_count_values.md +71 -0
  57. package/docs/helpers/array/array_diff.md +97 -0
  58. package/docs/helpers/array/array_diff_assoc.md +81 -0
  59. package/docs/helpers/array/array_diff_key.md +81 -0
  60. package/docs/helpers/array/array_diff_uassoc.md +101 -0
  61. package/docs/helpers/array/array_diff_ukey.md +101 -0
  62. package/docs/helpers/array/array_fill.md +81 -0
  63. package/docs/helpers/array/array_fill_keys.md +73 -0
  64. package/docs/helpers/array/array_filter.md +79 -0
  65. package/docs/helpers/array/array_flip.md +70 -0
  66. package/docs/helpers/array/array_index_max.md +78 -0
  67. package/docs/helpers/array/array_index_min.md +78 -0
  68. package/docs/helpers/array/array_intersect.md +91 -0
  69. package/docs/helpers/array/array_intersect_assoc.md +91 -0
  70. package/docs/helpers/array/array_intersect_key.md +91 -0
  71. package/docs/helpers/array/array_intersect_uassoc.md +101 -0
  72. package/docs/helpers/array/array_intersect_ukey.md +101 -0
  73. package/docs/helpers/array/array_key_exists.md +73 -0
  74. package/docs/helpers/array/array_key_first.md +62 -0
  75. package/docs/helpers/array/array_key_last.md +62 -0
  76. package/docs/helpers/array/array_key_to_lower_case.md +57 -0
  77. package/docs/helpers/array/array_key_to_upper_case.md +57 -0
  78. package/docs/helpers/array/array_keys.md +62 -0
  79. package/docs/helpers/array/array_map.md +69 -0
  80. package/docs/helpers/array/array_merge.md +67 -0
  81. package/docs/helpers/array/array_merge_recursive.md +86 -0
  82. package/docs/helpers/array/array_pad.md +83 -0
  83. package/docs/helpers/array/array_pop.md +64 -0
  84. package/docs/helpers/array/array_product.md +62 -0
  85. package/docs/helpers/array/array_push.md +57 -0
  86. package/docs/helpers/array/array_rand.md +99 -0
  87. package/docs/helpers/array/array_reduce.md +77 -0
  88. package/docs/helpers/array/array_replace.md +85 -0
  89. package/docs/helpers/array/array_replace_recursive.md +87 -0
  90. package/docs/helpers/array/array_reverse.md +55 -0
  91. package/docs/helpers/array/array_search.md +74 -0
  92. package/docs/helpers/array/array_shift.md +64 -0
  93. package/docs/helpers/array/array_slice.md +65 -0
  94. package/docs/helpers/array/array_splice.md +103 -0
  95. package/docs/helpers/array/array_sum.md +55 -0
  96. package/docs/helpers/array/array_udiff.md +97 -0
  97. package/docs/helpers/array/array_udiff_assoc.md +101 -0
  98. package/docs/helpers/array/array_udiff_uassoc.md +88 -0
  99. package/docs/helpers/array/array_uintersect.md +101 -0
  100. package/docs/helpers/array/array_uintersect_assoc.md +102 -0
  101. package/docs/helpers/array/array_uintersect_uassoc.md +135 -0
  102. package/docs/helpers/array/array_unique.md +54 -0
  103. package/docs/helpers/array/array_unshift.md +58 -0
  104. package/docs/helpers/array/array_values.md +54 -0
  105. package/docs/helpers/array/array_walk.md +87 -0
  106. package/docs/helpers/array/array_walk_recursive.md +93 -0
  107. package/docs/helpers/array/count.md +54 -0
  108. package/docs/helpers/array/in_array.md +65 -0
  109. package/docs/helpers/array/natsort.md +60 -0
  110. package/docs/helpers/array/range.md +76 -0
  111. package/docs/helpers/array/shuffle.md +74 -0
  112. package/docs/helpers/array/sort.md +79 -0
  113. package/docs/helpers/expect.md +58 -0
  114. package/docs/helpers/expect_array.md +63 -0
  115. package/docs/helpers/expect_assoc.md +65 -0
  116. package/docs/helpers/expect_bigint.md +63 -0
  117. package/docs/helpers/expect_bool.md +65 -0
  118. package/docs/helpers/expect_boolean.md +65 -0
  119. package/docs/helpers/expect_char.md +63 -0
  120. package/docs/helpers/expect_class.md +63 -0
  121. package/docs/helpers/expect_float.md +65 -0
  122. package/docs/helpers/expect_function.md +63 -0
  123. package/docs/helpers/expect_infinity.md +65 -0
  124. package/docs/helpers/expect_int.md +65 -0
  125. package/docs/helpers/expect_integer.md +65 -0
  126. package/docs/helpers/expect_list.md +63 -0
  127. package/docs/helpers/expect_nan.md +63 -0
  128. package/docs/helpers/expect_null.md +63 -0
  129. package/docs/helpers/expect_number.md +63 -0
  130. package/docs/helpers/expect_numeric.md +63 -0
  131. package/docs/helpers/expect_object.md +64 -0
  132. package/docs/helpers/expect_scalar.md +63 -0
  133. package/docs/helpers/expect_string.md +63 -0
  134. package/docs/helpers/expect_symbol.md +63 -0
  135. package/docs/helpers/expect_undefined.md +64 -0
  136. package/docs/helpers/is_char.md +84 -0
  137. package/docs/helpers/is_equal.md +75 -0
  138. package/docs/helpers/string/is_digit_char.md +70 -0
  139. package/docs/helpers/string/is_whitespace_char.md +70 -0
  140. package/docs/helpers/string/natcompare.md +69 -0
  141. package/docs/helpers/string/natcompare_numeric.md +70 -0
  142. package/docs/helpers.md +172 -1
  143. package/index.mjs +91 -1
  144. package/package.json +1 -1
  145. package/prettier.config.mjs +2 -1
  146. package/src/classes/Expect.mjs +1445 -0
  147. package/src/classes/Type.mjs +2739 -1284
  148. package/src/constants.mjs +83 -14
  149. package/src/helpers/array/array_chunk.mjs +102 -0
  150. package/src/helpers/array/array_chunk_with_keys.mjs +102 -0
  151. package/src/helpers/array/array_column.mjs +131 -0
  152. package/src/helpers/array/array_combine.mjs +26 -0
  153. package/src/helpers/array/array_count_values.mjs +82 -0
  154. package/src/helpers/array/array_diff.mjs +77 -0
  155. package/src/helpers/array/array_diff_assoc.mjs +56 -0
  156. package/src/helpers/array/array_diff_key.mjs +56 -0
  157. package/src/helpers/array/array_diff_uassoc.mjs +76 -0
  158. package/src/helpers/array/array_diff_ukey.mjs +71 -0
  159. package/src/helpers/array/array_fill.mjs +108 -0
  160. package/src/helpers/array/array_fill_keys.mjs +90 -0
  161. package/src/helpers/array/array_filter.mjs +105 -0
  162. package/src/helpers/array/array_flip.mjs +58 -0
  163. package/src/helpers/array/array_index_max.mjs +82 -0
  164. package/src/helpers/array/array_index_min.mjs +82 -0
  165. package/src/helpers/array/array_intersect.mjs +71 -0
  166. package/src/helpers/array/array_intersect_assoc.mjs +67 -0
  167. package/src/helpers/array/array_intersect_key.mjs +67 -0
  168. package/src/helpers/array/array_intersect_uassoc.mjs +77 -0
  169. package/src/helpers/array/array_intersect_ukey.mjs +72 -0
  170. package/src/helpers/array/array_key_exists.mjs +83 -0
  171. package/src/helpers/array/array_key_first.mjs +73 -0
  172. package/src/helpers/array/array_key_last.mjs +74 -0
  173. package/src/helpers/array/array_key_to_lower_case.mjs +71 -0
  174. package/src/helpers/array/array_key_to_upper_case.mjs +71 -0
  175. package/src/helpers/array/array_keys.mjs +65 -0
  176. package/src/helpers/array/array_map.mjs +84 -0
  177. package/src/helpers/array/array_merge.mjs +95 -0
  178. package/src/helpers/array/array_merge_recursive.mjs +153 -0
  179. package/src/helpers/array/array_pad.mjs +105 -0
  180. package/src/helpers/array/array_pop.mjs +82 -0
  181. package/src/helpers/array/array_product.mjs +67 -0
  182. package/src/helpers/array/array_push.mjs +75 -0
  183. package/src/helpers/array/array_rand.mjs +129 -0
  184. package/src/helpers/array/array_reduce.mjs +90 -0
  185. package/src/helpers/array/array_replace.mjs +25 -0
  186. package/src/helpers/array/array_replace_recursive.mjs +109 -0
  187. package/src/helpers/array/array_reverse.mjs +62 -0
  188. package/src/helpers/array/array_search.mjs +104 -0
  189. package/src/helpers/array/array_shift.mjs +78 -0
  190. package/src/helpers/array/array_slice.mjs +99 -0
  191. package/src/helpers/array/array_splice.mjs +218 -0
  192. package/src/helpers/array/array_sum.mjs +60 -0
  193. package/src/helpers/array/array_udiff.mjs +91 -0
  194. package/src/helpers/array/array_udiff_assoc.mjs +71 -0
  195. package/src/helpers/array/array_udiff_uassoc.mjs +124 -0
  196. package/src/helpers/array/array_uintersect.mjs +72 -0
  197. package/src/helpers/array/array_uintersect_assoc.mjs +77 -0
  198. package/src/helpers/array/array_uintersect_uassoc.mjs +121 -0
  199. package/src/helpers/array/array_unique.mjs +77 -0
  200. package/src/helpers/array/array_unshift.mjs +64 -0
  201. package/src/helpers/array/array_values.mjs +57 -0
  202. package/src/helpers/array/array_walk.mjs +95 -0
  203. package/src/helpers/array/array_walk_recursive.mjs +104 -0
  204. package/src/helpers/array/count.mjs +57 -0
  205. package/src/helpers/array/in_array.mjs +67 -0
  206. package/src/helpers/array/natsort.mjs +62 -0
  207. package/src/helpers/array/range.mjs +121 -0
  208. package/src/helpers/array/shuffle.mjs +73 -0
  209. package/src/helpers/array/sort.mjs +69 -0
  210. package/src/helpers/expect.mjs +44 -0
  211. package/src/helpers/expect_array.mjs +66 -0
  212. package/src/helpers/expect_assoc.mjs +66 -0
  213. package/src/helpers/expect_bigint.mjs +66 -0
  214. package/src/helpers/expect_bool.mjs +66 -0
  215. package/src/helpers/expect_boolean.mjs +57 -0
  216. package/src/helpers/expect_char.mjs +66 -0
  217. package/src/helpers/expect_class.mjs +66 -0
  218. package/src/helpers/expect_float.mjs +66 -0
  219. package/src/helpers/expect_function.mjs +66 -0
  220. package/src/helpers/expect_infinity.mjs +66 -0
  221. package/src/helpers/expect_int.mjs +66 -0
  222. package/src/helpers/expect_integer.mjs +57 -0
  223. package/src/helpers/expect_list.mjs +66 -0
  224. package/src/helpers/expect_nan.mjs +66 -0
  225. package/src/helpers/expect_null.mjs +66 -0
  226. package/src/helpers/expect_number.mjs +66 -0
  227. package/src/helpers/expect_numeric.mjs +66 -0
  228. package/src/helpers/expect_object.mjs +67 -0
  229. package/src/helpers/expect_scalar.mjs +66 -0
  230. package/src/helpers/expect_string.mjs +65 -0
  231. package/src/helpers/expect_symbol.mjs +66 -0
  232. package/src/helpers/expect_undefined.mjs +66 -0
  233. package/src/helpers/is_char.mjs +54 -0
  234. package/src/helpers/is_equal.mjs +94 -0
  235. package/src/helpers/string/is_digit_char.mjs +60 -0
  236. package/src/helpers/string/is_whitespace_char.mjs +54 -0
  237. package/src/helpers/string/natcompare.mjs +107 -0
  238. package/src/helpers/string/natcompare_numeric.mjs +131 -0
  239. package/tests/classes/Expect/toBe.test.mjs +60 -0
  240. package/tests/classes/Expect/toBeArray.test.mjs +46 -0
  241. package/tests/classes/Expect/toBeAssoc.test.mjs +48 -0
  242. package/tests/classes/Expect/toBeBigInt.test.mjs +46 -0
  243. package/tests/classes/Expect/toBeBool.test.mjs +48 -0
  244. package/tests/classes/Expect/toBeBoolean.test.mjs +48 -0
  245. package/tests/classes/Expect/toBeChar.test.mjs +46 -0
  246. package/tests/classes/Expect/toBeClass.test.mjs +48 -0
  247. package/tests/classes/Expect/toBeFloat.test.mjs +48 -0
  248. package/tests/classes/Expect/toBeFunction.test.mjs +51 -0
  249. package/tests/classes/Expect/toBeInfinity.test.mjs +48 -0
  250. package/tests/classes/Expect/toBeInt.test.mjs +48 -0
  251. package/tests/classes/Expect/toBeInteger.test.mjs +48 -0
  252. package/tests/classes/Expect/toBeList.test.mjs +46 -0
  253. package/tests/classes/Expect/toBeNaN.test.mjs +46 -0
  254. package/tests/classes/Expect/toBeNull.test.mjs +46 -0
  255. package/tests/classes/Expect/toBeNumber.test.mjs +46 -0
  256. package/tests/classes/Expect/toBeNumeric.test.mjs +53 -0
  257. package/tests/classes/Expect/toBeObject.test.mjs +47 -0
  258. package/tests/classes/Expect/toBeScalar.test.mjs +63 -0
  259. package/tests/classes/Expect/toBeString.test.mjs +46 -0
  260. package/tests/classes/Expect/toBeSymbol.test.mjs +46 -0
  261. package/tests/classes/Expect/toBeUndefined.test.mjs +50 -0
  262. package/tests/classes/Expect/toEqual.test.mjs +66 -0
  263. package/tests/classes/Expect/toStrictEqual.test.mjs +73 -0
  264. package/tests/classes/Type.test.mjs +1320 -1262
  265. package/tests/helpers/array/array_chunk.test.mjs +49 -0
  266. package/tests/helpers/array/array_chunk_with_keys.test.mjs +45 -0
  267. package/tests/helpers/array/array_column.test.mjs +87 -0
  268. package/tests/helpers/array/array_combine.test.mjs +41 -0
  269. package/tests/helpers/array/array_count_values.test.mjs +40 -0
  270. package/tests/helpers/array/array_diff.test.mjs +78 -0
  271. package/tests/helpers/array/array_diff_assoc.test.mjs +64 -0
  272. package/tests/helpers/array/array_diff_key.test.mjs +64 -0
  273. package/tests/helpers/array/array_diff_uassoc.test.mjs +73 -0
  274. package/tests/helpers/array/array_diff_ukey.test.mjs +77 -0
  275. package/tests/helpers/array/array_fill.test.mjs +47 -0
  276. package/tests/helpers/array/array_fill_keys.test.mjs +35 -0
  277. package/tests/helpers/array/array_filter.test.mjs +38 -0
  278. package/tests/helpers/array/array_flip.test.mjs +33 -0
  279. package/tests/helpers/array/array_index_max.test.mjs +41 -0
  280. package/tests/helpers/array/array_index_min.test.mjs +41 -0
  281. package/tests/helpers/array/array_intersect.test.mjs +65 -0
  282. package/tests/helpers/array/array_intersect_assoc.test.mjs +65 -0
  283. package/tests/helpers/array/array_intersect_key.test.mjs +65 -0
  284. package/tests/helpers/array/array_intersect_uassoc.test.mjs +76 -0
  285. package/tests/helpers/array/array_intersect_ukey.test.mjs +74 -0
  286. package/tests/helpers/array/array_key_exists.test.mjs +36 -0
  287. package/tests/helpers/array/array_key_first.test.mjs +29 -0
  288. package/tests/helpers/array/array_key_last.test.mjs +29 -0
  289. package/tests/helpers/array/array_key_to_lower_case.test.mjs +23 -0
  290. package/tests/helpers/array/array_key_to_upper_case.test.mjs +23 -0
  291. package/tests/helpers/array/array_keys.test.mjs +27 -0
  292. package/tests/helpers/array/array_map.test.mjs +32 -0
  293. package/tests/helpers/array/array_merge.test.mjs +37 -0
  294. package/tests/helpers/array/array_merge_recursive.test.mjs +65 -0
  295. package/tests/helpers/array/array_pad.test.mjs +48 -0
  296. package/tests/helpers/array/array_pop.test.mjs +29 -0
  297. package/tests/helpers/array/array_product.test.mjs +33 -0
  298. package/tests/helpers/array/array_push.test.mjs +31 -0
  299. package/tests/helpers/array/array_rand.test.mjs +59 -0
  300. package/tests/helpers/array/array_reduce.test.mjs +44 -0
  301. package/tests/helpers/array/array_replace.test.mjs +46 -0
  302. package/tests/helpers/array/array_replace_recursive.test.mjs +46 -0
  303. package/tests/helpers/array/array_reverse.test.mjs +31 -0
  304. package/tests/helpers/array/array_search.test.mjs +48 -0
  305. package/tests/helpers/array/array_shift.test.mjs +29 -0
  306. package/tests/helpers/array/array_slice.test.mjs +49 -0
  307. package/tests/helpers/array/array_splice.test.mjs +67 -0
  308. package/tests/helpers/array/array_sum.test.mjs +27 -0
  309. package/tests/helpers/array/array_udiff.test.mjs +95 -0
  310. package/tests/helpers/array/array_udiff_assoc.test.mjs +77 -0
  311. package/tests/helpers/array/array_udiff_uassoc.test.mjs +89 -0
  312. package/tests/helpers/array/array_uintersect.test.mjs +78 -0
  313. package/tests/helpers/array/array_uintersect_assoc.test.mjs +80 -0
  314. package/tests/helpers/array/array_uintersect_uassoc.test.mjs +122 -0
  315. package/tests/helpers/array/array_unique.test.mjs +27 -0
  316. package/tests/helpers/array/array_unshift.test.mjs +31 -0
  317. package/tests/helpers/array/array_values.test.mjs +27 -0
  318. package/tests/helpers/array/array_walk.test.mjs +48 -0
  319. package/tests/helpers/array/array_walk_recursive.test.mjs +53 -0
  320. package/tests/helpers/array/count.test.mjs +27 -0
  321. package/tests/helpers/array/in_array.test.mjs +52 -0
  322. package/tests/helpers/array/natsort.test.mjs +71 -0
  323. package/tests/helpers/array/range.test.mjs +51 -0
  324. package/tests/helpers/array/shuffle.test.mjs +42 -0
  325. package/tests/helpers/array/sort.test.mjs +60 -0
  326. package/tests/helpers/array.test.mjs +58 -58
  327. package/tests/helpers/expect.test.mjs +95 -0
  328. package/tests/helpers/expect_array.test.mjs +71 -0
  329. package/tests/helpers/expect_assoc.test.mjs +61 -0
  330. package/tests/helpers/expect_bigint.test.mjs +63 -0
  331. package/tests/helpers/expect_bool.test.mjs +59 -0
  332. package/tests/helpers/expect_boolean.test.mjs +61 -0
  333. package/tests/helpers/expect_char.test.mjs +63 -0
  334. package/tests/helpers/expect_class.test.mjs +64 -0
  335. package/tests/helpers/expect_float.test.mjs +64 -0
  336. package/tests/helpers/expect_function.test.mjs +65 -0
  337. package/tests/helpers/expect_infinity.test.mjs +62 -0
  338. package/tests/helpers/expect_int.test.mjs +57 -0
  339. package/tests/helpers/expect_integer.test.mjs +59 -0
  340. package/tests/helpers/expect_list.test.mjs +73 -0
  341. package/tests/helpers/expect_nan.test.mjs +57 -0
  342. package/tests/helpers/expect_null.test.mjs +57 -0
  343. package/tests/helpers/expect_number.test.mjs +57 -0
  344. package/tests/helpers/expect_numeric.test.mjs +57 -0
  345. package/tests/helpers/expect_object.test.mjs +63 -0
  346. package/tests/helpers/expect_scalar.test.mjs +72 -0
  347. package/tests/helpers/expect_string.test.mjs +65 -0
  348. package/tests/helpers/expect_symbol.test.mjs +66 -0
  349. package/tests/helpers/expect_undefined.test.mjs +59 -0
  350. package/tests/helpers/is_char.test.mjs +40 -0
  351. package/tests/helpers/is_equal.test.mjs +110 -0
  352. package/tests/helpers/string/is_digit_char.test.mjs +32 -0
  353. package/tests/helpers/string/is_whitespace_char.test.mjs +32 -0
  354. package/tests/helpers/string/natcompare.test.mjs +100 -0
  355. package/tests/helpers/string/natcompare_numeric.test.mjs +110 -0
@@ -0,0 +1,64 @@
1
+ import { expect, test, describe } from '@jest/globals';
2
+ import { expect_float } from '../../index.mjs';
3
+
4
+ describe('Функция expect_float', () => {
5
+ test('Должна возвращать true, если значение является числом с плавающей запятой', () => {
6
+ const value = 123.45;
7
+ const result = expect_float(value);
8
+ expect(result).toBe(true);
9
+ });
10
+
11
+ test('Должна выбрасывать ошибку, если значение не является числом с плавающей запятой', () => {
12
+ expect(() => expect_float('123.45')).toThrow(TypeError);
13
+ expect(() => expect_float('123.45')).toThrow('');
14
+ });
15
+
16
+ test('Должна выбрасывать ошибку с пользовательским сообщением, если значение не является числом с плавающей запятой', () => {
17
+ expect(() =>
18
+ expect_float('123.45', 'Значение должно быть числом с плавающей запятой.'),
19
+ ).toThrow(TypeError);
20
+ expect(() =>
21
+ expect_float('123.45', 'Значение должно быть числом с плавающей запятой.'),
22
+ ).toThrow('Значение должно быть числом с плавающей запятой.');
23
+ });
24
+
25
+ test('Должна выбрасывать ошибку, если параметр message не является строкой', () => {
26
+ expect(() => expect_float(123.45, 123)).toThrow(TypeError);
27
+ expect(() => expect_float(123.45, 123)).toThrow('Параметр "message" должен быть строкой.');
28
+ });
29
+
30
+ test('Должна корректно обрабатывать значение целого числа', () => {
31
+ expect(() => expect_float(123)).toThrow(TypeError);
32
+ expect(() => expect_float(123)).toThrow('');
33
+ });
34
+
35
+ test('Должна корректно обрабатывать значение строки', () => {
36
+ expect(() => expect_float('123')).toThrow(TypeError);
37
+ expect(() => expect_float('123')).toThrow('');
38
+ });
39
+
40
+ test('Должна корректно обрабатывать значение null', () => {
41
+ expect(() => expect_float(null)).toThrow(TypeError);
42
+ expect(() => expect_float(null)).toThrow('');
43
+ });
44
+
45
+ test('Должна корректно обрабатывать значение undefined', () => {
46
+ expect(() => expect_float(undefined)).toThrow(TypeError);
47
+ expect(() => expect_float(undefined)).toThrow('');
48
+ });
49
+
50
+ test('Должна корректно обрабатывать значение объекта', () => {
51
+ expect(() => expect_float({})).toThrow(TypeError);
52
+ expect(() => expect_float({})).toThrow('');
53
+ });
54
+
55
+ test('Должна корректно обрабатывать значение NaN', () => {
56
+ expect(() => expect_float(NaN)).toThrow(TypeError);
57
+ expect(() => expect_float(NaN)).toThrow('');
58
+ });
59
+
60
+ test('Должна корректно обрабатывать значение Infinity', () => {
61
+ expect(() => expect_float(Infinity)).toThrow(TypeError);
62
+ expect(() => expect_float(Infinity)).toThrow('');
63
+ });
64
+ });
@@ -0,0 +1,65 @@
1
+ import { expect, test, describe } from '@jest/globals';
2
+ import { expect_function } from '../../index.mjs';
3
+
4
+ describe('Функция expect_function', () => {
5
+ test('Должна возвращать true, если значение является функцией', () => {
6
+ function myFunction() {}
7
+ const result = expect_function(myFunction);
8
+ expect(result).toBe(true);
9
+ });
10
+
11
+ test('Должна выбрасывать ошибку, если значение не является функцией', () => {
12
+ expect(() => expect_function(123)).toThrow(TypeError);
13
+ expect(() => expect_function(123)).toThrow('');
14
+ });
15
+
16
+ test('Должна выбрасывать ошибку с пользовательским сообщением, если значение не является функцией', () => {
17
+ expect(() => expect_function(123, 'Значение должно быть функцией.')).toThrow(TypeError);
18
+ expect(() => expect_function(123, 'Значение должно быть функцией.')).toThrow(
19
+ 'Значение должно быть функцией.',
20
+ );
21
+ });
22
+
23
+ test('Должна выбрасывать ошибку, если параметр message не является строкой', () => {
24
+ expect(() => expect_function(() => {}, 123)).toThrow(TypeError);
25
+ expect(() => expect_function(() => {}, 123)).toThrow(
26
+ 'Параметр "message" должен быть строкой.',
27
+ );
28
+ });
29
+
30
+ test('Должна корректно обрабатывать значение стрелочной функции', () => {
31
+ const result = expect_function(() => {});
32
+ expect(result).toBe(true);
33
+ });
34
+
35
+ test('Должна корректно обрабатывать значение функции-конструктора', () => {
36
+ function MyConstructor() {}
37
+ const result = expect_function(MyConstructor);
38
+ expect(result).toBe(true);
39
+ });
40
+
41
+ test('Должна корректно обрабатывать значение класса', () => {
42
+ class MyClass {}
43
+ expect(() => expect_function(MyClass)).toThrow(TypeError);
44
+ });
45
+
46
+ test('Должна корректно обрабатывать значение null', () => {
47
+ expect(() => expect_function(null)).toThrow(TypeError);
48
+ expect(() => expect_function(null)).toThrow('');
49
+ });
50
+
51
+ test('Должна корректно обрабатывать значение undefined', () => {
52
+ expect(() => expect_function(undefined)).toThrow(TypeError);
53
+ expect(() => expect_function(undefined)).toThrow('');
54
+ });
55
+
56
+ test('Должна корректно обрабатывать значение объекта', () => {
57
+ expect(() => expect_function({})).toThrow(TypeError);
58
+ expect(() => expect_function({})).toThrow('');
59
+ });
60
+
61
+ test('Должна корректно обрабатывать значение строки', () => {
62
+ expect(() => expect_function('function')).toThrow(TypeError);
63
+ expect(() => expect_function('function')).toThrow('');
64
+ });
65
+ });
@@ -0,0 +1,62 @@
1
+ import { expect, test, describe } from '@jest/globals';
2
+ import { expect_infinity } from '../../index.mjs';
3
+
4
+ describe('Функция expect_infinity', () => {
5
+ test('Должна возвращать true, если значение является бесконечностью', () => {
6
+ const value = Infinity;
7
+ const result = expect_infinity(value);
8
+ expect(result).toBe(true);
9
+ });
10
+
11
+ test('Должна выбрасывать ошибку, если значение не является бесконечностью', () => {
12
+ expect(() => expect_infinity(123)).toThrow(TypeError);
13
+ expect(() => expect_infinity(123)).toThrow('');
14
+ });
15
+
16
+ test('Должна выбрасывать ошибку с пользовательским сообщением, если значение не является бесконечностью', () => {
17
+ expect(() => expect_infinity(123, 'Значение должно быть бесконечностью.')).toThrow(
18
+ TypeError,
19
+ );
20
+ expect(() => expect_infinity(123, 'Значение должно быть бесконечностью.')).toThrow(
21
+ 'Значение должно быть бесконечностью.',
22
+ );
23
+ });
24
+
25
+ test('Должна выбрасывать ошибку, если параметр message не является строкой', () => {
26
+ expect(() => expect_infinity(Infinity, 123)).toThrow(TypeError);
27
+ expect(() => expect_infinity(Infinity, 123)).toThrow(
28
+ 'Параметр "message" должен быть строкой.',
29
+ );
30
+ });
31
+
32
+ test('Должна корректно обрабатывать значение -Infinity', () => {
33
+ const value = -Infinity;
34
+ const result = expect_infinity(value);
35
+ expect(result).toBe(true);
36
+ });
37
+
38
+ test('Должна корректно обрабатывать значение null', () => {
39
+ expect(() => expect_infinity(null)).toThrow(TypeError);
40
+ expect(() => expect_infinity(null)).toThrow('');
41
+ });
42
+
43
+ test('Должна корректно обрабатывать значение undefined', () => {
44
+ expect(() => expect_infinity(undefined)).toThrow(TypeError);
45
+ expect(() => expect_infinity(undefined)).toThrow('');
46
+ });
47
+
48
+ test('Должна корректно обрабатывать значение объекта', () => {
49
+ expect(() => expect_infinity({})).toThrow(TypeError);
50
+ expect(() => expect_infinity({})).toThrow('');
51
+ });
52
+
53
+ test('Должна корректно обрабатывать значение строки', () => {
54
+ expect(() => expect_infinity('Infinity')).toThrow(TypeError);
55
+ expect(() => expect_infinity('Infinity')).toThrow('');
56
+ });
57
+
58
+ test('Должна корректно обрабатывать значение NaN', () => {
59
+ expect(() => expect_infinity(NaN)).toThrow(TypeError);
60
+ expect(() => expect_infinity(NaN)).toThrow('');
61
+ });
62
+ });
@@ -0,0 +1,57 @@
1
+ import { expect, test, describe } from '@jest/globals';
2
+ import { expect_int } from '../../index.mjs';
3
+
4
+ describe('Функция expect_int', () => {
5
+ test('Должна возвращать true, если значение является целым числом', () => {
6
+ const value = 123;
7
+ const result = expect_int(value);
8
+ expect(result).toBe(true);
9
+ });
10
+
11
+ test('Должна выбрасывать ошибку, если значение не является целым числом', () => {
12
+ expect(() => expect_int(123.45)).toThrow(TypeError);
13
+ expect(() => expect_int(123.45)).toThrow('');
14
+ });
15
+
16
+ test('Должна выбрасывать ошибку с пользовательским сообщением, если значение не является целым числом', () => {
17
+ expect(() => expect_int(123.45, 'Значение должно быть целым числом.')).toThrow(TypeError);
18
+ expect(() => expect_int(123.45, 'Значение должно быть целым числом.')).toThrow(
19
+ 'Значение должно быть целым числом.',
20
+ );
21
+ });
22
+
23
+ test('Должна выбрасывать ошибку, если параметр message не является строкой', () => {
24
+ expect(() => expect_int(123, 123)).toThrow(TypeError);
25
+ expect(() => expect_int(123, 123)).toThrow('Параметр "message" должен быть строкой.');
26
+ });
27
+
28
+ test('Должна корректно обрабатывать значение строки', () => {
29
+ expect(() => expect_int('123')).toThrow(TypeError);
30
+ expect(() => expect_int('123')).toThrow('');
31
+ });
32
+
33
+ test('Должна корректно обрабатывать значение null', () => {
34
+ expect(() => expect_int(null)).toThrow(TypeError);
35
+ expect(() => expect_int(null)).toThrow('');
36
+ });
37
+
38
+ test('Должна корректно обрабатывать значение undefined', () => {
39
+ expect(() => expect_int(undefined)).toThrow(TypeError);
40
+ expect(() => expect_int(undefined)).toThrow('');
41
+ });
42
+
43
+ test('Должна корректно обрабатывать значение объекта', () => {
44
+ expect(() => expect_int({})).toThrow(TypeError);
45
+ expect(() => expect_int({})).toThrow('');
46
+ });
47
+
48
+ test('Должна корректно обрабатывать значение NaN', () => {
49
+ expect(() => expect_int(NaN)).toThrow(TypeError);
50
+ expect(() => expect_int(NaN)).toThrow('');
51
+ });
52
+
53
+ test('Должна корректно обрабатывать значение Infinity', () => {
54
+ expect(() => expect_int(Infinity)).toThrow(TypeError);
55
+ expect(() => expect_int(Infinity)).toThrow('');
56
+ });
57
+ });
@@ -0,0 +1,59 @@
1
+ import { expect, test, describe } from '@jest/globals';
2
+ import { expect_integer } from '../../index.mjs';
3
+
4
+ describe('Функция expect_integer', () => {
5
+ test('Должна возвращать true, если значение является целым числом', () => {
6
+ const value = 123;
7
+ const result = expect_integer(value);
8
+ expect(result).toBe(true);
9
+ });
10
+
11
+ test('Должна выбрасывать ошибку, если значение не является целым числом', () => {
12
+ expect(() => expect_integer(123.45)).toThrow(TypeError);
13
+ expect(() => expect_integer(123.45)).toThrow('');
14
+ });
15
+
16
+ test('Должна выбрасывать ошибку с пользовательским сообщением, если значение не является целым числом', () => {
17
+ expect(() => expect_integer(123.45, 'Значение должно быть целым числом.')).toThrow(
18
+ TypeError,
19
+ );
20
+ expect(() => expect_integer(123.45, 'Значение должно быть целым числом.')).toThrow(
21
+ 'Значение должно быть целым числом.',
22
+ );
23
+ });
24
+
25
+ test('Должна выбрасывать ошибку, если параметр message не является строкой', () => {
26
+ expect(() => expect_integer(123, 123)).toThrow(TypeError);
27
+ expect(() => expect_integer(123, 123)).toThrow('Параметр "message" должен быть строкой.');
28
+ });
29
+
30
+ test('Должна корректно обрабатывать значение строки', () => {
31
+ expect(() => expect_integer('123')).toThrow(TypeError);
32
+ expect(() => expect_integer('123')).toThrow('');
33
+ });
34
+
35
+ test('Должна корректно обрабатывать значение null', () => {
36
+ expect(() => expect_integer(null)).toThrow(TypeError);
37
+ expect(() => expect_integer(null)).toThrow('');
38
+ });
39
+
40
+ test('Должна корректно обрабатывать значение undefined', () => {
41
+ expect(() => expect_integer(undefined)).toThrow(TypeError);
42
+ expect(() => expect_integer(undefined)).toThrow('');
43
+ });
44
+
45
+ test('Должна корректно обрабатывать значение объекта', () => {
46
+ expect(() => expect_integer({})).toThrow(TypeError);
47
+ expect(() => expect_integer({})).toThrow('');
48
+ });
49
+
50
+ test('Должна корректно обрабатывать значение NaN', () => {
51
+ expect(() => expect_integer(NaN)).toThrow(TypeError);
52
+ expect(() => expect_integer(NaN)).toThrow('');
53
+ });
54
+
55
+ test('Должна корректно обрабатывать значение Infinity', () => {
56
+ expect(() => expect_integer(Infinity)).toThrow(TypeError);
57
+ expect(() => expect_integer(Infinity)).toThrow('');
58
+ });
59
+ });
@@ -0,0 +1,73 @@
1
+ import { expect, test, describe } from '@jest/globals';
2
+ import { expect_list } from '../../index.mjs';
3
+
4
+ describe('Функция expect_list', () => {
5
+ test('Должна возвращать true, если значение является списком', () => {
6
+ const value = [1, 2, 3];
7
+ const result = expect_list(value);
8
+ expect(result).toBe(true);
9
+ });
10
+
11
+ test('Должна выбрасывать ошибку, если значение не является списком', () => {
12
+ expect(() => expect_list('not a list')).toThrow(TypeError);
13
+ expect(() => expect_list('not a list')).toThrow('');
14
+ });
15
+
16
+ test('Должна выбрасывать ошибку с пользовательским сообщением, если значение не является списком', () => {
17
+ expect(() => expect_list('not a list', 'Значение должно быть списком.')).toThrow(TypeError);
18
+ expect(() => expect_list('not a list', 'Значение должно быть списком.')).toThrow(
19
+ 'Значение должно быть списком.',
20
+ );
21
+ });
22
+
23
+ test('Должна выбрасывать ошибку, если параметр message не является строкой', () => {
24
+ expect(() => expect_list([1, 2, 3], 123)).toThrow(TypeError);
25
+ expect(() => expect_list([1, 2, 3], 123)).toThrow(
26
+ 'Параметр "message" должен быть строкой.',
27
+ );
28
+ });
29
+
30
+ test('Должна корректно обрабатывать значение пустого списка', () => {
31
+ const value = [];
32
+ const result = expect_list(value);
33
+ expect(result).toBe(true);
34
+ });
35
+
36
+ test('Должна корректно обрабатывать значение списка с одним элементом', () => {
37
+ const value = [1];
38
+ const result = expect_list(value);
39
+ expect(result).toBe(true);
40
+ });
41
+
42
+ test('Должна корректно обрабатывать значение списка с несколькими элементами', () => {
43
+ const value = [1, 2, 3, 4, 5];
44
+ const result = expect_list(value);
45
+ expect(result).toBe(true);
46
+ });
47
+
48
+ test('Должна корректно обрабатывать значение ассоциативного массива', () => {
49
+ const value = { a: 1, b: 2, c: 3 };
50
+ expect(() => expect_list(value)).toThrow(TypeError);
51
+ expect(() => expect_list(value)).toThrow('');
52
+ });
53
+
54
+ test('Должна корректно обрабатывать значение null', () => {
55
+ expect(() => expect_list(null)).toThrow(TypeError);
56
+ expect(() => expect_list(null)).toThrow('');
57
+ });
58
+
59
+ test('Должна корректно обрабатывать значение undefined', () => {
60
+ expect(() => expect_list(undefined)).toThrow(TypeError);
61
+ expect(() => expect_list(undefined)).toThrow('');
62
+ });
63
+
64
+ test('Должна корректно обрабатывать значение объекта', () => {
65
+ expect(() => expect_list({})).toThrow(TypeError);
66
+ expect(() => expect_list({})).toThrow('');
67
+ });
68
+
69
+ test('Должна корректно обрабатывать значение строки', () => {
70
+ expect(() => expect_list('list')).toThrow(TypeError);
71
+ expect(() => expect_list('list')).toThrow('');
72
+ });
73
+ });
@@ -0,0 +1,57 @@
1
+ import { expect, test, describe } from '@jest/globals';
2
+ import { expect_nan } from '../../index.mjs';
3
+
4
+ describe('Функция expect_nan', () => {
5
+ test('Должна возвращать true, если значение является NaN', () => {
6
+ const value = NaN;
7
+ const result = expect_nan(value);
8
+ expect(result).toBe(true);
9
+ });
10
+
11
+ test('Должна выбрасывать ошибку, если значение не является NaN', () => {
12
+ expect(() => expect_nan(123)).toThrow(TypeError);
13
+ expect(() => expect_nan(123)).toThrow('');
14
+ });
15
+
16
+ test('Должна выбрасывать ошибку с пользовательским сообщением, если значение не является NaN', () => {
17
+ expect(() => expect_nan(123, 'Значение должно быть NaN.')).toThrow(TypeError);
18
+ expect(() => expect_nan(123, 'Значение должно быть NaN.')).toThrow(
19
+ 'Значение должно быть NaN.',
20
+ );
21
+ });
22
+
23
+ test('Должна выбрасывать ошибку, если параметр message не является строкой', () => {
24
+ expect(() => expect_nan(NaN, 123)).toThrow(TypeError);
25
+ expect(() => expect_nan(NaN, 123)).toThrow('Параметр "message" должен быть строкой.');
26
+ });
27
+
28
+ test('Должна корректно обрабатывать значение null', () => {
29
+ expect(() => expect_nan(null)).toThrow(TypeError);
30
+ expect(() => expect_nan(null)).toThrow('');
31
+ });
32
+
33
+ test('Должна корректно обрабатывать значение undefined', () => {
34
+ expect(() => expect_nan(undefined)).toThrow(TypeError);
35
+ expect(() => expect_nan(undefined)).toThrow('');
36
+ });
37
+
38
+ test('Должна корректно обрабатывать значение объекта', () => {
39
+ expect(() => expect_nan({})).toThrow(TypeError);
40
+ expect(() => expect_nan({})).toThrow('');
41
+ });
42
+
43
+ test('Должна корректно обрабатывать значение строки', () => {
44
+ expect(() => expect_nan('NaN')).toThrow(TypeError);
45
+ expect(() => expect_nan('NaN')).toThrow('');
46
+ });
47
+
48
+ test('Должна корректно обрабатывать значение числа', () => {
49
+ expect(() => expect_nan(123)).toThrow(TypeError);
50
+ expect(() => expect_nan(123)).toThrow('');
51
+ });
52
+
53
+ test('Должна корректно обрабатывать значение Infinity', () => {
54
+ expect(() => expect_nan(Infinity)).toThrow(TypeError);
55
+ expect(() => expect_nan(Infinity)).toThrow('');
56
+ });
57
+ });
@@ -0,0 +1,57 @@
1
+ import { expect, test, describe } from '@jest/globals';
2
+ import { expect_null } from '../../index.mjs';
3
+
4
+ describe('Функция expect_null', () => {
5
+ test('Должна возвращать true, если значение является null', () => {
6
+ const value = null;
7
+ const result = expect_null(value);
8
+ expect(result).toBe(true);
9
+ });
10
+
11
+ test('Должна выбрасывать ошибку, если значение не является null', () => {
12
+ expect(() => expect_null(123)).toThrow(TypeError);
13
+ expect(() => expect_null(123)).toThrow('');
14
+ });
15
+
16
+ test('Должна выбрасывать ошибку с пользовательским сообщением, если значение не является null', () => {
17
+ expect(() => expect_null(123, 'Значение должно быть null.')).toThrow(TypeError);
18
+ expect(() => expect_null(123, 'Значение должно быть null.')).toThrow(
19
+ 'Значение должно быть null.',
20
+ );
21
+ });
22
+
23
+ test('Должна выбрасывать ошибку, если параметр message не является строкой', () => {
24
+ expect(() => expect_null(null, 123)).toThrow(TypeError);
25
+ expect(() => expect_null(null, 123)).toThrow('Параметр "message" должен быть строкой.');
26
+ });
27
+
28
+ test('Должна корректно обрабатывать значение undefined', () => {
29
+ expect(() => expect_null(undefined)).toThrow(TypeError);
30
+ expect(() => expect_null(undefined)).toThrow('');
31
+ });
32
+
33
+ test('Должна корректно обрабатывать значение объекта', () => {
34
+ expect(() => expect_null({})).toThrow(TypeError);
35
+ expect(() => expect_null({})).toThrow('');
36
+ });
37
+
38
+ test('Должна корректно обрабатывать значение строки', () => {
39
+ expect(() => expect_null('null')).toThrow(TypeError);
40
+ expect(() => expect_null('null')).toThrow('');
41
+ });
42
+
43
+ test('Должна корректно обрабатывать значение числа', () => {
44
+ expect(() => expect_null(123)).toThrow(TypeError);
45
+ expect(() => expect_null(123)).toThrow('');
46
+ });
47
+
48
+ test('Должна корректно обрабатывать значение NaN', () => {
49
+ expect(() => expect_null(NaN)).toThrow(TypeError);
50
+ expect(() => expect_null(NaN)).toThrow('');
51
+ });
52
+
53
+ test('Должна корректно обрабатывать значение Infinity', () => {
54
+ expect(() => expect_null(Infinity)).toThrow(TypeError);
55
+ expect(() => expect_null(Infinity)).toThrow('');
56
+ });
57
+ });
@@ -0,0 +1,57 @@
1
+ import { expect, test, describe } from '@jest/globals';
2
+ import { expect_number } from '../../index.mjs';
3
+
4
+ describe('Функция expect_number', () => {
5
+ test('Должна возвращать true, если значение является числом', () => {
6
+ const value = 123;
7
+ const result = expect_number(value);
8
+ expect(result).toBe(true);
9
+ });
10
+
11
+ test('Должна выбрасывать ошибку, если значение не является числом', () => {
12
+ expect(() => expect_number('123')).toThrow(TypeError);
13
+ expect(() => expect_number('123')).toThrow('');
14
+ });
15
+
16
+ test('Должна выбрасывать ошибку с пользовательским сообщением, если значение не является числом', () => {
17
+ expect(() => expect_number('123', 'Значение должно быть числом.')).toThrow(TypeError);
18
+ expect(() => expect_number('123', 'Значение должно быть числом.')).toThrow(
19
+ 'Значение должно быть числом.',
20
+ );
21
+ });
22
+
23
+ test('Должна выбрасывать ошибку, если параметр message не является строкой', () => {
24
+ expect(() => expect_number(123, 123)).toThrow(TypeError);
25
+ expect(() => expect_number(123, 123)).toThrow('Параметр "message" должен быть строкой.');
26
+ });
27
+
28
+ test('Должна корректно обрабатывать значение null', () => {
29
+ expect(() => expect_number(null)).toThrow(TypeError);
30
+ expect(() => expect_number(null)).toThrow('');
31
+ });
32
+
33
+ test('Должна корректно обрабатывать значение undefined', () => {
34
+ expect(() => expect_number(undefined)).toThrow(TypeError);
35
+ expect(() => expect_number(undefined)).toThrow('');
36
+ });
37
+
38
+ test('Должна корректно обрабатывать значение объекта', () => {
39
+ expect(() => expect_number({})).toThrow(TypeError);
40
+ expect(() => expect_number({})).toThrow('');
41
+ });
42
+
43
+ test('Должна корректно обрабатывать значение строки', () => {
44
+ expect(() => expect_number('number')).toThrow(TypeError);
45
+ expect(() => expect_number('number')).toThrow('');
46
+ });
47
+
48
+ test('Должна корректно обрабатывать значение NaN', () => {
49
+ expect(() => expect_number(NaN)).toThrow(TypeError);
50
+ expect(() => expect_number(NaN)).toThrow('');
51
+ });
52
+
53
+ test('Должна корректно обрабатывать значение Infinity', () => {
54
+ expect(() => expect_number(Infinity)).toThrow(TypeError);
55
+ expect(() => expect_number(Infinity)).toThrow('');
56
+ });
57
+ });
@@ -0,0 +1,57 @@
1
+ import { expect, test, describe } from '@jest/globals';
2
+ import { expect_numeric } from '../../index.mjs';
3
+
4
+ describe('Функция expect_numeric', () => {
5
+ test('Должна возвращать true, если значение является числовым', () => {
6
+ const value = '123';
7
+ const result = expect_numeric(value);
8
+ expect(result).toBe(true);
9
+ });
10
+
11
+ test('Должна выбрасывать ошибку, если значение не является числовым', () => {
12
+ expect(() => expect_numeric('abc')).toThrow(TypeError);
13
+ expect(() => expect_numeric('abc')).toThrow('');
14
+ });
15
+
16
+ test('Должна выбрасывать ошибку с пользовательским сообщением, если значение не является числовым', () => {
17
+ expect(() => expect_numeric('abc', 'Значение должно быть числовым.')).toThrow(TypeError);
18
+ expect(() => expect_numeric('abc', 'Значение должно быть числовым.')).toThrow(
19
+ 'Значение должно быть числовым.',
20
+ );
21
+ });
22
+
23
+ test('Должна выбрасывать ошибку, если параметр message не является строкой', () => {
24
+ expect(() => expect_numeric('123', 123)).toThrow(TypeError);
25
+ expect(() => expect_numeric('123', 123)).toThrow('Параметр "message" должен быть строкой.');
26
+ });
27
+
28
+ test('Должна корректно обрабатывать значение null', () => {
29
+ expect(() => expect_numeric(null)).toThrow(TypeError);
30
+ expect(() => expect_numeric(null)).toThrow('');
31
+ });
32
+
33
+ test('Должна корректно обрабатывать значение undefined', () => {
34
+ expect(() => expect_numeric(undefined)).toThrow(TypeError);
35
+ expect(() => expect_numeric(undefined)).toThrow('');
36
+ });
37
+
38
+ test('Должна корректно обрабатывать значение объекта', () => {
39
+ expect(() => expect_numeric({})).toThrow(TypeError);
40
+ expect(() => expect_numeric({})).toThrow('');
41
+ });
42
+
43
+ test('Должна корректно обрабатывать значение строки', () => {
44
+ expect(() => expect_numeric('number')).toThrow(TypeError);
45
+ expect(() => expect_numeric('number')).toThrow('');
46
+ });
47
+
48
+ test('Должна корректно обрабатывать значение NaN', () => {
49
+ expect(() => expect_numeric(NaN)).toThrow(TypeError);
50
+ expect(() => expect_numeric(NaN)).toThrow('');
51
+ });
52
+
53
+ test('Должна корректно обрабатывать значение Infinity', () => {
54
+ expect(() => expect_numeric(Infinity)).toThrow(TypeError);
55
+ expect(() => expect_numeric(Infinity)).toThrow('');
56
+ });
57
+ });