@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,102 +1,99 @@
1
1
  'use strict';
2
2
 
3
- import isArray from '../../src/array/is';
4
- import dedupe from '../../src/array/dedupe';
3
+ import isArray from '../../src/array/is';
4
+ import isNotEmptyArray from '../../src/array/isNotEmpty';
5
+ import dedupe from '../../src/array/dedupe';
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;
5
26
 
6
27
  describe("Array - isArray", () => {
7
28
  it ('not see a string as an array', () => {
8
- expect(isArray('foo')).toEqual(false);
9
- expect(isArray(new String('bar'))).toEqual(false);
29
+ let vals = fnStringValues();
30
+ for (let el of vals) expect(isArray(el)).to.eql(false);
10
31
  });
11
32
 
12
33
  it ('not see a numeric value as an array', () => {
13
- expect(isArray(1)).toEqual(false);
14
- expect(isArray(NaN)).toEqual(false);
15
- expect(isArray(0.000001)).toEqual(false);
16
- expect(isArray(8e10)).toEqual(false);
17
- expect(isArray(Math.PI)).toEqual(false);
18
- expect(isArray(new Number(1.12345))).toEqual(false);
19
- expect(isArray(new Number(Number.EPSILON))).toEqual(false);
34
+ let vals = fnNumericValues();
35
+ for (let el of vals) expect(isArray(el)).to.eql(false);
20
36
  });
21
37
 
22
38
  it ('not see a boolean as an array', () => {
23
- expect(isArray(true)).toEqual(false);
24
- expect(isArray(false)).toEqual(false);
25
- expect(isArray(Boolean(true))).toEqual(false);
26
- expect(isArray(Boolean(false))).toEqual(false);
27
- expect(isArray(Boolean('foo'))).toEqual(false);
28
- expect(isArray(new Boolean(false))).toEqual(false);
39
+ let vals = fnBooleanValues();
40
+ for (let el of vals) expect(isArray(el)).to.eql(false);
29
41
  });
30
42
 
31
43
  it ('not see a regex as an array', () => {
32
- expect(isArray(/abcdefg/i)).toEqual(false);
33
- expect(isArray(new RegExp('\\w+'))).toEqual(false);
44
+ let vals = fnRegexValues();
45
+ for (let el of vals) expect(isArray(el)).to.eql(false);
34
46
  });
35
47
 
36
48
  it ('not see an object as an array', () => {
37
- expect(isArray({bar:'foo'})).toEqual(false);
38
- expect(isArray(new Object())).toEqual(false);
39
- expect(isArray(Object.create(null))).toEqual(false);
40
- expect(isArray(Object.create([]))).toEqual(false);
49
+ let vals = fnObjectValues();
50
+ for (let el of vals) expect(isArray(el)).to.eql(false);
41
51
  });
42
52
 
43
- it ('not see a null as an array', () => {
44
- expect(isArray(null)).toEqual(false);
53
+ it ('not see a nullable as an array', () => {
54
+ let vals = fnNullables();
55
+ for (let el of vals) expect(isArray(el)).to.eql(false);
45
56
  });
46
57
 
47
58
  it ('not see a date as an array', () => {
48
- expect(isArray(new Date())).toEqual(false);
49
- expect(isArray(Date.now())).toEqual(false);
50
- });
51
-
52
- it ('not see an undefined as an array', () => {
53
- expect(isArray(undefined)).toEqual(false);
59
+ let vals = fnDateValues();
60
+ for (let el of vals) expect(isArray(el)).to.eql(false);
54
61
  });
55
62
 
56
63
  it ('see an array as an array', () => {
57
- expect(isArray([0, 1, 2])).toEqual(true);
58
- expect(isArray(new Array(1, 2, 3))).toEqual(true);
59
- expect(isArray(new Array(5))).toEqual(true);
64
+ let vals = fnArrayValues();
65
+ for (let el of vals) expect(isArray(el)).to.eql(true);
60
66
  });
61
67
 
62
68
  it ('not see a function as an array', () => {
63
- function testFunction () {}
64
-
65
- const testArrowFunction = () => {};
66
-
67
- expect(isArray(testFunction)).toEqual(false);
68
- expect(isArray(testArrowFunction)).toEqual(false);
69
- });
70
-
71
- it ('not see formdata as an array', () => {
72
- let fdata = new FormData();
73
- expect(isArray(fdata)).toEqual(false);
69
+ let vals = fnFunctionValues();
70
+ for (let el of vals) expect(isArray(el)).to.eql(false);
74
71
  });
75
72
  });
76
73
 
77
74
  describe("Array - dedupe", () => {
78
75
  it ('correctly remove duplicate bool flags from an array', () => {
79
- expect(dedupe([true, false, false, false, true])).toEqual([true, false]);
76
+ expect(dedupe([true, false, false, false, true])).to.eql([true, false]);
80
77
  });
81
78
 
82
79
  it ('correctly remove duplicate numeric values from an array', () => {
83
- expect(dedupe([0, 1, 1, 2, 99, 100, 99, 2, 3, 3, 4])).toEqual([0, 1, 2, 99, 100, 3, 4]);
80
+ expect(dedupe([0, 1, 1, 2, 99, 100, 99, 2, 3, 3, 4])).to.eql([0, 1, 2, 99, 100, 3, 4]);
84
81
  });
85
82
 
86
83
  it ('correctly remove duplicate strings from an array', () => {
87
- expect(dedupe(['foo', 'bar', 'foo', 'foo', 'bar', 'test', 'test'])).toEqual(['foo', 'bar', 'test']);
84
+ expect(dedupe(['foo', 'bar', 'foo', 'foo', 'bar', 'test', 'test'])).to.eql(['foo', 'bar', 'test']);
88
85
  });
89
86
 
90
87
  it ('correctly remove duplicates in a mixed primitive array', () => {
91
88
  expect(dedupe(['foo', null, 1, 2, NaN, 'bar', undefined, 'bar', true, true, false, NaN, 1, 2, false, null, undefined ]))
92
- .toEqual(['foo', null, 1, 2, NaN, 'bar', undefined, true, false]);
89
+ .to.eql(['foo', null, 1, 2, NaN, 'bar', undefined, true, false]);
93
90
  });
94
91
 
95
92
  it ('correctly remove duplicate arrays from an array', () => {
96
93
  let test_a = [0, 1, 2, 3, 'hello', 'world', 4, 5];
97
94
  let test_b = [0, 1, [ 'foo', 'bar'], 2, 3, [['a'], ['b']]];
98
95
 
99
- expect(dedupe([test_a, test_b, test_b, test_a])).toEqual([test_a, test_b]);
96
+ expect(dedupe([test_a, test_b, test_b, test_a])).to.eql([test_a, test_b]);
100
97
  });
101
98
 
102
99
  it ('correctly remove duplicate objects from an array', () => {
@@ -121,6 +118,62 @@ describe("Array - dedupe", () => {
121
118
  test_b,
122
119
  test_a,
123
120
  test_b,
124
- ])).toEqual([test_a, test_b]);
121
+ ])).to.eql([test_a, test_b]);
122
+ });
123
+ });
124
+
125
+ describe("Array - isNotEmptyArray", () => {
126
+ it ('not see a string as a non empty array', () => {
127
+ let vals = fnStringValues();
128
+ for (let el of vals) expect(isNotEmptyArray(el)).to.eql(false);
129
+ });
130
+
131
+ it ('not see a numeric value as a non empty array', () => {
132
+ let vals = fnNumericValues();
133
+ for (let el of vals) expect(isNotEmptyArray(el)).to.eql(false);
134
+ });
135
+
136
+ it ('not see a boolean as a non empty array', () => {
137
+ let vals = fnBooleanValues();
138
+ for (let el of vals) expect(isNotEmptyArray(el)).to.eql(false);
139
+ });
140
+
141
+ it ('not see a regex as a non empty array', () => {
142
+ let vals = fnRegexValues();
143
+ for (let el of vals) expect(isNotEmptyArray(el)).to.eql(false);
144
+ });
145
+
146
+ it ('not see an object as a non empty array', () => {
147
+ let vals = fnObjectValues();
148
+ for (let el of vals) expect(isNotEmptyArray(el)).to.eql(false);
149
+ });
150
+
151
+ it ('not see a nullable as a non empty array', () => {
152
+ let vals = fnNullables();
153
+ for (let el of vals) expect(isNotEmptyArray(el)).to.eql(false);
154
+ });
155
+
156
+ it ('not see a date as a non empty array', () => {
157
+ let vals = fnDateValues();
158
+ for (let el of vals) expect(isNotEmptyArray(el)).to.eql(false);
159
+ });
160
+
161
+ it ('see a non empty array as a non empty array', () => {
162
+ let vals = fnArrayValues();
163
+ for (let el of vals) expect(isNotEmptyArray(el)).to.eql(true);
164
+
165
+ expect(isNotEmptyArray([false])).to.eql(true);
166
+ expect(isNotEmptyArray([null])).to.eql(true);
167
+ expect(isNotEmptyArray([undefined])).to.eql(true);
168
+ });
169
+
170
+ it ('not see an empty array as a non empty array', () => {
171
+ expect(isNotEmptyArray(new Array())).to.eql(false);
172
+ expect(isNotEmptyArray([])).to.eql(false);
173
+ });
174
+
175
+ it ('not see a function as a non empty array', () => {
176
+ let vals = fnFunctionValues();
177
+ for (let el of vals) expect(isNotEmptyArray(el)).to.eql(false);
125
178
  });
126
179
  });
