@valkyriestudios/utils 4.0.0 → 5.0.0

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 (362) hide show
  1. package/.babelrc +1 -0
  2. package/.eslintrc.json +152 -0
  3. package/.nyc_output/79bac8a3-26d6-499d-a9d9-6f61d6c11628.json +1 -0
  4. package/.nyc_output/8a42299e-25b8-4720-a08c-cb83c830059c.json +1 -0
  5. package/.nyc_output/processinfo/79bac8a3-26d6-499d-a9d9-6f61d6c11628.json +1 -0
  6. package/.nyc_output/processinfo/8a42299e-25b8-4720-a08c-cb83c830059c.json +1 -0
  7. package/.nyc_output/processinfo/index.json +1 -0
  8. package/.nycrc +4 -0
  9. package/.travis.yml +2 -3
  10. package/CHANGELOG.md +75 -0
  11. package/README.md +70 -2
  12. package/array/dedupe.js +14 -14
  13. package/array/is.js +5 -4
  14. package/array/isNotEmpty.js +15 -0
  15. package/boolean/is.js +5 -4
  16. package/caching/memoize.js +14 -19
  17. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/base.css +224 -0
  18. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/block-navigation.js +87 -0
  19. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/favicon.png +0 -0
  20. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/index.html +296 -0
  21. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/prettify.css +1 -0
  22. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/prettify.js +2 -0
  23. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/sort-arrow-sprite.png +0 -0
  24. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/sorter.js +196 -0
  25. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/array/dedupe.js.html +118 -0
  26. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/array/index.html +146 -0
  27. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/array/is.js.html +100 -0
  28. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/array/isNotEmpty.js.html +109 -0
  29. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/boolean/index.html +116 -0
  30. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/boolean/is.js.html +100 -0
  31. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/caching/index.html +116 -0
  32. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/caching/memoize.js.html +130 -0
  33. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/date/index.html +116 -0
  34. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/date/is.js.html +100 -0
  35. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/deep/define.js.html +106 -0
  36. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/deep/freeze.js.html +151 -0
  37. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/deep/get.js.html +187 -0
  38. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/deep/index.html +176 -0
  39. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/deep/seal.js.html +151 -0
  40. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/deep/set.js.html +220 -0
  41. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/equal.js.html +274 -0
  42. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/formdata/index.html +116 -0
  43. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/formdata/is.js.html +100 -0
  44. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/function/index.html +176 -0
  45. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/function/is.js.html +103 -0
  46. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/function/noop.js.html +100 -0
  47. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/function/noopresolve.js.html +103 -0
  48. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/function/noopreturn.js.html +103 -0
  49. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/function/sleep.js.html +124 -0
  50. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/hash/fnv1A.js.html +232 -0
  51. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/hash/guid.js.html +175 -0
  52. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/hash/index.html +131 -0
  53. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/index.html +131 -0
  54. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/is.js.html +202 -0
  55. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/number/index.html +221 -0
  56. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/number/is.js.html +112 -0
  57. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/number/isAbove.js.html +115 -0
  58. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/number/isBelow.js.html +115 -0
  59. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/number/isBetween.js.html +121 -0
  60. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/number/isNumericalNaN.js.html +100 -0
  61. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/number/randomBetween.js.html +136 -0
  62. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/number/round.js.html +139 -0
  63. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/number/toPercentage.js.html +151 -0
  64. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/object/define.js.html +118 -0
  65. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/object/defineFrozen.js.html +106 -0
  66. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/object/defineSealed.js.html +106 -0
  67. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/object/forValues.js.html +133 -0
  68. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/object/index.html +236 -0
  69. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/object/is.js.html +100 -0
  70. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/object/isNotEmpty.js.html +109 -0
  71. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/object/merge.js.html +157 -0
  72. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/object/pick.js.html +151 -0
  73. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/object/zip.js.html +139 -0
  74. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/regexp/index.html +116 -0
  75. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/regexp/is.js.html +100 -0
  76. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/string/index.html +146 -0
  77. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/string/is.js.html +100 -0
  78. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/string/isBetween.js.html +133 -0
  79. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/string/isNotEmpty.js.html +109 -0
  80. package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov.info +974 -0
  81. package/coverage/Chrome Headless 80.0.3987.87 (Linux x86_64)/lcov-report/base.css +224 -0
  82. package/coverage/Chrome Headless 80.0.3987.87 (Linux x86_64)/lcov-report/block-navigation.js +79 -0
  83. package/coverage/Chrome Headless 80.0.3987.87 (Linux x86_64)/lcov-report/favicon.png +0 -0
  84. package/coverage/Chrome Headless 80.0.3987.87 (Linux x86_64)/lcov-report/index.html +291 -0
  85. package/coverage/Chrome Headless 80.0.3987.87 (Linux x86_64)/lcov-report/prettify.css +1 -0
  86. package/coverage/Chrome Headless 80.0.3987.87 (Linux x86_64)/lcov-report/prettify.js +2 -0
  87. package/coverage/Chrome Headless 80.0.3987.87 (Linux x86_64)/lcov-report/sort-arrow-sprite.png +0 -0
  88. package/coverage/Chrome Headless 80.0.3987.87 (Linux x86_64)/lcov-report/sorter.js +170 -0
  89. package/coverage/Chrome Headless 80.0.3987.87 (Linux x86_64)/lcov-report/src/array/dedupe.js.html +113 -0
  90. package/coverage/Chrome Headless 80.0.3987.87 (Linux x86_64)/lcov-report/src/array/index.html +126 -0
  91. package/coverage/Chrome Headless 80.0.3987.87 (Linux x86_64)/lcov-report/src/array/is.js.html +95 -0
  92. package/coverage/Chrome Headless 80.0.3987.87 (Linux x86_64)/lcov-report/src/boolean/index.html +111 -0
  93. package/coverage/Chrome Headless 80.0.3987.87 (Linux x86_64)/lcov-report/src/boolean/is.js.html +95 -0
  94. package/coverage/Chrome Headless 80.0.3987.87 (Linux x86_64)/lcov-report/src/caching/index.html +111 -0
  95. package/coverage/Chrome Headless 80.0.3987.87 (Linux x86_64)/lcov-report/src/caching/memoize.js.html +125 -0
  96. package/coverage/Chrome Headless 80.0.3987.87 (Linux x86_64)/lcov-report/src/date/index.html +111 -0
  97. package/coverage/Chrome Headless 80.0.3987.87 (Linux x86_64)/lcov-report/src/date/is.js.html +95 -0
  98. package/coverage/Chrome Headless 80.0.3987.87 (Linux x86_64)/lcov-report/src/deep/define.js.html +101 -0
  99. package/coverage/Chrome Headless 80.0.3987.87 (Linux x86_64)/lcov-report/src/deep/freeze.js.html +146 -0
  100. package/coverage/Chrome Headless 80.0.3987.87 (Linux x86_64)/lcov-report/src/deep/get.js.html +182 -0
  101. package/coverage/Chrome Headless 80.0.3987.87 (Linux x86_64)/lcov-report/src/deep/index.html +171 -0
  102. package/coverage/Chrome Headless 80.0.3987.87 (Linux x86_64)/lcov-report/src/deep/seal.js.html +146 -0
  103. package/coverage/Chrome Headless 80.0.3987.87 (Linux x86_64)/lcov-report/src/deep/set.js.html +215 -0
  104. package/coverage/Chrome Headless 80.0.3987.87 (Linux x86_64)/lcov-report/src/equal.js.html +269 -0
  105. package/coverage/Chrome Headless 80.0.3987.87 (Linux x86_64)/lcov-report/src/formdata/index.html +111 -0
  106. package/coverage/Chrome Headless 80.0.3987.87 (Linux x86_64)/lcov-report/src/formdata/is.js.html +95 -0
  107. package/coverage/Chrome Headless 80.0.3987.87 (Linux x86_64)/lcov-report/src/function/index.html +171 -0
  108. package/coverage/Chrome Headless 80.0.3987.87 (Linux x86_64)/lcov-report/src/function/is.js.html +98 -0
  109. package/coverage/Chrome Headless 80.0.3987.87 (Linux x86_64)/lcov-report/src/function/noop.js.html +95 -0
  110. package/coverage/Chrome Headless 80.0.3987.87 (Linux x86_64)/lcov-report/src/function/noopresolve.js.html +98 -0
  111. package/coverage/Chrome Headless 80.0.3987.87 (Linux x86_64)/lcov-report/src/function/noopreturn.js.html +98 -0
  112. package/coverage/Chrome Headless 80.0.3987.87 (Linux x86_64)/lcov-report/src/function/sleep.js.html +119 -0
  113. package/coverage/Chrome Headless 80.0.3987.87 (Linux x86_64)/lcov-report/src/hash/fnv1A.js.html +218 -0
  114. package/coverage/Chrome Headless 80.0.3987.87 (Linux x86_64)/lcov-report/src/hash/guid.js.html +170 -0
  115. package/coverage/Chrome Headless 80.0.3987.87 (Linux x86_64)/lcov-report/src/hash/index.html +126 -0
  116. package/coverage/Chrome Headless 80.0.3987.87 (Linux x86_64)/lcov-report/src/index.html +111 -0
  117. package/coverage/Chrome Headless 80.0.3987.87 (Linux x86_64)/lcov-report/src/number/index.html +171 -0
  118. package/coverage/Chrome Headless 80.0.3987.87 (Linux x86_64)/lcov-report/src/number/is.js.html +104 -0
  119. package/coverage/Chrome Headless 80.0.3987.87 (Linux x86_64)/lcov-report/src/number/isNumericalNaN.js.html +95 -0
  120. package/coverage/Chrome Headless 80.0.3987.87 (Linux x86_64)/lcov-report/src/number/randomBetween.js.html +131 -0
  121. package/coverage/Chrome Headless 80.0.3987.87 (Linux x86_64)/lcov-report/src/number/round.js.html +134 -0
  122. package/coverage/Chrome Headless 80.0.3987.87 (Linux x86_64)/lcov-report/src/number/toPercentage.js.html +146 -0
  123. package/coverage/Chrome Headless 80.0.3987.87 (Linux x86_64)/lcov-report/src/object/define.js.html +113 -0
  124. package/coverage/Chrome Headless 80.0.3987.87 (Linux x86_64)/lcov-report/src/object/defineFrozen.js.html +101 -0
  125. package/coverage/Chrome Headless 80.0.3987.87 (Linux x86_64)/lcov-report/src/object/defineSealed.js.html +101 -0
  126. package/coverage/Chrome Headless 80.0.3987.87 (Linux x86_64)/lcov-report/src/object/forValues.js.html +128 -0
  127. package/coverage/Chrome Headless 80.0.3987.87 (Linux x86_64)/lcov-report/src/object/index.html +216 -0
  128. package/coverage/Chrome Headless 80.0.3987.87 (Linux x86_64)/lcov-report/src/object/is.js.html +95 -0
  129. package/coverage/Chrome Headless 80.0.3987.87 (Linux x86_64)/lcov-report/src/object/merge.js.html +152 -0
  130. package/coverage/Chrome Headless 80.0.3987.87 (Linux x86_64)/lcov-report/src/object/pick.js.html +146 -0
  131. package/coverage/Chrome Headless 80.0.3987.87 (Linux x86_64)/lcov-report/src/object/zip.js.html +134 -0
  132. package/coverage/Chrome Headless 80.0.3987.87 (Linux x86_64)/lcov-report/src/regexp/index.html +111 -0
  133. package/coverage/Chrome Headless 80.0.3987.87 (Linux x86_64)/lcov-report/src/regexp/is.js.html +95 -0
  134. package/coverage/Chrome Headless 80.0.3987.87 (Linux x86_64)/lcov-report/src/string/index.html +111 -0
  135. package/coverage/Chrome Headless 80.0.3987.87 (Linux x86_64)/lcov-report/src/string/is.js.html +95 -0
  136. package/coverage/Chrome Headless 80.0.3987.87 (Linux x86_64)/lcov.info +822 -0
  137. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/base.css +224 -0
  138. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/block-navigation.js +79 -0
  139. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/favicon.png +0 -0
  140. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/index.html +291 -0
  141. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/prettify.css +1 -0
  142. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/prettify.js +2 -0
  143. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/sort-arrow-sprite.png +0 -0
  144. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/sorter.js +170 -0
  145. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/array/dedupe.js.html +113 -0
  146. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/array/index.html +141 -0
  147. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/array/is.js.html +95 -0
  148. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/array/isNotEmpty.js.html +104 -0
  149. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/boolean/index.html +111 -0
  150. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/boolean/is.js.html +95 -0
  151. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/caching/index.html +111 -0
  152. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/caching/memoize.js.html +125 -0
  153. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/date/index.html +111 -0
  154. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/date/is.js.html +95 -0
  155. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/deep/define.js.html +101 -0
  156. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/deep/freeze.js.html +146 -0
  157. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/deep/get.js.html +182 -0
  158. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/deep/index.html +171 -0
  159. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/deep/seal.js.html +146 -0
  160. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/deep/set.js.html +215 -0
  161. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/equal.js.html +269 -0
  162. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/formdata/index.html +111 -0
  163. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/formdata/is.js.html +95 -0
  164. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/function/index.html +171 -0
  165. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/function/is.js.html +98 -0
  166. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/function/noop.js.html +95 -0
  167. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/function/noopresolve.js.html +98 -0
  168. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/function/noopreturn.js.html +98 -0
  169. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/function/sleep.js.html +119 -0
  170. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/hash/fnv1A.js.html +227 -0
  171. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/hash/guid.js.html +170 -0
  172. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/hash/index.html +126 -0
  173. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/index.html +126 -0
  174. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/is.js.html +185 -0
  175. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/number/index.html +186 -0
  176. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/number/is.js.html +107 -0
  177. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/number/isBetween.js.html +116 -0
  178. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/number/isNumericalNaN.js.html +95 -0
  179. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/number/randomBetween.js.html +131 -0
  180. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/number/round.js.html +134 -0
  181. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/number/toPercentage.js.html +146 -0
  182. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/object/define.js.html +113 -0
  183. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/object/defineFrozen.js.html +101 -0
  184. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/object/defineSealed.js.html +101 -0
  185. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/object/forValues.js.html +128 -0
  186. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/object/index.html +231 -0
  187. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/object/is.js.html +95 -0
  188. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/object/isNotEmpty.js.html +104 -0
  189. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/object/merge.js.html +152 -0
  190. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/object/pick.js.html +146 -0
  191. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/object/zip.js.html +134 -0
  192. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/regexp/index.html +111 -0
  193. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/regexp/is.js.html +95 -0
  194. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/string/index.html +141 -0
  195. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/string/is.js.html +95 -0
  196. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/string/isBetween.js.html +128 -0
  197. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/string/isNotEmpty.js.html +104 -0
  198. package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov.info +940 -0
  199. package/coverage/HeadlessChrome 80.0.3987 (Linux 0.0.0)/lcov-report/index.html +14 -14
  200. package/coverage/HeadlessChrome 80.0.3987 (Linux 0.0.0)/lcov-report/src/array/dedupe.js.html +1 -1
  201. package/coverage/HeadlessChrome 80.0.3987 (Linux 0.0.0)/lcov-report/src/array/index.html +1 -1
  202. package/coverage/HeadlessChrome 80.0.3987 (Linux 0.0.0)/lcov-report/src/array/is.js.html +1 -1
  203. package/coverage/HeadlessChrome 80.0.3987 (Linux 0.0.0)/lcov-report/src/boolean/index.html +1 -1
  204. package/coverage/HeadlessChrome 80.0.3987 (Linux 0.0.0)/lcov-report/src/boolean/is.js.html +1 -1
  205. package/coverage/HeadlessChrome 80.0.3987 (Linux 0.0.0)/lcov-report/src/caching/index.html +1 -1
  206. package/coverage/HeadlessChrome 80.0.3987 (Linux 0.0.0)/lcov-report/src/caching/memoize.js.html +1 -1
  207. package/coverage/HeadlessChrome 80.0.3987 (Linux 0.0.0)/lcov-report/src/date/index.html +1 -1
  208. package/coverage/HeadlessChrome 80.0.3987 (Linux 0.0.0)/lcov-report/src/date/is.js.html +1 -1
  209. package/coverage/HeadlessChrome 80.0.3987 (Linux 0.0.0)/lcov-report/src/deep/define.js.html +1 -1
  210. package/coverage/HeadlessChrome 80.0.3987 (Linux 0.0.0)/lcov-report/src/deep/freeze.js.html +1 -1
  211. package/coverage/HeadlessChrome 80.0.3987 (Linux 0.0.0)/lcov-report/src/deep/get.js.html +1 -1
  212. package/coverage/HeadlessChrome 80.0.3987 (Linux 0.0.0)/lcov-report/src/deep/index.html +1 -1
  213. package/coverage/HeadlessChrome 80.0.3987 (Linux 0.0.0)/lcov-report/src/deep/seal.js.html +1 -1
  214. package/coverage/HeadlessChrome 80.0.3987 (Linux 0.0.0)/lcov-report/src/deep/set.js.html +1 -1
  215. package/coverage/HeadlessChrome 80.0.3987 (Linux 0.0.0)/lcov-report/src/equal.js.html +1 -1
  216. package/coverage/HeadlessChrome 80.0.3987 (Linux 0.0.0)/lcov-report/src/formdata/index.html +1 -1
  217. package/coverage/HeadlessChrome 80.0.3987 (Linux 0.0.0)/lcov-report/src/formdata/is.js.html +1 -1
  218. package/coverage/HeadlessChrome 80.0.3987 (Linux 0.0.0)/lcov-report/src/function/index.html +21 -6
  219. package/coverage/HeadlessChrome 80.0.3987 (Linux 0.0.0)/lcov-report/src/function/is.js.html +1 -1
  220. package/coverage/HeadlessChrome 80.0.3987 (Linux 0.0.0)/lcov-report/src/function/noop.js.html +1 -1
  221. package/coverage/HeadlessChrome 80.0.3987 (Linux 0.0.0)/lcov-report/src/function/noopresolve.js.html +1 -1
  222. package/coverage/HeadlessChrome 80.0.3987 (Linux 0.0.0)/lcov-report/src/function/noopreturn.js.html +1 -1
  223. package/coverage/HeadlessChrome 80.0.3987 (Linux 0.0.0)/lcov-report/src/function/sleep.js.html +119 -0
  224. package/coverage/HeadlessChrome 80.0.3987 (Linux 0.0.0)/lcov-report/src/hash/fnv1A.js.html +1 -1
  225. package/coverage/HeadlessChrome 80.0.3987 (Linux 0.0.0)/lcov-report/src/hash/guid.js.html +1 -1
  226. package/coverage/HeadlessChrome 80.0.3987 (Linux 0.0.0)/lcov-report/src/hash/index.html +1 -1
  227. package/coverage/HeadlessChrome 80.0.3987 (Linux 0.0.0)/lcov-report/src/index.html +1 -1
  228. package/coverage/HeadlessChrome 80.0.3987 (Linux 0.0.0)/lcov-report/src/number/index.html +1 -1
  229. package/coverage/HeadlessChrome 80.0.3987 (Linux 0.0.0)/lcov-report/src/number/is.js.html +1 -1
  230. package/coverage/HeadlessChrome 80.0.3987 (Linux 0.0.0)/lcov-report/src/number/isNumericalNaN.js.html +1 -1
  231. package/coverage/HeadlessChrome 80.0.3987 (Linux 0.0.0)/lcov-report/src/number/randomBetween.js.html +1 -1
  232. package/coverage/HeadlessChrome 80.0.3987 (Linux 0.0.0)/lcov-report/src/number/round.js.html +1 -1
  233. package/coverage/HeadlessChrome 80.0.3987 (Linux 0.0.0)/lcov-report/src/number/toPercentage.js.html +1 -1
  234. package/coverage/HeadlessChrome 80.0.3987 (Linux 0.0.0)/lcov-report/src/object/define.js.html +1 -1
  235. package/coverage/HeadlessChrome 80.0.3987 (Linux 0.0.0)/lcov-report/src/object/defineFrozen.js.html +1 -1
  236. package/coverage/HeadlessChrome 80.0.3987 (Linux 0.0.0)/lcov-report/src/object/defineSealed.js.html +1 -1
  237. package/coverage/HeadlessChrome 80.0.3987 (Linux 0.0.0)/lcov-report/src/object/forValues.js.html +1 -1
  238. package/coverage/HeadlessChrome 80.0.3987 (Linux 0.0.0)/lcov-report/src/object/index.html +1 -1
  239. package/coverage/HeadlessChrome 80.0.3987 (Linux 0.0.0)/lcov-report/src/object/is.js.html +1 -1
  240. package/coverage/HeadlessChrome 80.0.3987 (Linux 0.0.0)/lcov-report/src/object/merge.js.html +1 -1
  241. package/coverage/HeadlessChrome 80.0.3987 (Linux 0.0.0)/lcov-report/src/object/pick.js.html +1 -1
  242. package/coverage/HeadlessChrome 80.0.3987 (Linux 0.0.0)/lcov-report/src/object/zip.js.html +1 -1
  243. package/coverage/HeadlessChrome 80.0.3987 (Linux 0.0.0)/lcov-report/src/regexp/index.html +1 -1
  244. package/coverage/HeadlessChrome 80.0.3987 (Linux 0.0.0)/lcov-report/src/regexp/is.js.html +1 -1
  245. package/coverage/HeadlessChrome 80.0.3987 (Linux 0.0.0)/lcov-report/src/string/index.html +1 -1
  246. package/coverage/HeadlessChrome 80.0.3987 (Linux 0.0.0)/lcov-report/src/string/is.js.html +1 -1
  247. package/coverage/HeadlessChrome 80.0.3987 (Linux 0.0.0)/lcov.info +18 -0
  248. package/coverage/lcov-report/base.css +5 -4
  249. package/coverage/lcov-report/block-navigation.js +71 -48
  250. package/coverage/lcov-report/favicon.png +0 -0
  251. package/coverage/lcov-report/index.html +247 -50
  252. package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  253. package/coverage/lcov-report/sorter.js +51 -14
  254. package/coverage/lcov-report/src/array/dedupe.js.html +145 -0
  255. package/coverage/lcov-report/src/array/index.html +146 -0
  256. package/coverage/lcov-report/src/array/is.js.html +100 -0
  257. package/coverage/lcov-report/src/array/isNotEmpty.js.html +109 -0
  258. package/coverage/lcov-report/src/boolean/index.html +116 -0
  259. package/coverage/lcov-report/src/boolean/is.js.html +100 -0
  260. package/coverage/lcov-report/src/caching/index.html +116 -0
  261. package/coverage/lcov-report/src/caching/memoize.js.html +139 -0
  262. package/coverage/lcov-report/src/date/index.html +116 -0
  263. package/coverage/lcov-report/src/date/is.js.html +100 -0
  264. package/coverage/lcov-report/src/deep/define.js.html +106 -0
  265. package/coverage/lcov-report/src/deep/freeze.js.html +151 -0
  266. package/coverage/lcov-report/src/deep/get.js.html +190 -0
  267. package/coverage/lcov-report/src/deep/index.html +176 -0
  268. package/coverage/lcov-report/src/deep/seal.js.html +151 -0
  269. package/coverage/lcov-report/src/deep/set.js.html +229 -0
  270. package/coverage/lcov-report/src/equal.js.html +280 -0
  271. package/coverage/lcov-report/src/function/index.html +176 -0
  272. package/coverage/lcov-report/src/function/is.js.html +103 -0
  273. package/coverage/lcov-report/src/function/noop.js.html +100 -0
  274. package/coverage/lcov-report/src/function/noopresolve.js.html +103 -0
  275. package/coverage/lcov-report/src/function/noopreturn.js.html +103 -0
  276. package/coverage/lcov-report/src/function/sleep.js.html +121 -0
  277. package/coverage/lcov-report/src/hash/fnv1A.js.html +238 -0
  278. package/coverage/lcov-report/src/hash/guid.js.html +184 -0
  279. package/coverage/lcov-report/src/hash/index.html +131 -0
  280. package/coverage/lcov-report/src/index.html +131 -0
  281. package/coverage/lcov-report/src/is.js.html +196 -0
  282. package/coverage/lcov-report/src/number/index.html +221 -0
  283. package/coverage/lcov-report/src/number/is.js.html +109 -0
  284. package/coverage/lcov-report/src/number/isAbove.js.html +115 -0
  285. package/coverage/lcov-report/src/number/isBelow.js.html +115 -0
  286. package/coverage/lcov-report/src/number/isBetween.js.html +121 -0
  287. package/coverage/lcov-report/src/number/isNumericalNaN.js.html +100 -0
  288. package/coverage/lcov-report/src/number/randomBetween.js.html +136 -0
  289. package/coverage/lcov-report/src/number/round.js.html +139 -0
  290. package/coverage/lcov-report/src/number/toPercentage.js.html +151 -0
  291. package/coverage/lcov-report/src/object/define.js.html +118 -0
  292. package/coverage/lcov-report/src/object/defineFrozen.js.html +106 -0
  293. package/coverage/lcov-report/src/object/defineSealed.js.html +106 -0
  294. package/coverage/lcov-report/src/object/forValues.js.html +133 -0
  295. package/coverage/lcov-report/src/object/index.html +236 -0
  296. package/coverage/lcov-report/src/object/is.js.html +100 -0
  297. package/coverage/lcov-report/src/object/isNotEmpty.js.html +109 -0
  298. package/coverage/lcov-report/src/object/merge.js.html +157 -0
  299. package/coverage/lcov-report/src/object/pick.js.html +151 -0
  300. package/coverage/lcov-report/src/object/zip.js.html +145 -0
  301. package/coverage/lcov-report/src/regexp/index.html +116 -0
  302. package/coverage/lcov-report/src/regexp/is.js.html +100 -0
  303. package/coverage/lcov-report/src/string/index.html +146 -0
  304. package/coverage/lcov-report/src/string/is.js.html +100 -0
  305. package/coverage/lcov-report/src/string/isBetween.js.html +133 -0
  306. package/coverage/lcov-report/src/string/isNotEmpty.js.html +109 -0
  307. package/coverage/lcov.info +1132 -0
  308. package/date/is.js +5 -4
  309. package/deep/define.js +8 -10
  310. package/deep/freeze.js +19 -25
  311. package/deep/get.js +29 -32
  312. package/deep/seal.js +19 -25
  313. package/deep/set.js +41 -42
  314. package/equal.js +44 -59
  315. package/function/is.js +5 -6
  316. package/function/noop.js +2 -3
  317. package/function/noopresolve.js +7 -8
  318. package/function/noopreturn.js +5 -6
  319. package/function/sleep.js +15 -0
  320. package/hash/fnv1A.js +38 -54
  321. package/hash/guid.js +22 -30
  322. package/is.js +133 -0
  323. package/number/is.js +8 -8
  324. package/number/isAbove.js +15 -0
  325. package/number/isBelow.js +15 -0
  326. package/number/isBetween.js +16 -0
  327. package/number/isNumericalNaN.js +5 -4
  328. package/number/randomBetween.js +16 -19
  329. package/number/round.js +16 -19
  330. package/number/toPercentage.js +21 -26
  331. package/object/define.js +12 -13
  332. package/object/defineFrozen.js +9 -11
  333. package/object/defineSealed.js +9 -11
  334. package/object/forValues.js +17 -22
  335. package/object/is.js +5 -4
  336. package/object/isNotEmpty.js +15 -0
  337. package/object/merge.js +21 -22
  338. package/object/pick.js +22 -29
  339. package/object/zip.js +19 -20
  340. package/package.json +15 -17
  341. package/regexp/is.js +5 -4
  342. package/string/is.js +5 -4
  343. package/string/isBetween.js +21 -0
  344. package/string/isNotEmpty.js +16 -0
  345. package/test/constants.js +79 -0
  346. package/test/src/array.test.js +104 -51
  347. package/test/src/boolean.test.js +39 -43
  348. package/test/src/caching.test.js +10 -1
  349. package/test/src/date.test.js +39 -43
  350. package/test/src/deep.test.js +155 -66
  351. package/test/src/equal.test.js +66 -57
  352. package/test/src/function.test.js +85 -68
  353. package/test/src/hash.test.js +39 -30
  354. package/test/src/is.test.js +187 -0
  355. package/test/src/number.test.js +467 -73
  356. package/test/src/object.test.js +211 -149
  357. package/test/src/regexp.test.js +39 -43
  358. package/test/src/string.test.js +216 -40
  359. package/formdata/is.js +0 -9
  360. package/karma.conf.js +0 -64
  361. package/test/src/formdata.test.js +0 -74
  362. package/test/test_index.js +0 -2
