@valkyriestudios/utils 4.2.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.
- package/.babelrc +1 -0
- package/.eslintrc.json +152 -0
- package/.nyc_output/79bac8a3-26d6-499d-a9d9-6f61d6c11628.json +1 -0
- package/.nyc_output/8a42299e-25b8-4720-a08c-cb83c830059c.json +1 -0
- package/.nyc_output/processinfo/79bac8a3-26d6-499d-a9d9-6f61d6c11628.json +1 -0
- package/.nyc_output/processinfo/8a42299e-25b8-4720-a08c-cb83c830059c.json +1 -0
- package/.nyc_output/processinfo/index.json +1 -0
- package/.nycrc +4 -0
- package/.travis.yml +2 -3
- package/CHANGELOG.md +43 -0
- package/README.md +20 -4
- package/array/dedupe.js +14 -14
- package/array/is.js +5 -4
- package/array/isNotEmpty.js +8 -9
- package/boolean/is.js +5 -4
- package/caching/memoize.js +14 -19
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/base.css +224 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/block-navigation.js +87 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/favicon.png +0 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/index.html +296 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/prettify.css +1 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/prettify.js +2 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/sort-arrow-sprite.png +0 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/sorter.js +196 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/array/dedupe.js.html +118 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/array/index.html +146 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/array/is.js.html +100 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/array/isNotEmpty.js.html +109 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/boolean/index.html +116 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/boolean/is.js.html +100 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/caching/index.html +116 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/caching/memoize.js.html +130 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/date/index.html +116 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/date/is.js.html +100 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/deep/define.js.html +106 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/deep/freeze.js.html +151 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/deep/get.js.html +187 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/deep/index.html +176 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/deep/seal.js.html +151 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/deep/set.js.html +220 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/equal.js.html +274 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/formdata/index.html +116 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/formdata/is.js.html +100 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/function/index.html +176 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/function/is.js.html +103 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/function/noop.js.html +100 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/function/noopresolve.js.html +103 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/function/noopreturn.js.html +103 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/function/sleep.js.html +124 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/hash/fnv1A.js.html +232 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/hash/guid.js.html +175 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/hash/index.html +131 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/index.html +131 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/is.js.html +202 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/number/index.html +221 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/number/is.js.html +112 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/number/isAbove.js.html +115 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/number/isBelow.js.html +115 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/number/isBetween.js.html +121 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/number/isNumericalNaN.js.html +100 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/number/randomBetween.js.html +136 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/number/round.js.html +139 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/number/toPercentage.js.html +151 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/object/define.js.html +118 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/object/defineFrozen.js.html +106 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/object/defineSealed.js.html +106 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/object/forValues.js.html +133 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/object/index.html +236 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/object/is.js.html +100 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/object/isNotEmpty.js.html +109 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/object/merge.js.html +157 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/object/pick.js.html +151 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/object/zip.js.html +139 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/regexp/index.html +116 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/regexp/is.js.html +100 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/string/index.html +146 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/string/is.js.html +100 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/string/isBetween.js.html +133 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov-report/src/string/isNotEmpty.js.html +109 -0
- package/coverage/Chrome Headless 100.0.4896.127 (Linux x86_64)/lcov.info +974 -0
- package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/index.html +1 -1
- package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/array/dedupe.js.html +1 -1
- package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/array/index.html +1 -1
- package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/array/is.js.html +1 -1
- package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/array/isNotEmpty.js.html +1 -1
- package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/boolean/index.html +1 -1
- package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/boolean/is.js.html +1 -1
- package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/caching/index.html +1 -1
- package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/caching/memoize.js.html +1 -1
- package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/date/index.html +1 -1
- package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/date/is.js.html +1 -1
- package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/deep/define.js.html +1 -1
- package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/deep/freeze.js.html +1 -1
- package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/deep/get.js.html +1 -1
- package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/deep/index.html +1 -1
- package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/deep/seal.js.html +1 -1
- package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/deep/set.js.html +1 -1
- package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/equal.js.html +1 -1
- package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/formdata/index.html +1 -1
- package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/formdata/is.js.html +1 -1
- package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/function/index.html +1 -1
- package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/function/is.js.html +1 -1
- package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/function/noop.js.html +1 -1
- package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/function/noopresolve.js.html +1 -1
- package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/function/noopreturn.js.html +1 -1
- package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/function/sleep.js.html +1 -1
- package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/hash/fnv1A.js.html +1 -1
- package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/hash/guid.js.html +1 -1
- package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/hash/index.html +1 -1
- package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/index.html +1 -1
- package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/is.js.html +1 -1
- package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/number/index.html +1 -1
- package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/number/is.js.html +3 -3
- package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/number/isBetween.js.html +1 -1
- package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/number/isNumericalNaN.js.html +2 -2
- package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/number/randomBetween.js.html +1 -1
- package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/number/round.js.html +5 -5
- package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/number/toPercentage.js.html +1 -1
- package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/object/define.js.html +1 -1
- package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/object/defineFrozen.js.html +1 -1
- package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/object/defineSealed.js.html +1 -1
- package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/object/forValues.js.html +1 -1
- package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/object/index.html +1 -1
- package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/object/is.js.html +1 -1
- package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/object/isNotEmpty.js.html +1 -1
- package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/object/merge.js.html +1 -1
- package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/object/pick.js.html +1 -1
- package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/object/zip.js.html +1 -1
- package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/regexp/index.html +1 -1
- package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/regexp/is.js.html +1 -1
- package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/string/index.html +1 -1
- package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/string/is.js.html +1 -1
- package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/string/isBetween.js.html +1 -1
- package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov-report/src/string/isNotEmpty.js.html +1 -1
- package/coverage/Chrome Headless 93.0.4577.82 (Linux x86_64)/lcov.info +20 -20
- package/coverage/lcov-report/base.css +5 -4
- package/coverage/lcov-report/block-navigation.js +71 -48
- package/coverage/lcov-report/favicon.png +0 -0
- package/coverage/lcov-report/index.html +247 -50
- package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
- package/coverage/lcov-report/sorter.js +51 -14
- package/coverage/lcov-report/src/array/dedupe.js.html +145 -0
- package/coverage/lcov-report/src/array/index.html +146 -0
- package/coverage/lcov-report/src/array/is.js.html +100 -0
- package/coverage/lcov-report/src/array/isNotEmpty.js.html +109 -0
- package/coverage/lcov-report/src/boolean/index.html +116 -0
- package/coverage/lcov-report/src/boolean/is.js.html +100 -0
- package/coverage/lcov-report/src/caching/index.html +116 -0
- package/coverage/lcov-report/src/caching/memoize.js.html +139 -0
- package/coverage/lcov-report/src/date/index.html +116 -0
- package/coverage/lcov-report/src/date/is.js.html +100 -0
- package/coverage/lcov-report/src/deep/define.js.html +106 -0
- package/coverage/lcov-report/src/deep/freeze.js.html +151 -0
- package/coverage/lcov-report/src/deep/get.js.html +190 -0
- package/coverage/lcov-report/src/deep/index.html +176 -0
- package/coverage/lcov-report/src/deep/seal.js.html +151 -0
- package/coverage/lcov-report/src/deep/set.js.html +229 -0
- package/coverage/lcov-report/src/equal.js.html +280 -0
- package/coverage/lcov-report/src/function/index.html +176 -0
- package/coverage/lcov-report/src/function/is.js.html +103 -0
- package/coverage/lcov-report/src/function/noop.js.html +100 -0
- package/coverage/lcov-report/src/function/noopresolve.js.html +103 -0
- package/coverage/lcov-report/src/function/noopreturn.js.html +103 -0
- package/coverage/lcov-report/src/function/sleep.js.html +121 -0
- package/coverage/lcov-report/src/hash/fnv1A.js.html +238 -0
- package/coverage/lcov-report/src/hash/guid.js.html +184 -0
- package/coverage/lcov-report/src/hash/index.html +131 -0
- package/coverage/lcov-report/src/index.html +131 -0
- package/coverage/lcov-report/src/is.js.html +196 -0
- package/coverage/lcov-report/src/number/index.html +221 -0
- package/coverage/lcov-report/src/number/is.js.html +109 -0
- package/coverage/lcov-report/src/number/isAbove.js.html +115 -0
- package/coverage/lcov-report/src/number/isBelow.js.html +115 -0
- package/coverage/lcov-report/src/number/isBetween.js.html +121 -0
- package/coverage/lcov-report/src/number/isNumericalNaN.js.html +100 -0
- package/coverage/lcov-report/src/number/randomBetween.js.html +136 -0
- package/coverage/lcov-report/src/number/round.js.html +139 -0
- package/coverage/lcov-report/src/number/toPercentage.js.html +151 -0
- package/coverage/lcov-report/src/object/define.js.html +118 -0
- package/coverage/lcov-report/src/object/defineFrozen.js.html +106 -0
- package/coverage/lcov-report/src/object/defineSealed.js.html +106 -0
- package/coverage/lcov-report/src/object/forValues.js.html +133 -0
- package/coverage/lcov-report/src/object/index.html +236 -0
- package/coverage/lcov-report/src/object/is.js.html +100 -0
- package/coverage/lcov-report/src/object/isNotEmpty.js.html +109 -0
- package/coverage/lcov-report/src/object/merge.js.html +157 -0
- package/coverage/lcov-report/src/object/pick.js.html +151 -0
- package/coverage/lcov-report/src/object/zip.js.html +145 -0
- package/coverage/lcov-report/src/regexp/index.html +116 -0
- package/coverage/lcov-report/src/regexp/is.js.html +100 -0
- package/coverage/lcov-report/src/string/index.html +146 -0
- package/coverage/lcov-report/src/string/is.js.html +100 -0
- package/coverage/lcov-report/src/string/isBetween.js.html +133 -0
- package/coverage/lcov-report/src/string/isNotEmpty.js.html +109 -0
- package/coverage/lcov.info +1132 -0
- package/date/is.js +5 -4
- package/deep/define.js +8 -10
- package/deep/freeze.js +19 -25
- package/deep/get.js +29 -32
- package/deep/seal.js +19 -25
- package/deep/set.js +41 -42
- package/equal.js +44 -59
- package/function/is.js +5 -6
- package/function/noop.js +2 -3
- package/function/noopresolve.js +7 -8
- package/function/noopreturn.js +5 -6
- package/function/sleep.js +11 -17
- package/hash/fnv1A.js +38 -60
- package/hash/guid.js +22 -30
- package/is.js +110 -59
- package/number/is.js +8 -9
- package/number/isAbove.js +15 -0
- package/number/isBelow.js +15 -0
- package/number/isBetween.js +9 -12
- package/number/isNumericalNaN.js +5 -4
- package/number/randomBetween.js +16 -19
- package/number/round.js +16 -19
- package/number/toPercentage.js +21 -26
- package/object/define.js +12 -13
- package/object/defineFrozen.js +9 -11
- package/object/defineSealed.js +9 -11
- package/object/forValues.js +17 -22
- package/object/is.js +5 -4
- package/object/isNotEmpty.js +8 -9
- package/object/merge.js +21 -22
- package/object/pick.js +22 -29
- package/object/zip.js +19 -20
- package/package.json +15 -17
- package/regexp/is.js +5 -4
- package/string/is.js +5 -4
- package/string/isBetween.js +13 -20
- package/string/isNotEmpty.js +9 -11
- package/test/constants.js +0 -6
- package/test/src/array.test.js +38 -40
- package/test/src/boolean.test.js +18 -15
- package/test/src/caching.test.js +10 -1
- package/test/src/date.test.js +18 -15
- package/test/src/deep.test.js +155 -66
- package/test/src/equal.test.js +66 -57
- package/test/src/function.test.js +47 -45
- package/test/src/hash.test.js +39 -30
- package/test/src/is.test.js +68 -71
- package/test/src/number.test.js +351 -67
- package/test/src/object.test.js +129 -131
- package/test/src/regexp.test.js +18 -15
- package/test/src/string.test.js +59 -59
- package/formdata/is.js +0 -9
- package/karma.conf.js +0 -64
- package/test/src/formdata.test.js +0 -67
- package/test/test_index.js +0 -2
package/test/src/object.test.js
CHANGED
|
@@ -19,59 +19,62 @@ import {
|
|
|
19
19
|
fnDateValues,
|
|
20
20
|
fnArrayValues,
|
|
21
21
|
fnFunctionValues,
|
|
22
|
-
fnFormDataValues,
|
|
23
22
|
fnNullables,
|
|
24
23
|
} from '../constants';
|
|
25
24
|
|
|
25
|
+
const chai = require('chai');
|
|
26
|
+
const spies = require('chai-spies');
|
|
27
|
+
chai.use(spies);
|
|
28
|
+
|
|
29
|
+
const expect = chai.expect;
|
|
30
|
+
const assert = chai.assert;
|
|
31
|
+
const should = chai.should();
|
|
32
|
+
const spy = chai.spy;
|
|
33
|
+
|
|
26
34
|
describe("Object - isObject", () => {
|
|
27
35
|
it ('not see a string as an object', () => {
|
|
28
36
|
let vals = fnStringValues();
|
|
29
|
-
for (let el of vals) expect(isObject(el)).
|
|
37
|
+
for (let el of vals) expect(isObject(el)).to.eql(false);
|
|
30
38
|
});
|
|
31
39
|
|
|
32
40
|
it ('not see a numeric value as an object', () => {
|
|
33
41
|
let vals = fnNumericValues();
|
|
34
|
-
for (let el of vals) expect(isObject(el)).
|
|
42
|
+
for (let el of vals) expect(isObject(el)).to.eql(false);
|
|
35
43
|
});
|
|
36
44
|
|
|
37
45
|
it ('not see a boolean as an object', () => {
|
|
38
46
|
let vals = fnBooleanValues();
|
|
39
|
-
for (let el of vals) expect(isObject(el)).
|
|
47
|
+
for (let el of vals) expect(isObject(el)).to.eql(false);
|
|
40
48
|
});
|
|
41
49
|
|
|
42
50
|
it ('not see a regex as an object', () => {
|
|
43
51
|
let vals = fnRegexValues();
|
|
44
|
-
for (let el of vals) expect(isObject(el)).
|
|
52
|
+
for (let el of vals) expect(isObject(el)).to.eql(false);
|
|
45
53
|
});
|
|
46
54
|
|
|
47
55
|
it ('see an object as an object', () => {
|
|
48
56
|
let vals = fnObjectValues();
|
|
49
|
-
for (let el of vals) expect(isObject(el)).
|
|
57
|
+
for (let el of vals) expect(isObject(el)).to.eql(true);
|
|
50
58
|
});
|
|
51
59
|
|
|
52
60
|
it ('not see a nullable as an object', () => {
|
|
53
61
|
let vals = fnNullables();
|
|
54
|
-
for (let el of vals) expect(isObject(el)).
|
|
62
|
+
for (let el of vals) expect(isObject(el)).to.eql(false);
|
|
55
63
|
});
|
|
56
64
|
|
|
57
65
|
it ('not see a date as an object', () => {
|
|
58
66
|
let vals = fnDateValues();
|
|
59
|
-
for (let el of vals) expect(isObject(el)).
|
|
67
|
+
for (let el of vals) expect(isObject(el)).to.eql(false);
|
|
60
68
|
});
|
|
61
69
|
|
|
62
70
|
it ('not see an array as an object', () => {
|
|
63
71
|
let vals = fnArrayValues();
|
|
64
|
-
for (let el of vals) expect(isObject(el)).
|
|
72
|
+
for (let el of vals) expect(isObject(el)).to.eql(false);
|
|
65
73
|
});
|
|
66
74
|
|
|
67
75
|
it ('not see a function as an object', () => {
|
|
68
76
|
let vals = fnFunctionValues();
|
|
69
|
-
for (let el of vals) expect(isObject(el)).
|
|
70
|
-
});
|
|
71
|
-
|
|
72
|
-
it ('not see formdata as an object', () => {
|
|
73
|
-
let vals = fnFormDataValues();
|
|
74
|
-
for (let el of vals) expect(isObject(el)).toEqual(false);
|
|
77
|
+
for (let el of vals) expect(isObject(el)).to.eql(false);
|
|
75
78
|
});
|
|
76
79
|
});
|
|
77
80
|
|
|
@@ -87,38 +90,38 @@ describe("Object - pick", () => {
|
|
|
87
90
|
};
|
|
88
91
|
|
|
89
92
|
it ('correctly retrieve the selected keys', () => {
|
|
90
|
-
expect(pick(subject, ['a'])).
|
|
91
|
-
expect(pick(subject, ['a', 'b'])).
|
|
92
|
-
expect(pick(subject, ['a', 'c.e'])).
|
|
93
|
-
expect(pick(subject, ['a', 'c.d', 'c.f'])).
|
|
94
|
-
expect(pick(subject, ['a', 'b', 'd'])).
|
|
93
|
+
expect(pick(subject, ['a'])).to.eql({ a: 100 });
|
|
94
|
+
expect(pick(subject, ['a', 'b'])).to.eql({ a: 100, b: 200 });
|
|
95
|
+
expect(pick(subject, ['a', 'c.e'])).to.eql({ a: 100, c: { e: true }});
|
|
96
|
+
expect(pick(subject, ['a', 'c.d', 'c.f'])).to.eql({ a: 100, c: { d: 5, f: [0, 1, 2] }});
|
|
97
|
+
expect(pick(subject, ['a', 'b', 'd'])).to.eql({ a: 100, b: 200 });
|
|
95
98
|
});
|
|
96
99
|
|
|
97
100
|
it ('returns an empty object when nothing is passed', () => {
|
|
98
|
-
expect(pick()).
|
|
101
|
+
expect(pick()).to.eql({});
|
|
99
102
|
});
|
|
100
103
|
|
|
101
104
|
it ('returns an empty object when no keys are passed', () => {
|
|
102
|
-
expect(pick(subject)).
|
|
105
|
+
expect(pick(subject)).to.eql({});
|
|
103
106
|
});
|
|
104
107
|
|
|
105
108
|
it ('throws a type error when passed something else than an object', () => {
|
|
106
109
|
expect(function() {
|
|
107
110
|
pick(false);
|
|
108
|
-
}).
|
|
111
|
+
}).to.throw(TypeError);
|
|
109
112
|
expect(function() {
|
|
110
113
|
pick(subject, false);
|
|
111
|
-
}).
|
|
114
|
+
}).to.throw(TypeError);
|
|
112
115
|
});
|
|
113
116
|
});
|
|
114
117
|
|
|
115
118
|
describe("Object - merge", () => {
|
|
116
119
|
it ('returns the target object if only passed a target', () => {
|
|
117
|
-
expect(merge({a: 1, b: 2})).
|
|
120
|
+
expect(merge({a: 1, b: 2})).to.eql({a: 1, b:2 });
|
|
118
121
|
});
|
|
119
122
|
|
|
120
123
|
it ('merges keys correctly', () => {
|
|
121
|
-
expect(merge({ a: 1, b: 2, c: true}, { a: 5, c: false })).
|
|
124
|
+
expect(merge({ a: 1, b: 2, c: true}, { a: 5, c: false })).to.eql({ a: 5, b: 2, c: false });
|
|
122
125
|
expect(merge({
|
|
123
126
|
a: [0, 1, 2, 3],
|
|
124
127
|
b: {
|
|
@@ -130,7 +133,7 @@ describe("Object - merge", () => {
|
|
|
130
133
|
foo: 'bar',
|
|
131
134
|
hello: 'world',
|
|
132
135
|
},
|
|
133
|
-
}, { a: ['foo', 'bar'], b: { available: true }, c: { hello: 'core' }})).
|
|
136
|
+
}, { a: ['foo', 'bar'], b: { available: true }, c: { hello: 'core' }})).to.eql({
|
|
134
137
|
a: ['foo', 'bar'],
|
|
135
138
|
b: {
|
|
136
139
|
name: 'utils',
|
|
@@ -145,13 +148,13 @@ describe("Object - merge", () => {
|
|
|
145
148
|
});
|
|
146
149
|
|
|
147
150
|
it ('does not merge in keys that are not defined in the target', () => {
|
|
148
|
-
expect(merge({ a: 1, b: 2 }, { a: 2, b: 3, c: 4 })).
|
|
151
|
+
expect(merge({ a: 1, b: 2 }, { a: 2, b: 3, c: 4 })).to.eql({ a: 2, b: 3 });
|
|
149
152
|
});
|
|
150
153
|
|
|
151
154
|
it ('throws a type error when passed something else than an object', () => {
|
|
152
155
|
expect(function() {
|
|
153
156
|
merge(false, { a: 2 })
|
|
154
|
-
}).
|
|
157
|
+
}).to.throw(TypeError);
|
|
155
158
|
});
|
|
156
159
|
});
|
|
157
160
|
|
|
@@ -177,8 +180,8 @@ describe("Object - forValues", () => {
|
|
|
177
180
|
});
|
|
178
181
|
|
|
179
182
|
it ('correctly executes the cb on every value', () => {
|
|
180
|
-
expect(forValues(subject_sum, (key, val) => val + 1)).
|
|
181
|
-
expect(forValues(subject_obj, (key, val) => Object.assign(val, { name: `${val.first_name} ${val.last_name}` }))).
|
|
183
|
+
expect(forValues(subject_sum, (key, val) => val + 1)).to.eql({ a: 2, b: 3, c: 4 });
|
|
184
|
+
expect(forValues(subject_obj, (key, val) => Object.assign(val, { name: `${val.first_name} ${val.last_name}` }))).to.eql({
|
|
182
185
|
1823 : {
|
|
183
186
|
name: 'Jane Doe',
|
|
184
187
|
first_name: 'Jane',
|
|
@@ -195,55 +198,55 @@ describe("Object - forValues", () => {
|
|
|
195
198
|
last_name: 'The Clown',
|
|
196
199
|
},
|
|
197
200
|
});
|
|
198
|
-
expect(forValues(subject_sum, noopreturn)).
|
|
201
|
+
expect(forValues(subject_sum, noopreturn)).to.eql(subject_sum);
|
|
199
202
|
});
|
|
200
203
|
|
|
201
204
|
it ('throws a type error when passed something else than an object', () => {
|
|
202
205
|
expect(function() {
|
|
203
206
|
forValues(false, (key, val) => val + 1);
|
|
204
|
-
}).
|
|
207
|
+
}).to.throw(TypeError);
|
|
205
208
|
});
|
|
206
209
|
});
|
|
207
210
|
|
|
208
211
|
describe("Object - zip", () => {
|
|
209
212
|
it ('returns an empty object when called without parameters', () => {
|
|
210
|
-
expect(zip()).
|
|
213
|
+
expect(zip()).to.eql({});
|
|
211
214
|
});
|
|
212
215
|
|
|
213
216
|
it ('only returns a zipped object for the keys that are passed', () => {
|
|
214
|
-
expect(zip(['a'], [1, 2, 3])).
|
|
217
|
+
expect(zip(['a'], [1, 2, 3])).to.eql({a: 1});
|
|
215
218
|
});
|
|
216
219
|
|
|
217
220
|
it ('defaults to null when passed with only keys', () => {
|
|
218
|
-
expect(zip(['a', 'b', 'c'])).
|
|
221
|
+
expect(zip(['a', 'b', 'c'])).to.eql({a: null, b: null, c: null});
|
|
219
222
|
});
|
|
220
223
|
|
|
221
224
|
it ('defaults to the provided default when passed one', () => {
|
|
222
|
-
expect(zip(['a', 'b', 'c'], false, false)).
|
|
225
|
+
expect(zip(['a', 'b', 'c'], false, false)).to.eql({a: false, b: false, c: false});
|
|
223
226
|
});
|
|
224
227
|
|
|
225
228
|
it ('zips an object when passed with the correct parameters', () => {
|
|
226
|
-
expect(zip(['a', 'b', 'c'], [1, 2, 3])).
|
|
229
|
+
expect(zip(['a', 'b', 'c'], [1, 2, 3])).to.eql({ a: 1, b: 2, c: 3});
|
|
227
230
|
});
|
|
228
231
|
|
|
229
232
|
it ('throws a type error when passed something else than the expected parameters', () => {
|
|
230
233
|
expect(function() {
|
|
231
234
|
zip(false);
|
|
232
|
-
}).
|
|
235
|
+
}).to.throw(TypeError);
|
|
233
236
|
|
|
234
237
|
expect(function() {
|
|
235
238
|
zip(['a'], { hello: 'bar' });
|
|
236
|
-
}).
|
|
239
|
+
}).to.throw(TypeError);
|
|
237
240
|
});
|
|
238
241
|
});
|
|
239
242
|
|
|
240
243
|
describe("Object - define", () => {
|
|
241
244
|
it ('returns an empty object when called without parameters', () => {
|
|
242
|
-
expect(define()).
|
|
245
|
+
expect(define()).to.eql({});
|
|
243
246
|
});
|
|
244
247
|
|
|
245
248
|
it ('returns the same object when called with an empty properties object and an existing object', () => {
|
|
246
|
-
expect(define({}, {a: 1})).
|
|
249
|
+
expect(define({}, {a: 1})).to.eql({a: 1});
|
|
247
250
|
});
|
|
248
251
|
|
|
249
252
|
it ('defines properties that are passed without passing an existing object', () => {
|
|
@@ -258,22 +261,22 @@ describe("Object - define", () => {
|
|
|
258
261
|
},
|
|
259
262
|
});
|
|
260
263
|
|
|
261
|
-
|
|
262
|
-
expect(Object.getOwnPropertyDescriptor(obj, 'a').set).
|
|
263
|
-
|
|
264
|
+
should.exist(obj.a);
|
|
265
|
+
expect(Object.getOwnPropertyDescriptor(obj, 'a').set).to.eql(undefined);
|
|
266
|
+
assert.typeOf(Object.getOwnPropertyDescriptor(obj, 'a').get, 'function');
|
|
264
267
|
|
|
265
|
-
|
|
266
|
-
expect(Object.getOwnPropertyDescriptor(obj, 'b').get).
|
|
267
|
-
expect(Object.getOwnPropertyDescriptor(obj, 'b').set).
|
|
268
|
-
|
|
268
|
+
should.exist(obj.b);
|
|
269
|
+
expect(Object.getOwnPropertyDescriptor(obj, 'b').get).to.eql(undefined);
|
|
270
|
+
expect(Object.getOwnPropertyDescriptor(obj, 'b').set).to.eql(undefined);
|
|
271
|
+
assert.typeOf(Object.getOwnPropertyDescriptor(obj, 'b').value, 'function');
|
|
269
272
|
|
|
270
|
-
const spy_a =
|
|
271
|
-
expect(obj.a).
|
|
272
|
-
expect(spy_a).
|
|
273
|
+
const spy_a = spy(obj, 'a');
|
|
274
|
+
expect(obj.a).to.eql(1);
|
|
275
|
+
expect(spy_a).to.have.been.called;
|
|
273
276
|
|
|
274
|
-
const spy_b =
|
|
275
|
-
expect(obj.b()).
|
|
276
|
-
expect(spy_b).
|
|
277
|
+
const spy_b = spy(obj, 'b');
|
|
278
|
+
expect(obj.b()).to.eql(2);
|
|
279
|
+
expect(spy_b).to.have.been.called;
|
|
277
280
|
});
|
|
278
281
|
|
|
279
282
|
it ('defines properties that are passed on an existing object', () => {
|
|
@@ -288,24 +291,24 @@ describe("Object - define", () => {
|
|
|
288
291
|
},
|
|
289
292
|
}, { c: 1 });
|
|
290
293
|
|
|
291
|
-
|
|
292
|
-
expect(Object.getOwnPropertyDescriptor(obj, 'a').set).
|
|
293
|
-
|
|
294
|
+
should.exist(obj.a);
|
|
295
|
+
expect(Object.getOwnPropertyDescriptor(obj, 'a').set).to.eql(undefined);
|
|
296
|
+
assert.typeOf(Object.getOwnPropertyDescriptor(obj, 'a').get, 'function');
|
|
294
297
|
|
|
295
|
-
|
|
296
|
-
expect(Object.getOwnPropertyDescriptor(obj, 'b').get).
|
|
297
|
-
expect(Object.getOwnPropertyDescriptor(obj, 'b').set).
|
|
298
|
-
|
|
298
|
+
should.exist(obj.b);
|
|
299
|
+
expect(Object.getOwnPropertyDescriptor(obj, 'b').get).to.eql(undefined);
|
|
300
|
+
expect(Object.getOwnPropertyDescriptor(obj, 'b').set).to.eql(undefined);
|
|
301
|
+
assert.typeOf(Object.getOwnPropertyDescriptor(obj, 'b').value, 'function');
|
|
299
302
|
|
|
300
|
-
const spy_a =
|
|
301
|
-
expect(obj.a).
|
|
302
|
-
expect(spy_a).
|
|
303
|
+
const spy_a = spy(obj, 'a');
|
|
304
|
+
expect(obj.a).to.eql(1);
|
|
305
|
+
expect(spy_a).to.have.been.called;
|
|
303
306
|
|
|
304
|
-
const spy_b =
|
|
305
|
-
expect(obj.b()).
|
|
306
|
-
expect(spy_b).
|
|
307
|
+
const spy_b = spy(obj, 'b');
|
|
308
|
+
expect(obj.b()).to.eql(2);
|
|
309
|
+
expect(spy_b).to.have.been.called;
|
|
307
310
|
|
|
308
|
-
expect(obj.c).
|
|
311
|
+
expect(obj.c).to.eql(1);
|
|
309
312
|
});
|
|
310
313
|
|
|
311
314
|
it ('defines properties that are passed on an existing object', () => {
|
|
@@ -320,32 +323,32 @@ describe("Object - define", () => {
|
|
|
320
323
|
},
|
|
321
324
|
}, { a: 5 });
|
|
322
325
|
|
|
323
|
-
|
|
324
|
-
expect(Object.getOwnPropertyDescriptor(obj, 'a').set).
|
|
325
|
-
|
|
326
|
+
should.exist(obj.a);
|
|
327
|
+
expect(Object.getOwnPropertyDescriptor(obj, 'a').set).to.eql(undefined);
|
|
328
|
+
assert.typeOf(Object.getOwnPropertyDescriptor(obj, 'a').get, 'function');
|
|
326
329
|
|
|
327
|
-
|
|
328
|
-
expect(Object.getOwnPropertyDescriptor(obj, 'b').get).
|
|
329
|
-
expect(Object.getOwnPropertyDescriptor(obj, 'b').set).
|
|
330
|
-
|
|
330
|
+
should.exist(obj.b);
|
|
331
|
+
expect(Object.getOwnPropertyDescriptor(obj, 'b').get).to.eql(undefined);
|
|
332
|
+
expect(Object.getOwnPropertyDescriptor(obj, 'b').set).to.eql(undefined);
|
|
333
|
+
assert.typeOf(Object.getOwnPropertyDescriptor(obj, 'b').value, 'function');
|
|
331
334
|
|
|
332
|
-
const spy_a =
|
|
333
|
-
expect(obj.a).
|
|
334
|
-
expect(spy_a).
|
|
335
|
+
const spy_a = spy(obj, 'a');
|
|
336
|
+
expect(obj.a).to.eql(1);
|
|
337
|
+
expect(spy_a).to.have.been.called;
|
|
335
338
|
|
|
336
|
-
const spy_b =
|
|
337
|
-
expect(obj.b()).
|
|
338
|
-
expect(spy_b).
|
|
339
|
+
const spy_b = spy(obj, 'b');
|
|
340
|
+
expect(obj.b()).to.eql(2);
|
|
341
|
+
expect(spy_b).to.have.been.called;
|
|
339
342
|
});
|
|
340
343
|
|
|
341
344
|
it ('throws a type error when passed something else than the expected parameters', () => {
|
|
342
345
|
expect(function() {
|
|
343
346
|
define(false);
|
|
344
|
-
}).
|
|
347
|
+
}).to.throw(TypeError);
|
|
345
348
|
|
|
346
349
|
expect(function() {
|
|
347
350
|
define({}, false);
|
|
348
|
-
}).
|
|
351
|
+
}).to.throw(TypeError);
|
|
349
352
|
});
|
|
350
353
|
});
|
|
351
354
|
|
|
@@ -353,21 +356,21 @@ describe("Object - defineFrozen", () => {
|
|
|
353
356
|
it ('returns a frozen empty object when called without parameters', () => {
|
|
354
357
|
const obj = defineFrozen();
|
|
355
358
|
|
|
356
|
-
expect(obj).
|
|
357
|
-
expect(Object.isFrozen(obj)).
|
|
359
|
+
expect(obj).to.eql({});
|
|
360
|
+
expect(Object.isFrozen(obj)).to.eql(true);
|
|
358
361
|
expect(function() {
|
|
359
362
|
obj.b = false;
|
|
360
|
-
}).
|
|
363
|
+
}).to.throw();
|
|
361
364
|
});
|
|
362
365
|
|
|
363
366
|
it ('returns a frozen version of the same object when called with an empty properties object and an existing object', () => {
|
|
364
367
|
const obj = defineFrozen({}, {a: 1});
|
|
365
368
|
|
|
366
|
-
expect(obj).
|
|
367
|
-
expect(Object.isFrozen(obj)).
|
|
369
|
+
expect(obj).to.eql({a: 1});
|
|
370
|
+
expect(Object.isFrozen(obj)).to.eql(true);
|
|
368
371
|
expect(function() {
|
|
369
372
|
obj.a = 9999;
|
|
370
|
-
}).
|
|
373
|
+
}).to.throw();
|
|
371
374
|
});
|
|
372
375
|
|
|
373
376
|
it ('defines properties that are passed without passing an existing object, and freezes them', () => {
|
|
@@ -377,28 +380,28 @@ describe("Object - defineFrozen", () => {
|
|
|
377
380
|
},
|
|
378
381
|
});
|
|
379
382
|
|
|
380
|
-
|
|
381
|
-
expect(Object.getOwnPropertyDescriptor(obj, 'a').set).
|
|
382
|
-
|
|
383
|
+
should.exist(obj.a);
|
|
384
|
+
expect(Object.getOwnPropertyDescriptor(obj, 'a').set).to.eql(undefined);
|
|
385
|
+
assert.typeOf(Object.getOwnPropertyDescriptor(obj, 'a').get, 'function');
|
|
383
386
|
|
|
384
|
-
expect(Object.isFrozen(obj)).
|
|
387
|
+
expect(Object.isFrozen(obj)).to.eql(true);
|
|
385
388
|
expect(function () {
|
|
386
389
|
Object.defineProperty(obj, {
|
|
387
390
|
x: {
|
|
388
391
|
get: () => 9999,
|
|
389
392
|
},
|
|
390
393
|
});
|
|
391
|
-
}).
|
|
394
|
+
}).to.throw();
|
|
392
395
|
});
|
|
393
396
|
|
|
394
397
|
it ('throws a type error when passed something else than the expected parameters', () => {
|
|
395
398
|
expect(function() {
|
|
396
399
|
defineFrozen(false);
|
|
397
|
-
}).
|
|
400
|
+
}).to.throw(TypeError);
|
|
398
401
|
|
|
399
402
|
expect(function() {
|
|
400
403
|
defineFrozen({}, false);
|
|
401
|
-
}).
|
|
404
|
+
}).to.throw(TypeError);
|
|
402
405
|
});
|
|
403
406
|
});
|
|
404
407
|
|
|
@@ -406,24 +409,24 @@ describe("Object - defineSealed", () => {
|
|
|
406
409
|
it ('returns a sealed empty object when called without parameters', () => {
|
|
407
410
|
const obj = defineSealed();
|
|
408
411
|
|
|
409
|
-
expect(obj).
|
|
410
|
-
expect(Object.isSealed(obj)).
|
|
412
|
+
expect(obj).to.eql({});
|
|
413
|
+
expect(Object.isSealed(obj)).to.eql(true);
|
|
411
414
|
expect(function() {
|
|
412
415
|
obj.b = false;
|
|
413
|
-
}).
|
|
416
|
+
}).to.throw();
|
|
414
417
|
});
|
|
415
418
|
|
|
416
419
|
it ('returns a sealed version of the same object when called with an empty properties object and an existing object', () => {
|
|
417
420
|
const obj = defineSealed({}, {a: 1});
|
|
418
421
|
|
|
419
|
-
expect(obj).
|
|
420
|
-
expect(Object.isSealed(obj)).
|
|
422
|
+
expect(obj).to.eql({a: 1});
|
|
423
|
+
expect(Object.isSealed(obj)).to.eql(true);
|
|
421
424
|
expect(function() {
|
|
422
425
|
obj.a = 9999;
|
|
423
|
-
}).not.
|
|
426
|
+
}).not.to.throw();
|
|
424
427
|
expect(function() {
|
|
425
428
|
obj.b = 9999;
|
|
426
|
-
}).
|
|
429
|
+
}).to.throw();
|
|
427
430
|
});
|
|
428
431
|
|
|
429
432
|
it ('defines properties that are passed without passing an existing object, and seals them', () => {
|
|
@@ -433,100 +436,95 @@ describe("Object - defineSealed", () => {
|
|
|
433
436
|
},
|
|
434
437
|
});
|
|
435
438
|
|
|
436
|
-
|
|
437
|
-
expect(Object.getOwnPropertyDescriptor(obj, 'a').set).
|
|
438
|
-
|
|
439
|
+
should.exist(obj.a);
|
|
440
|
+
expect(Object.getOwnPropertyDescriptor(obj, 'a').set).to.eql(undefined);
|
|
441
|
+
assert.typeOf(Object.getOwnPropertyDescriptor(obj, 'a').get, 'function');
|
|
439
442
|
|
|
440
|
-
expect(Object.isSealed(obj)).
|
|
443
|
+
expect(Object.isSealed(obj)).to.eql(true);
|
|
441
444
|
expect(function () {
|
|
442
445
|
obj.a = 9999;
|
|
443
|
-
}).
|
|
446
|
+
}).to.throw();
|
|
444
447
|
expect(function () {
|
|
445
448
|
Object.defineProperty(obj, {
|
|
446
449
|
x: {
|
|
447
450
|
get: () => 9999,
|
|
448
451
|
},
|
|
449
452
|
});
|
|
450
|
-
}).
|
|
453
|
+
}).to.throw();
|
|
451
454
|
});
|
|
452
455
|
|
|
453
456
|
it ('throws a type error when passed something else than the expected parameters', () => {
|
|
454
457
|
expect(function() {
|
|
455
458
|
defineSealed(false);
|
|
456
|
-
}).
|
|
459
|
+
}).to.throw(TypeError);
|
|
457
460
|
|
|
458
461
|
expect(function() {
|
|
459
462
|
defineSealed({}, false);
|
|
460
|
-
}).
|
|
463
|
+
}).to.throw(TypeError);
|
|
461
464
|
});
|
|
462
465
|
});
|
|
463
466
|
|
|
464
467
|
describe("Object - isNotEmptyObject", () => {
|
|
465
468
|
it ('not see a string as a not empty object', () => {
|
|
466
469
|
let vals = fnStringValues();
|
|
467
|
-
for (let el of vals) expect(isNotEmptyObject(el)).
|
|
470
|
+
for (let el of vals) expect(isNotEmptyObject(el)).to.eql(false);
|
|
468
471
|
});
|
|
469
472
|
|
|
470
473
|
it ('not see a numeric value as a not empty object', () => {
|
|
471
474
|
let vals = fnNumericValues();
|
|
472
|
-
for (let el of vals) expect(isNotEmptyObject(el)).
|
|
475
|
+
for (let el of vals) expect(isNotEmptyObject(el)).to.eql(false);
|
|
473
476
|
});
|
|
474
477
|
|
|
475
478
|
it ('not see a boolean as a not empty object', () => {
|
|
476
479
|
let vals = fnBooleanValues();
|
|
477
|
-
for (let el of vals) expect(isNotEmptyObject(el)).
|
|
480
|
+
for (let el of vals) expect(isNotEmptyObject(el)).to.eql(false);
|
|
478
481
|
});
|
|
479
482
|
|
|
480
483
|
it ('not see a regex as a not empty object', () => {
|
|
481
484
|
let vals = fnRegexValues();
|
|
482
|
-
for (let el of vals) expect(isNotEmptyObject(el)).
|
|
485
|
+
for (let el of vals) expect(isNotEmptyObject(el)).to.eql(false);
|
|
483
486
|
});
|
|
484
487
|
|
|
485
488
|
it ('see an object as an object', () => {
|
|
486
|
-
expect(isNotEmptyObject({bar:'foo'})).
|
|
489
|
+
expect(isNotEmptyObject({bar:'foo'})).to.eql(true);
|
|
487
490
|
|
|
488
491
|
expect(isNotEmptyObject(Object.defineProperties(Object.create(null), {
|
|
489
492
|
'hi': {
|
|
490
493
|
enumerable: true,
|
|
491
494
|
get: () => 'there',
|
|
492
495
|
}
|
|
493
|
-
}))).
|
|
496
|
+
}))).to.eql(true);
|
|
494
497
|
});
|
|
495
498
|
|
|
496
499
|
it ('see an empty object as an empty object', () => {
|
|
497
|
-
expect(isNotEmptyObject(Object.create(null))).
|
|
498
|
-
expect(isNotEmptyObject(new Object())).
|
|
499
|
-
expect(isNotEmptyObject(Object.create([]))).
|
|
500
|
+
expect(isNotEmptyObject(Object.create(null))).to.eql(false);
|
|
501
|
+
expect(isNotEmptyObject(new Object())).to.eql(false);
|
|
502
|
+
expect(isNotEmptyObject(Object.create([]))).to.eql(false);
|
|
500
503
|
expect(isNotEmptyObject(Object.defineProperties(Object.create(null), {
|
|
501
504
|
'hi': {
|
|
502
505
|
enumerable: false,
|
|
503
506
|
get: () => 'there',
|
|
504
507
|
}
|
|
505
|
-
}))).
|
|
508
|
+
}))).to.eql(false);
|
|
506
509
|
});
|
|
507
510
|
|
|
508
511
|
it ('not see a nullable as a not empty object', () => {
|
|
509
512
|
let vals = fnNullables();
|
|
510
|
-
for (let el of vals) expect(isNotEmptyObject(el)).
|
|
513
|
+
for (let el of vals) expect(isNotEmptyObject(el)).to.eql(false);
|
|
511
514
|
});
|
|
512
515
|
|
|
513
516
|
it ('not see a date as a not empty object', () => {
|
|
514
517
|
let vals = fnDateValues();
|
|
515
|
-
for (let el of vals) expect(isNotEmptyObject(el)).
|
|
518
|
+
for (let el of vals) expect(isNotEmptyObject(el)).to.eql(false);
|
|
516
519
|
});
|
|
517
520
|
|
|
518
521
|
it ('not see an array as a not empty object', () => {
|
|
519
522
|
let vals = fnArrayValues();
|
|
520
|
-
for (let el of vals) expect(isNotEmptyObject(el)).
|
|
523
|
+
for (let el of vals) expect(isNotEmptyObject(el)).to.eql(false);
|
|
521
524
|
});
|
|
522
525
|
|
|
523
526
|
it ('not see a function as a not empty object', () => {
|
|
524
527
|
let vals = fnFunctionValues();
|
|
525
|
-
for (let el of vals) expect(isNotEmptyObject(el)).
|
|
526
|
-
});
|
|
527
|
-
|
|
528
|
-
it ('not see formdata as a not empty object', () => {
|
|
529
|
-
let vals = fnFormDataValues();
|
|
530
|
-
for (let el of vals) expect(isNotEmptyObject(el)).toEqual(false);
|
|
528
|
+
for (let el of vals) expect(isNotEmptyObject(el)).to.eql(false);
|
|
531
529
|
});
|
|
532
530
|
});
|
package/test/src/regexp.test.js
CHANGED
|
@@ -10,58 +10,61 @@ import {
|
|
|
10
10
|
fnDateValues,
|
|
11
11
|
fnArrayValues,
|
|
12
12
|
fnFunctionValues,
|
|
13
|
-
fnFormDataValues,
|
|
14
13
|
fnNullables,
|
|
15
14
|
} from '../constants';
|
|
16
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;
|
|
24
|
+
|
|
17
25
|
describe("RegExp - isRegExp", () => {
|
|
18
26
|
it ('not see a string as a regex', () => {
|
|
19
27
|
let vals = fnStringValues();
|
|
20
|
-
for (let el of vals) expect(isRegExp(el)).
|
|
28
|
+
for (let el of vals) expect(isRegExp(el)).to.eql(false);
|
|
21
29
|
});
|
|
22
30
|
|
|
23
31
|
it ('not see a numeric value as a regex', () => {
|
|
24
32
|
let vals = fnNumericValues();
|
|
25
|
-
for (let el of vals) expect(isRegExp(el)).
|
|
33
|
+
for (let el of vals) expect(isRegExp(el)).to.eql(false);
|
|
26
34
|
});
|
|
27
35
|
|
|
28
36
|
it ('not see a boolean as a regex', () => {
|
|
29
37
|
let vals = fnBooleanValues();
|
|
30
|
-
for (let el of vals) expect(isRegExp(el)).
|
|
38
|
+
for (let el of vals) expect(isRegExp(el)).to.eql(false);
|
|
31
39
|
});
|
|
32
40
|
|
|
33
41
|
it ('see a regex as a regex', () => {
|
|
34
42
|
let vals = fnRegexValues();
|
|
35
|
-
for (let el of vals) expect(isRegExp(el)).
|
|
43
|
+
for (let el of vals) expect(isRegExp(el)).to.eql(true);
|
|
36
44
|
});
|
|
37
45
|
|
|
38
46
|
it ('not see an object as a regex', () => {
|
|
39
47
|
let vals = fnObjectValues();
|
|
40
|
-
for (let el of vals) expect(isRegExp(el)).
|
|
48
|
+
for (let el of vals) expect(isRegExp(el)).to.eql(false);
|
|
41
49
|
});
|
|
42
50
|
|
|
43
51
|
it ('not see a nullable as a regex', () => {
|
|
44
52
|
let vals = fnNullables();
|
|
45
|
-
for (let el of vals) expect(isRegExp(el)).
|
|
53
|
+
for (let el of vals) expect(isRegExp(el)).to.eql(false);
|
|
46
54
|
});
|
|
47
55
|
|
|
48
56
|
it ('not see a date as a regex', () => {
|
|
49
57
|
let vals = fnDateValues();
|
|
50
|
-
for (let el of vals) expect(isRegExp(el)).
|
|
58
|
+
for (let el of vals) expect(isRegExp(el)).to.eql(false);
|
|
51
59
|
});
|
|
52
60
|
|
|
53
61
|
it ('not see an array as a regex', () => {
|
|
54
62
|
let vals = fnArrayValues();
|
|
55
|
-
for (let el of vals) expect(isRegExp(el)).
|
|
63
|
+
for (let el of vals) expect(isRegExp(el)).to.eql(false);
|
|
56
64
|
});
|
|
57
65
|
|
|
58
66
|
it ('not see a function as a regex', () => {
|
|
59
67
|
let vals = fnFunctionValues();
|
|
60
|
-
for (let el of vals) expect(isRegExp(el)).
|
|
61
|
-
});
|
|
62
|
-
|
|
63
|
-
it ('not see formdata as a regex', () => {
|
|
64
|
-
let vals = fnFormDataValues();
|
|
65
|
-
for (let el of vals) expect(isRegExp(el)).toEqual(false);
|
|
68
|
+
for (let el of vals) expect(isRegExp(el)).to.eql(false);
|
|
66
69
|
});
|
|
67
70
|
});
|