@@ -1,74 +1,70 @@
1
1
  'use strict';
2
2
 
3
3
  import isBoolean from '../../src/boolean/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("Boolean - isBoolean", () => {
6
26
  it ('not see a string as a boolean', () => {
7
- expect(isBoolean('foo')).toEqual(false);
8
- expect(isBoolean(new String('bar'))).toEqual(false);
27
+ let vals = fnStringValues();
28
+ for (let el of vals) expect(isBoolean(el)).to.eql(false);
9
29
  });
10
30
 
11
31
  it ('not see a numeric value as a boolean', () => {
12
- expect(isBoolean(1)).toEqual(false);
13
- expect(isBoolean(NaN)).toEqual(false);
14
- expect(isBoolean(0.000001)).toEqual(false);
15
- expect(isBoolean(8e10)).toEqual(false);
16
- expect(isBoolean(Math.PI)).toEqual(false);
17
- expect(isBoolean(new Number(1.12345))).toEqual(false);
18
- expect(isBoolean(new Number(Number.EPSILON))).toEqual(false);
32
+ let vals = fnNumericValues();
33
+ for (let el of vals) expect(isBoolean(el)).to.eql(false);
19
34
  });
20
35
 
21
36
  it ('see a boolean as a boolean', () => {
22
- expect(isBoolean(true)).toEqual(true);
23
- expect(isBoolean(false)).toEqual(true);
24
- expect(isBoolean(Boolean(true))).toEqual(true);
25
- expect(isBoolean(Boolean(false))).toEqual(true);
26
- expect(isBoolean(Boolean('foo'))).toEqual(true);
27
- expect(isBoolean(new Boolean(false))).toEqual(true);
37
+ let vals = fnBooleanValues();
38
+ for (let el of vals) expect(isBoolean(el)).to.eql(true);
28
39
  });