@@ -1,74 +1,70 @@
1
1
  'use strict';
2
2
 
3
3
  import isRegExp from '../../src/regexp/is';
4
+ import {
5
+ fnNumericValues,
6
+ fnBooleanValues,
7
+ fnRegexValues,
8
+ fnStringValues,
9
+ fnObjectValues,
10
+ fnDateValues,
11
+ fnArrayValues,
12
+ fnFunctionValues,
13
+ fnNullables,
14
+ } from '../constants';
15
+
16
+ const chai = require('chai');
17
+ const spies = require('chai-spies');
18
+ chai.use(spies);
19
+
20
+ const expect = chai.expect;
21
+ const assert = chai.assert;
22
+ const should = chai.should();
23
+ const spy = chai.spy;
4
24
 
5
25
  describe("RegExp - isRegExp", () => {
6
26
  it ('not see a string as a regex', () => {
7
- expect(isRegExp('foo')).toEqual(false);
8
- expect(isRegExp(new String('bar'))).toEqual(false);
27
+ let vals = fnStringValues();
28
+ for (let el of vals) expect(isRegExp(el)).to.eql(false);
9
29
  });
10
30
 
11
31
  it ('not see a numeric value as a regex', () => {
12
- expect(isRegExp(1)).toEqual(false);
13
- expect(isRegExp(NaN)).toEqual(false);
14
- expect(isRegExp(0.000001)).toEqual(false);
15
- expect(isRegExp(8e10)).toEqual(false);
16
- expect(isRegExp(Math.PI)).toEqual(false);
17
- expect(isRegExp(new Number(1.12345))).toEqual(false);
18
- expect(isRegExp(new Number(Number.EPSILON))).toEqual(false);
32
+ let vals = fnNumericValues();
33
+ for (let el of vals) expect(isRegExp(el)).to.eql(false);
19
34
  });
20
35
 
21
36
  it ('not see a boolean as a regex', () => {
22
- expect(isRegExp(true)).toEqual(false);
23
- expect(isRegExp(false)).toEqual(false);
24
- expect(isRegExp(Boolean(true))).toEqual(false);
25
- expect(isRegExp(Boolean(false))).toEqual(false);
26
- expect(isRegExp(Boolean('foo'))).toEqual(false);
27
- expect(isRegExp(new Boolean(false))).toEqual(false);
37
+ let vals = fnBooleanValues();
38
+ for (let el of vals) expect(isRegExp(el)).to.eql(false);
28
39
  });
29
40
 
30
41
  it ('see a regex as a regex', () => {
31
- expect(isRegExp(/abcdefg/i)).toEqual(true);
32
- expect(isRegExp(new RegExp('\\w+'))).toEqual(true);
42
+ let vals = fnRegexValues();
43
+ for (let el of vals) expect(isRegExp(el)).to.eql(true);
33
44
  });
34
45
 
35
46
  it ('not see an object as a regex', () => {
36
- expect(isRegExp({bar:'foo'})).toEqual(false);
37
- expect(isRegExp(new Object())).toEqual(false);
38
- expect(isRegExp(Object.create(null))).toEqual(false);
39
- expect(isRegExp(Object.create([]))).toEqual(false);
47
+ let vals = fnObjectValues();
48
+ for (let el of vals) expect(isRegExp(el)).to.eql(false);
40
49
  });
41
50
 
42
- it ('not see a null as a regex', () => {
43
- expect(isRegExp(null)).toEqual(false);
51
+ it ('not see a nullable as a regex', () => {
52
+ let vals = fnNullables();
53
+ for (let el of vals) expect(isRegExp(el)).to.eql(false);
44
54
  });
45
55
 
46
56
  it ('not see a date as a regex', () => {
47
- expect(isRegExp(new Date())).toEqual(false);
48
- expect(isRegExp(Date.now())).toEqual(false);
49
- });
50
-
51
- it ('not see an undefined as a regex', () => {
52
- expect(isRegExp(undefined)).toEqual(false);
57
+ let vals = fnDateValues();
58
+ for (let el of vals) expect(isRegExp(el)).to.eql(false);
53
59
  });
54
60
 
55
61
  it ('not see an array as a regex', () => {
56
- expect(isRegExp([0, 1, 2])).toEqual(false);
57
- expect(isRegExp(new Array(1, 2, 3))).toEqual(false);
58
- expect(isRegExp(new Array(5))).toEqual(false);
62
+ let vals = fnArrayValues();
63
+ for (let el of vals) expect(isRegExp(el)).to.eql(false);
59
64
  });
60
65
 
61
66
  it ('not see a function as a regex', () => {
62
- function testFunction () {}
63
-
64
- const testArrowFunction = () => {};
65
-
66
- expect(isRegExp(testFunction)).toEqual(false);
67
- expect(isRegExp(testArrowFunction)).toEqual(false);
68
- });
69
-
70
- it ('not see formdata as a regex', () => {
71
- let fdata = new FormData();
72
- expect(isRegExp(fdata)).toEqual(false);
67
+ let vals = fnFunctionValues();
68
+ for (let el of vals) expect(isRegExp(el)).to.eql(false);
73
69
  });
74
70
  });
@@ -1,74 +1,250 @@
1
1
  'use strict';
2
2
 
3
- import isString from '../../src/string/is';
3
+ import isString from '../../src/string/is';
4
+ import isStringBetween from '../../src/string/isBetween';
5
+ import isNotEmptyString from '../../src/string/isNotEmpty';
6
+ import {
7
+ fnNumericValues,
8
+ fnBooleanValues,
9
+ fnRegexValues,
10
+ fnStringValues,
11
+ fnObjectValues,
12
+ fnDateValues,
13
+ fnArrayValues,
14
+ fnFunctionValues,
15
+ fnNullables,
16
+ } from '../constants';
17
+
18
+ const chai = require('chai');
19
+ const spies = require('chai-spies');
20
+ chai.use(spies);
21
+
22
+ const expect = chai.expect;
23
+ const assert = chai.assert;
24
+ const should = chai.should();
25
+ const spy = chai.spy;
4
26
 
5
27
  describe("String - isString", () => {
6
28
  it ('see a string as a string', () => {
7
- expect(isString('foo')).toEqual(true);
8
- expect(isString(new String('bar'))).toEqual(true);
29
+ let vals = fnStringValues();
30
+ for (let el of vals) expect(isString(el)).to.eql(true);
9
31
  });
10
32
 
11
33
  it ('not see a numeric value as a string', () => {
12
- expect(isString(1)).toEqual(false);
13
- expect(isString(NaN)).toEqual(false);
14
- expect(isString(0.000001)).toEqual(false);
15
- expect(isString(8e10)).toEqual(false);
16
- expect(isString(Math.PI)).toEqual(false);
17
- expect(isString(new Number(1.12345))).toEqual(false);
18
- expect(isString(new Number(Number.EPSILON))).toEqual(false);
34
+ let vals = fnNumericValues();
35
+ for (let el of vals) expect(isString(el)).to.eql(false);
19
36
  });
20
37
 
21
38
  it ('not see a boolean as a string', () => {
22
- expect(isString(true)).toEqual(false);
23
- expect(isString(false)).toEqual(false);
24
- expect(isString(Boolean(true))).toEqual(false);
25
- expect(isString(Boolean(false))).toEqual(false);
26
- expect(isString(Boolean('foo'))).toEqual(false);
27
- expect(isString(new Boolean(false))).toEqual(false);
39
+ let vals = fnBooleanValues();
40
+ for (let el of vals) expect(isString(el)).to.eql(false);
28
41
  });
29
42
 
30
43
  it ('not see a regex as a string', () => {
31
- expect(isString(/abcdefg/i)).toEqual(false);
32
- expect(isString(new RegExp('\\w+'))).toEqual(false);
44
+ let vals = fnRegexValues();
45
+ for (let el of vals) expect(isString(el)).to.eql(false);
33
46
  });
34
47
 
35
48
  it ('not see an object as a string', () => {
36
- expect(isString({bar:'foo'})).toEqual(false);
37
- expect(isString(new Object())).toEqual(false);
38
- expect(isString(Object.create(null))).toEqual(false);
39
- expect(isString(Object.create([]))).toEqual(false);
49
+ let vals = fnObjectValues();
50
+ for (let el of vals) expect(isString(el)).to.eql(false);
40
51
  });
41
52
 
42
- it ('not see a null as a string', () => {
43
- expect(isString(null)).toEqual(false);
53
+ it ('not see a nullable as a string', () => {
54
+ let vals = fnNullables();
55
+ for (let el of vals) expect(isString(el)).to.eql(false);
44
56
  });
45
57
 
46
58
  it ('not see a date as a string', () => {
47
- expect(isString(new Date())).toEqual(false);
48
- expect(isString(Date.now())).toEqual(false);
59
+ let vals = fnDateValues();
60
+ for (let el of vals) expect(isString(el)).to.eql(false);
61
+ });
62
+
63
+ it ('not see an array as a string', () => {
64
+ let vals = fnArrayValues();
65
+ for (let el of vals) expect(isString(el)).to.eql(false);
49
66
  });
50
67
 
51
- it ('not see an undefined as a string', () => {
52
- expect(isString(undefined)).toEqual(false);
68
+ it ('not see a function as a string', () => {
69
+ let vals = fnFunctionValues();
70
+ for (let el of vals) expect(isString(el)).to.eql(false);
53
71
  });
72
+ });
54
73
 
55
- it ('see an array as a string', () => {
56
- expect(isString([0, 1, 2])).toEqual(false);
57
- expect(isString(new Array(1, 2, 3))).toEqual(false);
58
- expect(isString(new Array(5))).toEqual(false);
74
+ describe("String - isStringBetween", () => {
75
+ it ('not see a number as a string between', () => {
76
+ let vals = fnNumericValues();
77
+ for (let el of vals) expect(isStringBetween(el, 0, 1000)).to.eql(false);
59
78
  });
60
79
 
61
- it ('not see a function as a string', () => {
62
- function testFunction () {}
80
+ it ('treat string values between ranges correctly', () => {
81
+ let vals = [
82
+ ['Hi', 1, 5],
83
+ ['', 0, 1],
84
+ ['Hello world!', 1, 13],
85
+ ];
86
+ for (let el of vals) expect(isStringBetween(el[0], el[1], el[2])).to.eql(true);
87
+ });
88
+
89
+ it ('treat string values between ranges with invalid values incorrectly', () => {
90
+ let vals = [
91
+ ['Hi', 1, 5],
92
+ ['', 0, 1],
93
+ ['Hello world!', 1, 13],
94
+ ];
95
+ for (let el of vals) expect(isStringBetween(el[0], `${el[1]}`, el[2])).to.eql(false);
96
+ for (let el of vals) expect(isStringBetween(el[0], el[1], `${el[2]}`)).to.eql(false);
97
+ });
98
+
99
+ it ('treat string values below lower bound as false', () => {
100
+ let vals = [
101
+ ['Peter', 8, 100],
102
+ ['', 1, 50],
103
+ ];
104
+ for (let el of vals) expect(isStringBetween(el[0], el[1], el[2])).to.eql(false);
105
+ });
106
+
107
+ it ('treat string values at lower bound as true', () => {
108
+ let vals = [
109
+ ['Peter', 5, 100],
110
+ ['', 0, 50],
111
+ ];
112
+ for (let el of vals) expect(isStringBetween(el[0], el[1], el[2])).to.eql(true);
113
+ });
114
+
115
+ it ('treat string values above upper bound as false', () => {
116
+ let vals = [
117
+ ['Peters Magic Castle', 5, 18],
118
+ ['foo', 0, 2],
119
+ ];
120
+ for (let el of vals) expect(isStringBetween(el[0], el[1], el[2])).to.eql(false);
121
+ });
122
+
123
+ it ('treat string values at upper bound as true', () => {
124
+ let vals = [
125
+ ['Peters Magic Castle', 5, 19],
126
+ ['foo', 0, 3],
127
+ ];
128
+ for (let el of vals) expect(isStringBetween(el[0], el[1], el[2])).to.eql(true);
129
+ });
130
+
131
+ it ('returns false when passed a min that is higher than max', () => {
132
+ expect(isStringBetween('Hello there', 15, 10)).to.eql(false);
133
+ });
134
+
135
+ it ('returns false when passed a min that is equal to max', () => {
136
+ expect(isStringBetween('Hello there', 9, 9)).to.eql(false);
137
+ });
138
+
139
+ it ('autotrims string values', () => {
140
+ let vals = [
141
+ [' foo ', 0, 3]
142
+ ];
143
+ for (let el of vals) expect(isStringBetween(el[0], el[1], el[2])).to.eql(true);
144
+ });
145
+
146
+ it ('does not autotrim string values when overriding default', () => {
147
+ let vals = [
148
+ [' foo ', 0, 3]
149
+ ];
150
+ for (let el of vals) expect(isStringBetween(el[0], el[1], el[2], false)).to.eql(false);
151
+ });
152
+
153
+ it ('not see a boolean as a string between', () => {
154
+ let vals = fnBooleanValues();
155
+ for (let el of vals) expect(isStringBetween(el, 0, 1000)).to.eql(false);
156
+ });
157
+
158
+ it ('not see a regex as a string between', () => {
159
+ let vals = fnRegexValues();
160
+ for (let el of vals) expect(isStringBetween(el, 0, 1000)).to.eql(false);
161
+ });
63
162
 
64
- const testArrowFunction = () => {};
163
+ it ('not see an object as a string between', () => {
164
+ let vals = fnObjectValues();
165
+ for (let el of vals) expect(isStringBetween(el, 0, 1000)).to.eql(false);
166
+ });
167
+
168
+ it ('not see a nullable as a string between', () => {
169
+ let vals = fnNullables();
170
+ for (let el of vals) expect(isStringBetween(el, 0, 1000)).to.eql(false);
171
+ });
172
+
173
+ it ('not see a date as a string between', () => {
174
+ let vals = fnDateValues();
175
+ for (let el of vals) expect(isStringBetween(el, 0, 1000)).to.eql(false);
176
+ });
177
+
178
+ it ('not see an array as a string between', () => {
179
+ let vals = fnArrayValues();
180
+ for (let el of vals) expect(isStringBetween(el, 0, 1000)).to.eql(false);
181
+ });
182
+
183
+ it ('not see a function as a string between', () => {
184
+ let vals = fnFunctionValues();
185
+ for (let el of vals) expect(isStringBetween(el, 0, 1000)).to.eql(false);
186
+ });
187
+ });
188
+
189
+ describe("String - isNotEmptyString", () => {
190
+ it ('see a non-empty string as a not empty string', () => {
191
+ let vals = fnStringValues();
192
+ for (let el of vals) expect(isNotEmptyString(el)).to.eql(true);
193
+ });
194
+
195
+ it ('see an empty string as an empty string', () => {
196
+ expect(isNotEmptyString('')).to.eql(false);
197
+ });
198
+
199
+ it ('sees a string with only spaces as an empty string by default', () => {
200
+ expect(isNotEmptyString(' ')).to.eql(false);
201
+ expect(isNotEmptyString(' ')).to.eql(false);
202
+ expect(isNotEmptyString(' ')).to.eql(false);
203
+ });
204
+
205
+ it ('allows seeing a string with only spaces as a non-empty string by passing trimmed=false', () => {
206
+ expect(isNotEmptyString(' ', false)).to.eql(true);
207
+ expect(isNotEmptyString(' ', false)).to.eql(true);
208
+ expect(isNotEmptyString(' ', false)).to.eql(true);
209
+ });
210
+
211
+ it ('not see a numeric value as a not empty string', () => {
212
+ let vals = fnNumericValues();
213
+ for (let el of vals) expect(isNotEmptyString(el)).to.eql(false);
214
+ });
215
+
216
+ it ('not see a boolean as a not empty string', () => {
217
+ let vals = fnBooleanValues();
218
+ for (let el of vals) expect(isNotEmptyString(el)).to.eql(false);
219
+ });
220
+
221
+ it ('not see a regex as a not empty string', () => {
222
+ let vals = fnRegexValues();
223
+ for (let el of vals) expect(isNotEmptyString(el)).to.eql(false);
224
+ });
225
+
226
+ it ('not see an object as a not empty string', () => {
227
+ let vals = fnObjectValues();
228
+ for (let el of vals) expect(isNotEmptyString(el)).to.eql(false);
229
+ });
230
+
231
+ it ('not see a nullable as a not empty string', () => {
232
+ let vals = fnNullables();
233
+ for (let el of vals) expect(isNotEmptyString(el)).to.eql(false);
234
+ });
235
+
236
+ it ('not see a date as a not empty string', () => {
237
+ let vals = fnDateValues();
238
+ for (let el of vals) expect(isNotEmptyString(el)).to.eql(false);
239
+ });
65
240
 
66
- expect(isString(testFunction)).toEqual(false);
67
- expect(isString(testArrowFunction)).toEqual(false);
241
+ it ('not see an array as a not empty string', () => {
242
+ let vals = fnArrayValues();
243
+ for (let el of vals) expect(isNotEmptyString(el)).to.eql(false);
68
244
  });
69
245
 
70
- it ('not see formdata as a string', () => {
71
- let fdata = new FormData();
72
- expect(isString(fdata)).toEqual(false);
246
+ it ('not see a function as a not empty string', () => {
247
+ let vals = fnFunctionValues();
248
+ for (let el of vals) expect(isNotEmptyString(el)).to.eql(false);
73
249
  });
74
250
  });
package/formdata/is.js DELETED
@@ -1,9 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: !0
5
- });
6
-
7
- exports.default = function (val) {
8
- return typeof FormData !== 'undefined' && val instanceof FormData;
9
- };
package/karma.conf.js DELETED
@@ -1,64 +0,0 @@
1
- const path = require('path');
2
-
3
- module.exports = function(config) {
4
- config.set({
5
- basePath: './',
6
- frameworks: ['jasmine'],
7
- files: [
8
- {pattern: 'test/test_index.js'},
9
- ],
10
- exclude: [],
11
- preprocessors: {
12
- 'test/test_index.js': ['webpack'],
13
- 'src/**/*.js': ['coverage'],
14
- },
15
- webpack: {
16
- mode: 'development',
17
- module: {
18
- rules: [
19
- // instrument only testing sources with Istanbul
20
- {
21
- test: /\.js$/,
22
- use: {
23
- loader: 'istanbul-instrumenter-loader',
24
- options: { esModules: true },
25
- },
26
- include: path.resolve('src/')
27
- }
28
- ]
29
- }
30
- },
31
- webpackMiddleware: {
32
- noInfo: true,
33
- stats: {
34
- chunks: false,
35
- },
36
- },
37
- client: {
38
- jasmine: {
39
- random: false,
40
- },
41
- },
42
- reporters: ['spec', 'coverage'],
43
- port: 9876,
44
- colors: true,
45
- logLevel: config.LOG_INFO,
46
- autoWatch: true,
47
- browsers: ['ChromeHeadless'],
48
- singleRun: true,
49
- coverageReporter: {
50
- reporters: [{type: 'lcov'}],
51
- },
52
- customLaunchers: {
53
- ChromeHeadless: {
54
- base: 'Chrome',
55
- flags: [
56
- '--no-sandbox',
57
- '--headless',
58
- '--disable-gpu',
59
- '--remote-debugging-port=9222',
60
- ],
61
- },
62
- },
63
- });
64
- };
@@ -1,74 +0,0 @@
1
- 'use strict';
2
-
3
- import isFormData from '../../src/formdata/is';
4
-
5
- describe("FormData - isFormData", () => {
6
- it ('not see a string as formdata', () => {
7
- expect(isFormData('foo')).toEqual(false);
8
- expect(isFormData(new String('bar'))).toEqual(false);
9
- });
10
-
11
- it ('not see a numeric value as formdata', () => {
12
- expect(isFormData(1)).toEqual(false);
13
- expect(isFormData(NaN)).toEqual(false);
14
- expect(isFormData(0.000001)).toEqual(false);
15
- expect(isFormData(8e10)).toEqual(false);
16
- expect(isFormData(Math.PI)).toEqual(false);
17
- expect(isFormData(new Number(1.12345))).toEqual(false);
18
- expect(isFormData(new Number(Number.EPSILON))).toEqual(false);
19
- });
20
-
21
- it ('not see a boolean as formdata', () => {
22
- expect(isFormData(true)).toEqual(false);
23
- expect(isFormData(false)).toEqual(false);
24
- expect(isFormData(Boolean(true))).toEqual(false);
25
- expect(isFormData(Boolean(false))).toEqual(false);
26
- expect(isFormData(Boolean('foo'))).toEqual(false);
27
- expect(isFormData(new Boolean(false))).toEqual(false);
28
- });
29
-
30
- it ('not see a regex as formdata', () => {
31
- expect(isFormData(/abcdefg/i)).toEqual(false);
32
- expect(isFormData(new RegExp('\\w+'))).toEqual(false);
33
- });
34
-
35
- it ('not see an object as formdata', () => {
36
- expect(isFormData({bar:'foo'})).toEqual(false);
37
- expect(isFormData(new Object())).toEqual(false);
38
- expect(isFormData(Object.create(null))).toEqual(false);
39
- expect(isFormData(Object.create([]))).toEqual(false);
40
- });
41
-
42
- it ('not see a null as formdata', () => {
43
- expect(isFormData(null)).toEqual(false);
44
- });
45
-
46
- it ('not see a date as formdata', () => {
47
- expect(isFormData(new Date())).toEqual(false);
48
- expect(isFormData(Date.now())).toEqual(false);
49
- });
50
-
51
- it ('not see an undefined as formdata', () => {
52
- expect(isFormData(undefined)).toEqual(false);
53
- });
54
-
55
- it ('not see an array as formdata', () => {
56
- expect(isFormData([0, 1, 2])).toEqual(false);
57
- expect(isFormData(new Array(1, 2, 3))).toEqual(false);
58
- expect(isFormData(new Array(5))).toEqual(false);
59
- });
60
-
61
- it ('not see a function as formdata', () => {
62
- function testFunction () {}
63
-
64
- const testArrowFunction = () => {};
65
-
66
- expect(isFormData(testFunction)).toEqual(false);
67
- expect(isFormData(testArrowFunction)).toEqual(false);
68
- });
69
-
70
- it ('see formdata as formdata', () => {
71
- let fdata = new FormData();
72
- expect(isFormData(fdata)).toEqual(true);
73
- });
74
- });
@@ -1,2 +0,0 @@
1
- var testsContext = require.context(".", true, /\.test\.js$/);
2
- testsContext.keys().forEach(testsContext);