29
40
 
30
41
  it ('not see a regex as a boolean', () => {
31
- expect(isBoolean(/abcdefg/i)).toEqual(false);
32
- expect(isBoolean(new RegExp('\\w+'))).toEqual(false);
42
+ let vals = fnRegexValues();
43
+ for (let el of vals) expect(isBoolean(el)).to.eql(false);
33
44
  });
34
45
 
35
46
  it ('not see an object as a boolean', () => {
36
- expect(isBoolean({bar:'foo'})).toEqual(false);
37
- expect(isBoolean(new Object())).toEqual(false);
38
- expect(isBoolean(Object.create(null))).toEqual(false);
39
- expect(isBoolean(Object.create([]))).toEqual(false);
47
+ let vals = fnObjectValues();
48
+ for (let el of vals) expect(isBoolean(el)).to.eql(false);
40
49
  });
41
50
 
42
- it ('not see a null as a boolean', () => {
43
- expect(isBoolean(null)).toEqual(false);
51
+ it ('not see a nullable as a boolean', () => {
52
+ let vals = fnNullables();
53
+ for (let el of vals) expect(isBoolean(el)).to.eql(false);
44
54
  });
45
55
 
46
56
  it ('not see a date as a boolean', () => {
47
- expect(isBoolean(new Date())).toEqual(false);
48
- expect(isBoolean(Date.now())).toEqual(false);
49
- });
50
-
51
- it ('not see an undefined as a boolean', () => {
52
- expect(isBoolean(undefined)).toEqual(false);
57
+ let vals = fnDateValues();
58
+ for (let el of vals) expect(isBoolean(el)).to.eql(false);
53
59
  });
54
60
 
55
61
  it ('not see an array as a boolean', () => {
56
- expect(isBoolean([0, 1, 2])).toEqual(false);
57
- expect(isBoolean(new Array(1, 2, 3))).toEqual(false);
58
- expect(isBoolean(new Array(5))).toEqual(false);
62
+ let vals = fnArrayValues();
63
+ for (let el of vals) expect(isBoolean(el)).to.eql(false);
59
64
  });
60
65
 
61
66
  it ('not see a function as a boolean', () => {
62
- function testFunction () {}
63
-
64
- const testArrowFunction = () => {};
65
-
66
- expect(isBoolean(testFunction)).toEqual(false);
67
- expect(isBoolean(testArrowFunction)).toEqual(false);
68
- });
69
-
70
- it ('not see formdata as a boolean', () => {
71
- let fdata = new FormData();
72
- expect(isBoolean(fdata)).toEqual(false);
67
+ let vals = fnFunctionValues();
68
+ for (let el of vals) expect(isBoolean(el)).to.eql(false);
73
69
  });
74
70
  });
@@ -3,6 +3,15 @@
3
3
  import memoize from '../../src/caching/memoize';
4
4
  import fnv1A from '../../src/hash/fnv1A';
5
5
 
6
+ const chai = require('chai');
7
+ const spies = require('chai-spies');
8
+ chai.use(spies);
9
+
10
+ const expect = chai.expect;
11
+ const assert = chai.assert;
12
+ const should = chai.should();
13
+ const spy = chai.spy;
14
+
6
15
  describe("Caching - memoize", () => {
7
16
  let rslt_uncached, rslt_cached;
8
17
 
@@ -46,6 +55,6 @@ describe("Caching - memoize", () => {
46
55
  });
47
56
 
48
57
  it ('should cache', () => {
49
- expect(rslt_cached < rslt_uncached).toBe(true);
58
+ expect(rslt_cached < rslt_uncached).to.eql(true);
50
59
  });
51
60
  });
@@ -1,74 +1,70 @@
1
1
  'use strict';
2
2
 
3
3
  import isDate from '../../src/date/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("Date - isDate", () => {
6
26
  it ('not see a string as a date', () => {
7
- expect(isDate('foo')).toEqual(false);
8
- expect(isDate(new String('bar'))).toEqual(false);
27
+ let vals = fnStringValues();
28
+ for (let el of vals) expect(isDate(el)).to.eql(false);
9
29
  });
10
30
 
11
31
  it ('not see a numeric value as a date', () => {
12
- expect(isDate(1)).toEqual(false);
13
- expect(isDate(NaN)).toEqual(false);
14
- expect(isDate(0.000001)).toEqual(false);
15
- expect(isDate(8e10)).toEqual(false);
16
- expect(isDate(Math.PI)).toEqual(false);
17
- expect(isDate(new Number(1.12345))).toEqual(false);
18
- expect(isDate(new Number(Number.EPSILON))).toEqual(false);
32
+ let vals = fnNumericValues();
33
+ for (let el of vals) expect(isDate(el)).to.eql(false);
19
34
  });
20
35
 
21
36
  it ('not see a boolean as a date', () => {
22
- expect(isDate(true)).toEqual(false);
23
- expect(isDate(false)).toEqual(false);
24
- expect(isDate(Boolean(true))).toEqual(false);
25
- expect(isDate(Boolean(false))).toEqual(false);
26
- expect(isDate(Boolean('foo'))).toEqual(false);
27
- expect(isDate(new Boolean(false))).toEqual(false);
37
+ let vals = fnBooleanValues();
38
+ for (let el of vals) expect(isDate(el)).to.eql(false);
28
39
  });
29
40
 
30
41
  it ('not see a regex as a date', () => {
31
- expect(isDate(/abcdefg/i)).toEqual(false);
32
- expect(isDate(new RegExp('\\w+'))).toEqual(false);
42
+ let vals = fnRegexValues();
43
+ for (let el of vals) expect(isDate(el)).to.eql(false);
33
44
  });
34
45
 
35
46
  it ('not see an object as a date', () => {
36
- expect(isDate({bar:'foo'})).toEqual(false);
37
- expect(isDate(new Object())).toEqual(false);
38
- expect(isDate(Object.create(null))).toEqual(false);
39
- expect(isDate(Object.create([]))).toEqual(false);
47
+ let vals = fnObjectValues();
48
+ for (let el of vals) expect(isDate(el)).to.eql(false);
40
49
  });
41
50
 
42
- it ('not see a null as a date', () => {
43
- expect(isDate(null)).toEqual(false);
51
+ it ('not see a nullable as a date', () => {
52
+ let vals = fnNullables();
53
+ for (let el of vals) expect(isDate(el)).to.eql(false);
44
54
  });
45
55
 
46
56
  it ('see a date as a date', () => {
47
- expect(isDate(new Date())).toEqual(true);
48
- expect(isDate(Date.now())).toEqual(false);
49
- });
50
-
51
- it ('not see an undefined as a date', () => {
52
- expect(isDate(undefined)).toEqual(false);
57
+ let vals = fnDateValues();
58
+ for (let el of vals) expect(isDate(el)).to.eql(true);
53
59
  });
54
60
 
55
61
  it ('not see an array as a date', () => {
56
- expect(isDate([0, 1, 2])).toEqual(false);
57
- expect(isDate(new Array(1, 2, 3))).toEqual(false);
58
- expect(isDate(new Array(5))).toEqual(false);
62
+ let vals = fnArrayValues();
63
+ for (let el of vals) expect(isDate(el)).to.eql(false);
59
64
  });
60
65
 
61
66
  it ('not see a function as a date', () => {
62
- function testFunction () {}
63
-
64
- const testArrowFunction = () => {};
65
-
66
- expect(isDate(testFunction)).toEqual(false);
67
- expect(isDate(testArrowFunction)).toEqual(false);
68
- });
69
-
70
- it ('not see formdata as a date', () => {
71
- let fdata = new FormData();
72
- expect(isDate(fdata)).toEqual(false);
67
+ let vals = fnFunctionValues();
68
+ for (let el of vals) expect(isDate(el)).to.eql(false);
73
69
  });
74
70
  });