@jamashita/lluvia-sequence 2.12.0 → 2.15.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (44) hide show
  1. package/dist/cjs/ASequence.d.ts +8 -8
  2. package/dist/cjs/ASequence.d.ts.map +1 -1
  3. package/dist/cjs/ASequence.js.map +1 -1
  4. package/dist/cjs/ImmutableSequence.d.ts +1 -1
  5. package/dist/cjs/ImmutableSequence.d.ts.map +1 -1
  6. package/dist/cjs/ImmutableSequence.js.map +1 -1
  7. package/dist/cjs/MutableSequence.d.ts +1 -1
  8. package/dist/cjs/MutableSequence.d.ts.map +1 -1
  9. package/dist/cjs/MutableSequence.js.map +1 -1
  10. package/dist/cjs/ReadonlySequence.d.ts +1 -1
  11. package/dist/cjs/ReadonlySequence.d.ts.map +1 -1
  12. package/dist/cjs/Sequence.d.ts +1 -1
  13. package/dist/cjs/Sequence.d.ts.map +1 -1
  14. package/dist/cjs/mock/MockSequence.d.ts +2 -2
  15. package/dist/cjs/mock/MockSequence.d.ts.map +1 -1
  16. package/dist/cjs/mock/MockSequence.js.map +1 -1
  17. package/dist/esm/ASequence.d.ts +8 -8
  18. package/dist/esm/ASequence.d.ts.map +1 -1
  19. package/dist/esm/ASequence.js.map +1 -1
  20. package/dist/esm/ImmutableSequence.d.ts +1 -1
  21. package/dist/esm/ImmutableSequence.d.ts.map +1 -1
  22. package/dist/esm/ImmutableSequence.js.map +1 -1
  23. package/dist/esm/MutableSequence.d.ts +1 -1
  24. package/dist/esm/MutableSequence.d.ts.map +1 -1
  25. package/dist/esm/MutableSequence.js.map +1 -1
  26. package/dist/esm/ReadonlySequence.d.ts +1 -1
  27. package/dist/esm/ReadonlySequence.d.ts.map +1 -1
  28. package/dist/esm/Sequence.d.ts +1 -1
  29. package/dist/esm/Sequence.d.ts.map +1 -1
  30. package/dist/esm/mock/MockSequence.d.ts +2 -2
  31. package/dist/esm/mock/MockSequence.d.ts.map +1 -1
  32. package/dist/esm/mock/MockSequence.js.map +1 -1
  33. package/package.json +7 -10
  34. package/src/ASequence.ts +8 -8
  35. package/src/ImmutableSequence.ts +1 -1
  36. package/src/MutableSequence.ts +2 -2
  37. package/src/ReadonlySequence.ts +1 -1
  38. package/src/Sequence.ts +1 -1
  39. package/src/mock/MockSequence.ts +2 -2
  40. package/dist/tsconfig.cjs.tsbuildinfo +0 -1
  41. package/dist/tsconfig.esm.tsbuildinfo +0 -1
  42. package/src/__tests__/ASequence.spec.ts +0 -400
  43. package/src/__tests__/ImmutableSequence.spec.ts +0 -477
  44. package/src/__tests__/MutableSequence.spec.ts +0 -432
@@ -1 +0,0 @@
1
- {"program":{"fileNames":["../../../node_modules/typescript/lib/lib.es5.d.ts","../../../node_modules/typescript/lib/lib.es2015.d.ts","../../../node_modules/typescript/lib/lib.es2016.d.ts","../../../node_modules/typescript/lib/lib.es2017.d.ts","../../../node_modules/typescript/lib/lib.es2018.d.ts","../../../node_modules/typescript/lib/lib.es2019.d.ts","../../../node_modules/typescript/lib/lib.es2020.d.ts","../../../node_modules/typescript/lib/lib.es2021.d.ts","../../../node_modules/typescript/lib/lib.es2022.d.ts","../../../node_modules/typescript/lib/lib.esnext.d.ts","../../../node_modules/typescript/lib/lib.dom.d.ts","../../../node_modules/typescript/lib/lib.dom.iterable.d.ts","../../../node_modules/typescript/lib/lib.webworker.importscripts.d.ts","../../../node_modules/typescript/lib/lib.scripthost.d.ts","../../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../node_modules/typescript/lib/lib.es2021.promise.d.ts","../../../node_modules/typescript/lib/lib.es2021.string.d.ts","../../../node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../../node_modules/typescript/lib/lib.es2021.intl.d.ts","../../../node_modules/typescript/lib/lib.es2022.array.d.ts","../../../node_modules/typescript/lib/lib.es2022.error.d.ts","../../../node_modules/typescript/lib/lib.es2022.object.d.ts","../../../node_modules/typescript/lib/lib.es2022.string.d.ts","../../../node_modules/typescript/lib/lib.esnext.intl.d.ts","../../../node_modules/typescript/lib/lib.esnext.full.d.ts","../../../node_modules/@jamashita/anden-type/dist/esm/Rules/ValidationRule.d.ts","../../../node_modules/@jamashita/anden-type/dist/esm/Rules/BigIntValidationRule.d.ts","../../../node_modules/@jamashita/anden-type/dist/esm/Rules/BooleanValidationRule.d.ts","../../../node_modules/@jamashita/anden-type/dist/esm/Rules/NumberValidationRule.d.ts","../../../node_modules/@jamashita/anden-type/dist/esm/Rules/StringValidationRule.d.ts","../../../node_modules/@jamashita/anden-type/dist/esm/Rules/SymbolValidationRule.d.ts","../../../node_modules/@jamashita/anden-type/dist/esm/Rules/index.d.ts","../../../node_modules/@jamashita/anden-type/dist/esm/Decorator/BigIntValidation.d.ts","../../../node_modules/@jamashita/anden-type/dist/esm/Decorator/BooleanValidation.d.ts","../../../node_modules/@jamashita/anden-type/dist/esm/Decorator/NumberValidation.d.ts","../../../node_modules/@jamashita/anden-type/dist/esm/Decorator/StringValidation.d.ts","../../../node_modules/@jamashita/anden-type/dist/esm/Decorator/SymbolValidation.d.ts","../../../node_modules/reflect-metadata/index.d.ts","../../../node_modules/@jamashita/anden-type/dist/esm/Decorator/Validate.d.ts","../../../node_modules/@jamashita/anden-type/dist/esm/Decorator/index.d.ts","../../../node_modules/@jamashita/anden-type/dist/esm/Value.d.ts","../../../node_modules/@jamashita/anden-type/dist/esm/Clone.d.ts","../../../node_modules/@jamashita/anden-type/dist/esm/Cloneable.d.ts","../../../node_modules/@jamashita/anden-type/dist/esm/Equalable.d.ts","../../../node_modules/@jamashita/anden-type/dist/esm/Equality.d.ts","../../../node_modules/@jamashita/anden-type/dist/esm/Function.d.ts","../../../node_modules/@jamashita/anden-type/dist/esm/JSONable.d.ts","../../../node_modules/@jamashita/anden-type/dist/esm/Kind.d.ts","../../../node_modules/@jamashita/anden-type/dist/esm/Serializable.d.ts","../../../node_modules/@jamashita/anden-type/dist/esm/Nominative.d.ts","../../../node_modules/@jamashita/anden-type/dist/esm/index.d.ts","../../../node_modules/@jamashita/anden-object/dist/esm/Objet.d.ts","../../../node_modules/@jamashita/anden-object/dist/esm/Entity.d.ts","../../../node_modules/@jamashita/anden-object/dist/esm/mock/MockEntity.d.ts","../../../node_modules/@jamashita/anden-object/dist/esm/ValueObject.d.ts","../../../node_modules/@jamashita/anden-object/dist/esm/mock/MockValueObject.d.ts","../../../node_modules/@jamashita/anden-object/dist/esm/mock/index.d.ts","../../../node_modules/@jamashita/anden-error/dist/esm/RuntimeError.d.ts","../../../node_modules/@jamashita/anden-error/dist/esm/mock/MockRuntimeError.d.ts","../../../node_modules/@jamashita/anden-error/dist/esm/mock/index.d.ts","../../../node_modules/@jamashita/anden-error/dist/esm/Errors.d.ts","../../../node_modules/@jamashita/anden-error/dist/esm/UnimplementedError.d.ts","../../../node_modules/@jamashita/anden-error/dist/esm/index.d.ts","../../../node_modules/@jamashita/anden-object/dist/esm/RecursiveReferenceError.d.ts","../../../node_modules/@jamashita/anden-object/dist/esm/Reference.d.ts","../../../node_modules/@jamashita/anden-object/dist/esm/index.d.ts","../../collection/dist/esm/Collection.d.ts","../../collection/dist/esm/Quantity.d.ts","../../collection/dist/esm/index.d.ts","../src/ReadonlySequence.ts","../src/Sequence.ts","../src/ASequence.ts","../src/ImmutableSequence.ts","../src/MutableSequence.ts","../src/mock/MockSequence.ts","../src/mock/index.ts","../src/index.ts","../../../node_modules/@types/node/assert.d.ts","../../../node_modules/@types/node/assert/strict.d.ts","../../../node_modules/@types/node/globals.d.ts","../../../node_modules/@types/node/async_hooks.d.ts","../../../node_modules/@types/node/buffer.d.ts","../../../node_modules/@types/node/child_process.d.ts","../../../node_modules/@types/node/cluster.d.ts","../../../node_modules/@types/node/console.d.ts","../../../node_modules/@types/node/constants.d.ts","../../../node_modules/@types/node/crypto.d.ts","../../../node_modules/@types/node/dgram.d.ts","../../../node_modules/@types/node/diagnostics_channel.d.ts","../../../node_modules/@types/node/dns.d.ts","../../../node_modules/@types/node/dns/promises.d.ts","../../../node_modules/@types/node/domain.d.ts","../../../node_modules/@types/node/events.d.ts","../../../node_modules/@types/node/fs.d.ts","../../../node_modules/@types/node/fs/promises.d.ts","../../../node_modules/@types/node/http.d.ts","../../../node_modules/@types/node/http2.d.ts","../../../node_modules/@types/node/https.d.ts","../../../node_modules/@types/node/inspector.d.ts","../../../node_modules/@types/node/module.d.ts","../../../node_modules/@types/node/net.d.ts","../../../node_modules/@types/node/os.d.ts","../../../node_modules/@types/node/path.d.ts","../../../node_modules/@types/node/perf_hooks.d.ts","../../../node_modules/@types/node/process.d.ts","../../../node_modules/@types/node/punycode.d.ts","../../../node_modules/@types/node/querystring.d.ts","../../../node_modules/@types/node/readline.d.ts","../../../node_modules/@types/node/repl.d.ts","../../../node_modules/@types/node/stream.d.ts","../../../node_modules/@types/node/stream/promises.d.ts","../../../node_modules/@types/node/stream/consumers.d.ts","../../../node_modules/@types/node/stream/web.d.ts","../../../node_modules/@types/node/string_decoder.d.ts","../../../node_modules/@types/node/timers.d.ts","../../../node_modules/@types/node/timers/promises.d.ts","../../../node_modules/@types/node/tls.d.ts","../../../node_modules/@types/node/trace_events.d.ts","../../../node_modules/@types/node/tty.d.ts","../../../node_modules/@types/node/url.d.ts","../../../node_modules/@types/node/util.d.ts","../../../node_modules/@types/node/v8.d.ts","../../../node_modules/@types/node/vm.d.ts","../../../node_modules/@types/node/wasi.d.ts","../../../node_modules/@types/node/worker_threads.d.ts","../../../node_modules/@types/node/zlib.d.ts","../../../node_modules/@types/node/globals.global.d.ts","../../../node_modules/@types/node/index.d.ts","../../../node_modules/chalk/index.d.ts","../../../node_modules/@types/jest/node_modules/jest-diff/build/cleanupSemantic.d.ts","../../../node_modules/@types/jest/node_modules/pretty-format/build/types.d.ts","../../../node_modules/@types/jest/node_modules/pretty-format/build/index.d.ts","../../../node_modules/@types/jest/node_modules/jest-diff/build/types.d.ts","../../../node_modules/@types/jest/node_modules/jest-diff/build/diffLines.d.ts","../../../node_modules/@types/jest/node_modules/jest-diff/build/printDiffs.d.ts","../../../node_modules/@types/jest/node_modules/jest-diff/build/index.d.ts","../../../node_modules/@types/jest/node_modules/jest-matcher-utils/build/index.d.ts","../../../node_modules/@types/jest/index.d.ts"],"fileInfos":[{"version":"3ac1b83264055b28c0165688fda6dfcc39001e9e7828f649299101c23ad0a0c3","affectsGlobalScope":true},"dc47c4fa66b9b9890cf076304de2a9c5201e94b740cffdf09f87296d877d71f6","7a387c58583dfca701b6c85e0adaf43fb17d590fb16d5b2dc0a2fbd89f35c467","8a12173c586e95f4433e0c6dc446bc88346be73ffe9ca6eec7aa63c8f3dca7f9","5f4e733ced4e129482ae2186aae29fde948ab7182844c3a5a51dd346182c7b06","e6b724280c694a9f588847f754198fb96c43d805f065c3a5b28bbc9594541c84","e21c071ca3e1b4a815d5f04a7475adcaeea5d64367e840dd0154096d705c3940","746d62152361558ea6d6115cf0da4dd10ede041d14882ede3568bce5dc4b4f1f","2f93dda35dafec68ec217c9ce67f0f4fbbbb030c055ac312641565ad60dd7e26","aea179452def8a6152f98f63b191b84e7cbd69b0e248c91e61fb2e52328abe8c",{"version":"72704b10d97777e15f1a581b73f88273037ef752d2e50b72287bd0a90af64fe6","affectsGlobalScope":true},{"version":"dbb73d4d99be496175cb432c74c2615f78c76f4272f1d83cba11ee0ed6dbddf0","affectsGlobalScope":true},{"version":"7fac8cb5fc820bc2a59ae11ef1c5b38d3832c6d0dfaec5acdb5569137d09a481","affectsGlobalScope":true},{"version":"097a57355ded99c68e6df1b738990448e0bf170e606707df5a7c0481ff2427cd","affectsGlobalScope":true},{"version":"d8996609230d17e90484a2dd58f22668f9a05a3bfe00bfb1d6271171e54a31fb","affectsGlobalScope":true},{"version":"43fb1d932e4966a39a41b464a12a81899d9ae5f2c829063f5571b6b87e6d2f9c","affectsGlobalScope":true},{"version":"cdccba9a388c2ee3fd6ad4018c640a471a6c060e96f1232062223063b0a5ac6a","affectsGlobalScope":true},{"version":"c5c05907c02476e4bde6b7e76a79ffcd948aedd14b6a8f56e4674221b0417398","affectsGlobalScope":true},{"version":"0d5f52b3174bee6edb81260ebcd792692c32c81fd55499d69531496f3f2b25e7","affectsGlobalScope":true},{"version":"810627a82ac06fb5166da5ada4159c4ec11978dfbb0805fe804c86406dab8357","affectsGlobalScope":true},{"version":"62d80405c46c3f4c527ee657ae9d43fda65a0bf582292429aea1e69144a522a6","affectsGlobalScope":true},{"version":"3013574108c36fd3aaca79764002b3717da09725a36a6fc02eac386593110f93","affectsGlobalScope":true},{"version":"75ec0bdd727d887f1b79ed6619412ea72ba3c81d92d0787ccb64bab18d261f14","affectsGlobalScope":true},{"version":"3be5a1453daa63e031d266bf342f3943603873d890ab8b9ada95e22389389006","affectsGlobalScope":true},{"version":"17bb1fc99591b00515502d264fa55dc8370c45c5298f4a5c2083557dccba5a2a","affectsGlobalScope":true},{"version":"7ce9f0bde3307ca1f944119f6365f2d776d281a393b576a18a2f2893a2d75c98","affectsGlobalScope":true},{"version":"6a6b173e739a6a99629a8594bfb294cc7329bfb7b227f12e1f7c11bc163b8577","affectsGlobalScope":true},{"version":"12a310447c5d23c7d0d5ca2af606e3bd08afda69100166730ab92c62999ebb9d","affectsGlobalScope":true},{"version":"b0124885ef82641903d232172577f2ceb5d3e60aed4da1153bab4221e1f6dd4e","affectsGlobalScope":true},{"version":"0eb85d6c590b0d577919a79e0084fa1744c1beba6fd0d4e951432fa1ede5510a","affectsGlobalScope":true},{"version":"da233fc1c8a377ba9e0bed690a73c290d843c2c3d23a7bd7ec5cd3d7d73ba1e0","affectsGlobalScope":true},{"version":"d154ea5bb7f7f9001ed9153e876b2d5b8f5c2bb9ec02b3ae0d239ec769f1f2ae","affectsGlobalScope":true},{"version":"bb2d3fb05a1d2ffbca947cc7cbc95d23e1d053d6595391bd325deb265a18d36c","affectsGlobalScope":true},{"version":"c80df75850fea5caa2afe43b9949338ce4e2de086f91713e9af1a06f973872b8","affectsGlobalScope":true},{"version":"9d57b2b5d15838ed094aa9ff1299eecef40b190722eb619bac4616657a05f951","affectsGlobalScope":true},{"version":"6c51b5dd26a2c31dbf37f00cfc32b2aa6a92e19c995aefb5b97a3a64f1ac99de","affectsGlobalScope":true},{"version":"6e7997ef61de3132e4d4b2250e75343f487903ddf5370e7ce33cf1b9db9a63ed","affectsGlobalScope":true},{"version":"2ad234885a4240522efccd77de6c7d99eecf9b4de0914adb9a35c0c22433f993","affectsGlobalScope":true},{"version":"1b3fe904465430e030c93239a348f05e1be80640d91f2f004c3512c2c2c89f34","affectsGlobalScope":true},{"version":"3787b83e297de7c315d55d4a7c546ae28e5f6c0a361b7a1dcec1f1f50a54ef11","affectsGlobalScope":true},{"version":"e7e8e1d368290e9295ef18ca23f405cf40d5456fa9f20db6373a61ca45f75f40","affectsGlobalScope":true},{"version":"faf0221ae0465363c842ce6aa8a0cbda5d9296940a8e26c86e04cc4081eea21e","affectsGlobalScope":true},{"version":"06393d13ea207a1bfe08ec8d7be562549c5e2da8983f2ee074e00002629d1871","affectsGlobalScope":true},{"version":"5075b36ab861c8c0c45377cb8c96270d7c65f0eeaf105d53fac6850da61f1027","affectsGlobalScope":true},{"version":"6c55633c733c8378db65ac3da7a767c3cf2cf3057f0565a9124a16a3a2019e87","affectsGlobalScope":true},{"version":"fb4416144c1bf0323ccbc9afb0ab289c07312214e8820ad17d709498c865a3fe","affectsGlobalScope":true},{"version":"5b0ca94ec819d68d33da516306c15297acec88efeb0ae9e2b39f71dbd9685ef7","affectsGlobalScope":true},{"version":"e8c9f4e445a489991ca1a4232667de3ac36b07ba75ea335971fbeacf2d26fe67","affectsGlobalScope":true},{"version":"34478567f8a80171f88f2f30808beb7da15eac0538ae91282dd33dce928d98ed","affectsGlobalScope":true},{"version":"6ea9ab679ea030cf46c16a711a316078e9e02619ebaf07a7fcd16964aba88f2d","affectsGlobalScope":true},{"version":"aedb8de1abb2ff1095c153854a6df7deae4a5709c37297f9d6e9948b6806fa66","affectsGlobalScope":true},{"version":"11ffe3c281f375fff9ffdde8bbec7669b4dd671905509079f866f2354a788064","affectsGlobalScope":true},{"version":"10bbdc1981b8d9310ee75bfac28ee0477bb2353e8529da8cff7cb26c409cb5e8","affectsGlobalScope":true},"d96fa8a56871904776165ceb8e00bd56127e1a017bb2664cae76223b5f815141","cf2f55e31c9b0ffa08fcacee3c6415e4b274bda6872e73b3588d329027f3c9ff","af917a07511b818fb12335b9fff95953d56dcc8d042505b35c47c2924c6d264e","fd31097c21440f1b12a335e340a052b1914db07b8fa50905571bf2a2cebeca68","069f5963842f302a61a8ccf34c58f7593a36ffde89dc6e52caba3c0de49c5446","d2b14212a10abb06cf8d53c527c0d2fb9ecfdeca36d7f600e487feec2c6ae638","7e87e35adbacc41931f71760dd8e4bd7d8f9fd74da88f305fb8491c339d98d85","59d8688e191227130e8d9a86c552a4515167a2008e668488bb6bf2d8cc72bf53","4db2c62bf71b2554c993225e9017c37ac583e81822b1a99326a8baeafc51abe0","bda918cff705916440b6edfb760436f3af272a5f8a3ac5e53e0fffab47926295","9b3bde74a82178593d156ebacccde6387936243719f0fa0b35efabe114230227","c4a1e9c6065f91a603607754ae90ad2a81caba4dbf9d7574210113292b14170c","d94c522a1f0f8ca1cf7f0e0b4469af0cf245dc78aa7c130ad7547bd80c7579ab",{"version":"8d6d51a5118d000ed3bfe6e1dd1335bebfff3fef23cd2af2f84a24d30f90cc90","affectsGlobalScope":true},"71d2aa9223c5de38f075abb0f8b14acb2f4fbf6deda193e8016b998a0d3f13a8","57250a19e5712bc10c717a059ce810a8ce78cca8d4a7192093a98adffe15b28d","2d7ad0a1c4ea6d60c54fa52589a11c118aa58446ef0c1ade49f50e0461d3387f","3e1b8595d42fda68891a52006c23796ff4c40f9cc90056db8637c067bf62bd45","59ac421583493a0018f9b3dcde75cb96ae263e52daa12fce3ac0571d1721cc2c","240a63c276bb4a9ceec9023a9c9042ca942e8ec7f3baee1f9cf7780cb0cd0d56","561d9723756dcdbc1cf2d48eb87d1ecf1949dd472401ed5c9168e62b194565b6","c75c4a0bd47e802a3baab44fe95a3589fb5fc28bc950120a9e864ad4da32ec6e","228eaed02335e5c36a6f6a6bbb5a96fbfb7a4007f4b9b75cb2b1e56497c2240a","1d86b535af95fd174e3191ec2384c1c76f99952b58a5ba23dbbddf0a5dfcb951","0eacd0beff15096d3049358edd19b2494c4d516815a435bf6efe0d3b5095d853","913e476171bbfb694a76aaa91360fdd5e5710b42b1b21fbe1ff93f3f73647950","651fdb3d83c41f2e3d09a741fd6a38e3c95d7de80a152cd70f43de5706382d50","859a8f60b9c28620a2b40359b2ba9034cc59d540b292862e11564dab18faaad3","56271b0837cc35125bf9469ef19d47097035af1152d6ad3cb71bb703fe073a7e","2133c153706c7ba1e4016369fe666c19f77291084a31f7a654d108f3e5b08d8b","71c8e64c89d6205d28e04888b52764821f75cf17b1d8e914c57a23b60da30fce","e20c646a4248e53a9558db3ec96abbee63065c93ee62de2896fa6a32996be64e","37dfb3d1555c64b8916b96f4074bda3ab639522c8cc3e7210221d4c1d25a220f","b6b9a32cda9d7f41ebec9858a8e3a2dda5f5775d4d678f292c2acea073be3f59","065ae5cc5b444ac68c1004fb228d24c0e4be5d8aedf99ba7c8178108623e810c","688dabadeaf4c48077f20dca502efb0f86c7ee25bc0c4baba128b7944640c966","eeee443b9fa3fe1f6e3a8133f36d85cac844ef8ceeb13ad3e64ce52924870388","9a23b3d6f181b87328db8895a2d767fed0dccba5b897c15952b70f5fc0a4c56f","c2ff21a324bf582efc6a621358f28bc7c08fda35996882e3e00f35a8e19bf52d","a84f75574d6ec9c7f31377bf527e29b4fe91e0a145fb26401987bba909186602","924183b36f6425b5f1e3d21a8dc480e880569a944aad829d31ec9092d63af302","ea7ecf0241ed0f59a30d4e4af1a924393142e35ac160e59f1182d2eed9f14c91","1ada2c45dbb108a3df104cb8edcbf6b1b051d8fdcd3b11be0d9096d4c0b84bb3","240c30a9e88eb2f5caca5a64656263fd3ecbb456aa893dbc4d128417cfa01d35","a934517cfe9c46ccbda95439fa8af8ba148050a5c75a2337d1b5825a732db65c","fc20b82ed8a5f8fb3b89ad3fc7d86d3cb82660308df2036cbca9a1e6e45a19c2","6a5e993bd8a0f671af6f640c2eccea1f3c84a4262286b3dd7a85b0362d1bd794","0d2c5044cbc9971c247d592ab620afbb4dde77dd993f57f2ea44d2834ddb0c3b","11d0a36aea39f28341ddc91189a386d7a0c8fde6329c5f175cf3bbb719a45ad2","ff2641a2b72236896187b7b0ede3fa44bb87d59a68a23c8a6b78e5d88d52fdb8","6945e971b97249f0b6d9450d76d426a0201ded5af387ec0633de55fdec94089b","33a2ecef70d779824f824f8a51013a36eaf2b9d29c24ea27548d658dcf9ec2e8","cd2409dcba1556a4298d11796bf504a28d33ca3b1a655c7b18aaba002babb573","0cba3a5d7b81356222594442753cf90dd2892e5ccfe1d262aaca6896ba6c1380","a69c09dbea52352f479d3e7ac949fde3d17b195abe90b045d619f747b38d6d1a",{"version":"77f0b5c6a193a699c9f7d7fb0578e64e562d271afa740783665d2a827104a873","affectsGlobalScope":true},"e5979905796fe2740d85fbaf4f11f42b7ee1851421afe750823220813421b1af",{"version":"fcdcb42da18dd98dc286b1876dd425791772036012ae61263c011a76b13a190f","affectsGlobalScope":true},"1dab5ab6bcf11de47ab9db295df8c4f1d92ffa750e8f095e88c71ce4c3299628","f71f46ccd5a90566f0a37b25b23bc4684381ab2180bdf6733f4e6624474e1894",{"version":"54e65985a3ee3cec182e6a555e20974ea936fc8b8d1738c14e8ed8a42bd921d4","affectsGlobalScope":true},"82408ed3e959ddc60d3e9904481b5a8dc16469928257af22a3f7d1a3bc7fd8c4","5b30f550565fd0a7524282c81c27fe8534099e2cd26170ca80852308f07ae68d","34e5de87d983bc6aefef8b17658556e3157003e8d9555d3cb098c6bef0b5fbc8","d97cd8a4a42f557fc62271369ed0461c8e50d47b7f9c8ad0b5462f53306f6060","f27371653aded82b2b160f7a7033fb4a5b1534b6f6081ef7be1468f0f15327d3","c762cd6754b13a461c54b59d0ae0ab7aeef3c292c6cf889873f786ee4d8e75c9","f4ea7d5df644785bd9fbf419930cbaec118f0d8b4160037d2339b8e23c059e79",{"version":"bfea28e6162ed21a0aeed181b623dcf250aa79abf49e24a6b7e012655af36d81","affectsGlobalScope":true},"b8aca9d0c81abb02bec9b7621983ae65bde71da6727580070602bd2500a9ce2a","ae97e20f2e10dbeec193d6a2f9cd9a367a1e293e7d6b33b68bacea166afd7792","10d4796a130577d57003a77b95d8723530bbec84718e364aa2129fa8ffba0378","063f53ff674228c190efa19dd9448bcbd540acdbb48a928f4cf3a1b9f9478e43","bf73c576885408d4a176f44a9035d798827cc5020d58284cb18d7573430d9022","7ae078ca42a670445ae0c6a97c029cb83d143d62abd1730efb33f68f0b2c0e82",{"version":"e8b18c6385ff784228a6f369694fcf1a6b475355ba89090a88de13587a9391d5","affectsGlobalScope":true},"287b21dc1d1b9701c92e15e7dd673dfe6044b15812956377adffb6f08825b1bc","12eea70b5e11e924bb0543aea5eadc16ced318aa26001b453b0d561c2fd0bd1e","08777cd9318d294646b121838574e1dd7acbb22c21a03df84e1f2c87b1ad47f2","08a90bcdc717df3d50a2ce178d966a8c353fd23e5c392fd3594a6e39d9bb6304",{"version":"4cd4cff679c9b3d9239fd7bf70293ca4594583767526916af8e5d5a47d0219c7","affectsGlobalScope":true},"2a12d2da5ac4c4979401a3f6eaafa874747a37c365e4bc18aa2b171ae134d21b","002b837927b53f3714308ecd96f72ee8a053b8aeb28213d8ec6de23ed1608b66","1dc9c847473bb47279e398b22c740c83ea37a5c88bf66629666e3cf4c5b9f99c","a9e4a5a24bf2c44de4c98274975a1a705a0abbaad04df3557c2d3cd8b1727949","00fa7ce8bc8acc560dc341bbfdf37840a8c59e6a67c9bfa3fa5f36254df35db2","1b952304137851e45bc009785de89ada562d9376177c97e37702e39e60c2f1ff",{"version":"806ef4cac3b3d9fa4a48d849c8e084d7c72fcd7b16d76e06049a9ed742ff79c0","affectsGlobalScope":true},"44b8b584a338b190a59f4f6929d072431950c7bd92ec2694821c11bce180c8a5","5f0ed51db151c2cdc4fa3bb0f44ce6066912ad001b607a34e65a96c52eb76248",{"version":"3345c276cab0e76dda86c0fb79104ff915a4580ba0f3e440870e183b1baec476","affectsGlobalScope":true},"664d8f2d59164f2e08c543981453893bc7e003e4dfd29651ce09db13e9457980","103d70bfbeb3cd3a3f26d1705bf986322d8738c2c143f38ebb743b1e228d7444","f52fbf64c7e480271a9096763c4882d356b05cab05bf56a64e68a95313cd2ce2","59bdb65f28d7ce52ccfc906e9aaf422f8b8534b2d21c32a27d7819be5ad81df7",{"version":"3a2da34079a2567161c1359316a32e712404b56566c45332ac9dcee015ecce9f","affectsGlobalScope":true},"28a2e7383fd898c386ffdcacedf0ec0845e5d1a86b5a43f25b86bc315f556b79","3aff9c8c36192e46a84afe7b926136d520487155154ab9ba982a8b544ea8fc95","a880cf8d85af2e4189c709b0fea613741649c0e40fffb4360ec70762563d5de0","85bbf436a15bbeda4db888be3062d47f99c66fd05d7c50f0f6473a9151b6a070","9f9c49c95ecd25e0cb2587751925976cf64fd184714cb11e213749c80cf0f927","f0c75c08a71f9212c93a719a25fb0320d53f2e50ca89a812640e08f8ad8c408c",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"9cafe917bf667f1027b2bb62e2de454ecd2119c80873ad76fc41d941089753b8","0d14fa22c41fdc7277e6f71473b20ebc07f40f00e38875142335d5b63cdfc9d2","d8aab31ba8e618cc3eea10b0945de81cb93b7e8150a013a482332263b9305322","462bccdf75fcafc1ae8c30400c9425e1a4681db5d605d1a0edb4f990a54d8094","5923d8facbac6ecf7c84739a5c701a57af94a6f6648d6229a6c768cf28f0f8cb","7adecb2c3238794c378d336a8182d4c3dd2c4fa6fa1785e2797a3db550edea62","dc12dc0e5aa06f4e1a7692149b78f89116af823b9e1f1e4eae140cd3e0e674e6","1bfc6565b90c8771615cd8cfcf9b36efc0275e5e83ac7d9181307e96eb495161","8a8a96898906f065f296665e411f51010b51372fa260d5373bf9f64356703190","7f82ef88bdb67d9a850dd1c7cd2d690f33e0f0acd208e3c9eba086f3670d4f73",{"version":"3ca3179dd4772b596ed81df8bb9c541e1416d86343c582a105013b20925de051","affectsGlobalScope":true}],"options":{"allowSyntheticDefaultImports":true,"composite":true,"declaration":true,"declarationMap":true,"emitDecoratorMetadata":true,"esModuleInterop":true,"exactOptionalPropertyTypes":true,"experimentalDecorators":true,"module":99,"noFallthroughCasesInSwitch":true,"noImplicitAny":true,"noImplicitOverride":true,"noImplicitReturns":true,"noImplicitThis":true,"noUncheckedIndexedAccess":true,"noUnusedLocals":true,"noUnusedParameters":true,"outDir":"./esm","rootDir":"../src","skipLibCheck":true,"sourceMap":true,"strict":true,"strictNullChecks":true,"strictPropertyInitialization":true,"target":99,"useUnknownInCatchVariables":true},"fileIdsList":[[87,150],[150],[87,89,90,91,150],[88,150],[80,81,150],[80,150],[92,150],[81,150],[81,82,84,86,93,94,150],[80,82,150],[84,150],[83,85,150],[70,150],[61,150],[61,67,150],[62,63,64,65,66,68,150],[73,78,150],[55,150],[55,56,57,58,59,60,150],[61,69,70,71,72,73,74,75,76,77,78,79,150],[150,161,166],[150,159,162],[150,159,162,163,164],[150,161],[150,158,165],[150,160],[107,150],[110,150],[111,116,150],[112,122,123,130,139,149,150],[112,113,122,130,150],[114,150],[115,116,123,131,150],[116,139,146,150],[117,119,122,130,150],[118,150],[119,120,150],[121,122,150],[122,150],[122,123,124,139,149,150],[122,123,124,139,150],[150,154],[125,130,139,149,150],[122,123,125,126,130,139,146,149,150],[125,127,139,146,149,150],[107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156],[122,128,150],[129,149,150],[119,122,130,139,150],[131,150],[132,150],[110,133,150],[134,148,150,154],[135,150],[136,150],[122,137,150],[137,138,150,152],[122,139,140,141,150],[139,141,150],[139,140,150],[142,150],[143,150],[122,144,145,150],[144,145,150],[116,130,139,146,150],[147,150],[130,148,150],[111,125,136,149,150],[116,150],[139,150,151],[150,152],[150,153],[111,116,122,124,133,139,149,150,152,154],[139,150,155],[80,95,96,150],[96,97,150],[80,95,98,100,150],[80,98,101,150],[80,98,150],[80,99,150],[99,100,102,103,105,150],[92,101,150],[104,150]],"referencedMap":[[90,1],[87,2],[91,1],[92,3],[88,1],[89,4],[82,5],[81,6],[93,7],[94,2],[84,8],[95,9],[83,10],[85,11],[86,12],[71,13],[72,2],[62,14],[63,2],[64,14],[65,14],[66,2],[68,15],[69,16],[73,2],[74,13],[75,13],[76,13],[77,13],[79,17],[56,18],[57,18],[58,18],[59,18],[60,18],[55,2],[61,19],[78,2],[70,2],[80,20],[167,21],[159,2],[163,22],[165,23],[164,22],[162,24],[166,25],[161,26],[160,2],[107,27],[108,27],[110,28],[111,29],[112,30],[113,31],[114,32],[115,33],[116,34],[117,35],[118,36],[119,37],[120,37],[121,38],[122,39],[123,40],[124,41],[109,42],[156,2],[125,43],[126,44],[127,45],[157,46],[128,47],[129,48],[130,49],[131,50],[132,51],[133,52],[134,53],[135,54],[136,55],[137,56],[138,57],[139,58],[141,59],[140,60],[142,61],[143,62],[144,63],[145,64],[146,65],[147,66],[148,67],[149,68],[150,69],[151,70],[152,71],[153,72],[154,73],[155,74],[158,2],[67,2],[11,2],[12,2],[16,2],[15,2],[2,2],[17,2],[18,2],[19,2],[20,2],[21,2],[22,2],[23,2],[24,2],[3,2],[4,2],[28,2],[25,2],[26,2],[27,2],[29,2],[30,2],[31,2],[5,2],[32,2],[33,2],[34,2],[35,2],[6,2],[36,2],[37,2],[38,2],[39,2],[7,2],[44,2],[40,2],[41,2],[42,2],[43,2],[8,2],[48,2],[45,2],[46,2],[47,2],[49,2],[9,2],[50,2],[51,2],[52,2],[1,2],[10,2],[54,2],[53,2],[14,2],[13,2],[96,6],[97,75],[98,76],[101,77],[102,78],[103,78],[99,79],[100,80],[106,81],[104,82],[105,83]],"exportedModulesMap":[[90,1],[87,2],[91,1],[92,3],[88,1],[89,4],[82,5],[81,6],[93,7],[94,2],[84,8],[95,9],[83,10],[85,11],[86,12],[71,13],[72,2],[62,14],[63,2],[64,14],[65,14],[66,2],[68,15],[69,16],[73,2],[74,13],[75,13],[76,13],[77,13],[79,17],[56,18],[57,18],[58,18],[59,18],[60,18],[55,2],[61,19],[78,2],[70,2],[80,20],[167,21],[159,2],[163,22],[165,23],[164,22],[162,24],[166,25],[161,26],[160,2],[107,27],[108,27],[110,28],[111,29],[112,30],[113,31],[114,32],[115,33],[116,34],[117,35],[118,36],[119,37],[120,37],[121,38],[122,39],[123,40],[124,41],[109,42],[156,2],[125,43],[126,44],[127,45],[157,46],[128,47],[129,48],[130,49],[131,50],[132,51],[133,52],[134,53],[135,54],[136,55],[137,56],[138,57],[139,58],[141,59],[140,60],[142,61],[143,62],[144,63],[145,64],[146,65],[147,66],[148,67],[149,68],[150,69],[151,70],[152,71],[153,72],[154,73],[155,74],[158,2],[67,2],[11,2],[12,2],[16,2],[15,2],[2,2],[17,2],[18,2],[19,2],[20,2],[21,2],[22,2],[23,2],[24,2],[3,2],[4,2],[28,2],[25,2],[26,2],[27,2],[29,2],[30,2],[31,2],[5,2],[32,2],[33,2],[34,2],[35,2],[6,2],[36,2],[37,2],[38,2],[39,2],[7,2],[44,2],[40,2],[41,2],[42,2],[43,2],[8,2],[48,2],[45,2],[46,2],[47,2],[49,2],[9,2],[50,2],[51,2],[52,2],[1,2],[10,2],[54,2],[53,2],[14,2],[13,2],[96,6],[97,75],[98,76],[101,77],[102,78],[103,78],[99,79],[100,80],[106,81],[104,82],[105,83]],"semanticDiagnosticsPerFile":[90,87,91,92,88,89,82,81,93,94,84,95,83,85,86,71,72,62,63,64,65,66,68,69,73,74,75,76,77,79,56,57,58,59,60,55,61,78,70,80,167,159,163,165,164,162,166,161,160,107,108,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,109,156,125,126,127,157,128,129,130,131,132,133,134,135,136,137,138,139,141,140,142,143,144,145,146,147,148,149,150,151,152,153,154,155,158,67,11,12,16,15,2,17,18,19,20,21,22,23,24,3,4,28,25,26,27,29,30,31,5,32,33,34,35,6,36,37,38,39,7,44,40,41,42,43,8,48,45,46,47,49,9,50,51,52,1,10,54,53,14,13,96,97,98,101,102,103,99,100,106,104,105]},"version":"4.6.4"}
@@ -1,400 +0,0 @@
1
- import { MockValueObject } from '@jamashita/anden-object';
2
- import { Nullable, Predicate } from '@jamashita/anden-type';
3
- import { MockSequence } from '../mock/MockSequence';
4
-
5
- describe('ASequence', () => {
6
- describe('contains', () => {
7
- it('returns false if the value does not exist', () => {
8
- const value1: MockValueObject<number> = new MockValueObject(1);
9
- const value2: MockValueObject<number> = new MockValueObject(2);
10
- const value3: MockValueObject<number> = new MockValueObject(3);
11
-
12
- const sequence: MockSequence<MockValueObject<number>> = new MockSequence([value1, value2]);
13
-
14
- expect(sequence.contains(value3)).toBe(false);
15
- });
16
-
17
- it('returns true if the value exists', () => {
18
- const value1: MockValueObject<number> = new MockValueObject(1);
19
- const value2: MockValueObject<number> = new MockValueObject(2);
20
- const value3: MockValueObject<number> = new MockValueObject(2);
21
-
22
- const sequence: MockSequence<MockValueObject<number>> = new MockSequence([value1, value2]);
23
-
24
- expect(sequence.contains(value1)).toBe(true);
25
- expect(sequence.contains(value2)).toBe(true);
26
- expect(sequence.contains(value3)).toBe(true);
27
- });
28
- });
29
-
30
- describe('equals', () => {
31
- it('returns true when the same instance given', () => {
32
- const value: MockValueObject<number> = new MockValueObject(1);
33
-
34
- const sequence: MockSequence<MockValueObject<number>> = new MockSequence([value]);
35
-
36
- expect(sequence.equals(sequence)).toBe(true);
37
- });
38
-
39
- it('returns false if the size is different', () => {
40
- const value1: MockValueObject<number> = new MockValueObject(1);
41
- const value2: MockValueObject<number> = new MockValueObject(2);
42
-
43
- const sequence1: MockSequence<MockValueObject<number>> = new MockSequence([value1]);
44
- const sequence2: MockSequence<MockValueObject<number>> = new MockSequence([value1, value2]);
45
-
46
- expect(sequence1.equals(sequence2)).toBe(false);
47
- });
48
-
49
- it('returns false when the different class instance given', () => {
50
- const sequence: MockSequence<MockValueObject<number>> = new MockSequence([]);
51
-
52
- expect(sequence.equals(new MockValueObject('mock'))).toBe(false);
53
- });
54
-
55
- it('returns true even if the order is different', () => {
56
- const value1: MockValueObject<number> = new MockValueObject(1);
57
- const value2: MockValueObject<number> = new MockValueObject(2);
58
-
59
- const sequence1: MockSequence<MockValueObject<number>> = new MockSequence([value2, value1]);
60
- const sequence2: MockSequence<MockValueObject<number>> = new MockSequence([value1, value2]);
61
-
62
- expect(sequence1.equals(sequence2)).toBe(false);
63
- });
64
-
65
- it('returns true if the length is the same and the sequence is the same', () => {
66
- const value1: MockValueObject<number> = new MockValueObject(1);
67
- const value2: MockValueObject<number> = new MockValueObject(2);
68
-
69
- const sequence1: MockSequence<MockValueObject<number>> = new MockSequence([value1, value2]);
70
- const sequence2: MockSequence<MockValueObject<number>> = new MockSequence([value1, value2]);
71
-
72
- expect(sequence1.equals(sequence2)).toBe(true);
73
- });
74
- });
75
-
76
- describe('every', () => {
77
- it('returns true if all the values are the same', () => {
78
- const sequence: MockSequence<MockValueObject<number>> = new MockSequence([
79
- new MockValueObject(2),
80
- new MockValueObject(4),
81
- new MockValueObject(6),
82
- new MockValueObject(8)
83
- ]);
84
-
85
- const every: boolean = sequence.every((v: MockValueObject<number>) => {
86
- return v.get() % 2 === 0;
87
- });
88
-
89
- expect(every).toBe(true);
90
- });
91
-
92
- it('returns false if at least one of the values is not false', () => {
93
- const value1: MockValueObject<number> = new MockValueObject(1);
94
- const value2: MockValueObject<number> = new MockValueObject(4);
95
- const value3: MockValueObject<number> = new MockValueObject(6);
96
- const value4: MockValueObject<number> = new MockValueObject(8);
97
- const value5: MockValueObject<number> = new MockValueObject(3);
98
-
99
- const sequence1: MockSequence<MockValueObject<number>> = new MockSequence([
100
- value1,
101
- value2,
102
- value3,
103
- value4
104
- ]);
105
- const sequence2: MockSequence<MockValueObject<number>> = new MockSequence([
106
- value2,
107
- value1,
108
- value3,
109
- value4
110
- ]);
111
- const sequence3: MockSequence<MockValueObject<number>> = new MockSequence([
112
- value2,
113
- value3,
114
- value1,
115
- value4
116
- ]);
117
- const sequence4: MockSequence<MockValueObject<number>> = new MockSequence([
118
- value2,
119
- value3,
120
- value4,
121
- value1
122
- ]);
123
- const sequence5: MockSequence<MockValueObject<number>> = new MockSequence([
124
- value1,
125
- value5,
126
- value3,
127
- value4
128
- ]);
129
- const sequence6: MockSequence<MockValueObject<number>> = new MockSequence([
130
- value1,
131
- value2,
132
- value5,
133
- value4
134
- ]);
135
-
136
- const predicate: Predicate<MockValueObject<number>> = (v: MockValueObject<number>) => {
137
- return v.get() % 2 === 0;
138
- };
139
-
140
- const every1: boolean = sequence1.every(predicate);
141
- const every2: boolean = sequence2.every(predicate);
142
- const every3: boolean = sequence3.every(predicate);
143
- const every4: boolean = sequence4.every(predicate);
144
- const every5: boolean = sequence5.every(predicate);
145
- const every6: boolean = sequence6.every(predicate);
146
-
147
- expect(every1).toBe(false);
148
- expect(every2).toBe(false);
149
- expect(every3).toBe(false);
150
- expect(every4).toBe(false);
151
- expect(every5).toBe(false);
152
- expect(every6).toBe(false);
153
- });
154
- });
155
-
156
- describe('find', () => {
157
- it('returns the first found value', () => {
158
- const value1: MockValueObject<number> = new MockValueObject(1);
159
- const value2: MockValueObject<number> = new MockValueObject(2);
160
- const value3: MockValueObject<number> = new MockValueObject(3);
161
- const value4: MockValueObject<number> = new MockValueObject(4);
162
-
163
- const sequence: MockSequence<MockValueObject<number>> = new MockSequence([
164
- value1,
165
- value2,
166
- value3,
167
- value4
168
- ]);
169
-
170
- const found1: Nullable<MockValueObject<number>> = sequence.find((v: MockValueObject<number>) => {
171
- return v.get() === 1;
172
- });
173
- const found2: Nullable<MockValueObject<number>> = sequence.find((v: MockValueObject<number>) => {
174
- return v.get() === 2;
175
- });
176
- const found3: Nullable<MockValueObject<number>> = sequence.find((v: MockValueObject<number>) => {
177
- return v.get() % 2 === 0;
178
- });
179
- const found4: Nullable<MockValueObject<number>> = sequence.find((v: MockValueObject<number>) => {
180
- return v.get() > 1000;
181
- });
182
-
183
- expect(found1).toBe(value1);
184
- expect(found2).toBe(value2);
185
- expect(found3).toBe(value2);
186
- expect(found4).toBeNull();
187
- });
188
- });
189
-
190
- describe('forEach', () => {
191
- it('calls back as much as the size of set', () => {
192
- const sequence: MockSequence<MockValueObject<number>> = new MockSequence([
193
- new MockValueObject(1),
194
- new MockValueObject(2),
195
- new MockValueObject(3)
196
- ]);
197
-
198
- expect(sequence.size()).toBe(3);
199
- sequence.forEach((value: MockValueObject<number>, index: number) => {
200
- expect(sequence.get(index)).toBe(value);
201
- });
202
- });
203
- });
204
-
205
- describe('get', () => {
206
- it('returns value at the correct key', () => {
207
- const values: Array<MockValueObject<number>> = [
208
- new MockValueObject(1),
209
- new MockValueObject(2),
210
- new MockValueObject(3)
211
- ];
212
-
213
- const sequence: MockSequence<MockValueObject<number>> = new MockSequence(values);
214
-
215
- expect(sequence.size()).toBe(values.length);
216
- for (let i: number = 0; i < sequence.size(); i++) {
217
- expect(sequence.get(i)).toBe(values[i]);
218
- }
219
- });
220
-
221
- it('returns null at incorrect keys', () => {
222
- const sequence: MockSequence<MockValueObject<number>> = new MockSequence([
223
- new MockValueObject(1),
224
- new MockValueObject(2),
225
- new MockValueObject(3)
226
- ]);
227
-
228
- expect(sequence.get(-1)).toBeNull();
229
- expect(sequence.get(3)).toBeNull();
230
- });
231
- });
232
-
233
- describe('isEmpty', () => {
234
- it('returns true if the values does not exist', () => {
235
- const sequence1: MockSequence<MockValueObject<number>> = new MockSequence([
236
- new MockValueObject(1),
237
- new MockValueObject(2)
238
- ]);
239
- const sequence2: MockSequence<MockValueObject<number>> = new MockSequence([]);
240
-
241
- expect(sequence1.isEmpty()).toBe(false);
242
- expect(sequence2.isEmpty()).toBe(true);
243
- });
244
- });
245
-
246
- describe('iterator', () => {
247
- it('returns [number, MockValueObject<number>]', () => {
248
- const sequence: MockSequence<MockValueObject<number>> = new MockSequence([
249
- new MockValueObject(1),
250
- new MockValueObject(2)
251
- ]);
252
-
253
- let i: number = 0;
254
-
255
- for (const value of sequence) {
256
- expect(value[0]).toBe(i);
257
- expect(value[1].get()).toBe(sequence.get(i)?.get());
258
- i++;
259
- }
260
- });
261
- });
262
-
263
- describe('reduce', () => {
264
- it('throws TypeError when array size is 0 and initialValue is undefined', () => {
265
- const sequence: MockSequence<MockValueObject<number>> = new MockSequence([]);
266
-
267
- expect(() => {
268
- sequence.reduce((_o1: MockValueObject<number>, o2: MockValueObject<number>) => {
269
- return o2;
270
- });
271
- }).toThrow(TypeError);
272
- });
273
-
274
- it('returns initialValue itself when the array size is 0', () => {
275
- const o: MockValueObject<number> = new MockValueObject(1);
276
- const sequence: MockSequence<MockValueObject<number>> = new MockSequence([]);
277
-
278
- expect(sequence.reduce((_o1: MockValueObject<number>, o2: MockValueObject<number>) => {
279
- return o2;
280
- }, o)).toBe(o);
281
- });
282
-
283
- it('returns first element when the array size is only 1', () => {
284
- const o: MockValueObject<number> = new MockValueObject(1);
285
- const sequence: MockSequence<MockValueObject<number>> = new MockSequence([o]);
286
-
287
- expect(sequence.reduce((o1: MockValueObject<number>) => {
288
- return o1;
289
- })).toBe(o);
290
- });
291
-
292
- it('returns reduced value', () => {
293
- const sequence: MockSequence<number> = new MockSequence([1, 2, 3, 4]);
294
-
295
- expect(sequence.reduce((o1: number, o2: number) => {
296
- return o1 + o2;
297
- })).toBe(10);
298
- });
299
- });
300
-
301
- describe('some', () => {
302
- it('returns true if at least one of the values returns true', () => {
303
- const sequence1: MockSequence<MockValueObject<number>> = new MockSequence([
304
- new MockValueObject(2),
305
- new MockValueObject(4),
306
- new MockValueObject(6),
307
- new MockValueObject(8)
308
- ]);
309
- const sequence2: MockSequence<MockValueObject<number>> = new MockSequence([
310
- new MockValueObject(1),
311
- new MockValueObject(4),
312
- new MockValueObject(3),
313
- new MockValueObject(3)
314
- ]);
315
-
316
- const predicate: Predicate<MockValueObject<number>> = (v: MockValueObject<number>) => {
317
- return v.get() % 2 === 0;
318
- };
319
-
320
- const some1: boolean = sequence1.some(predicate);
321
- const some2: boolean = sequence2.some(predicate);
322
-
323
- expect(some1).toBe(true);
324
- expect(some2).toBe(true);
325
- });
326
-
327
- it('returns false if none of the values are true', () => {
328
- const value1: MockValueObject<number> = new MockValueObject(2);
329
- const value2: MockValueObject<number> = new MockValueObject(4);
330
- const value3: MockValueObject<number> = new MockValueObject(6);
331
- const value4: MockValueObject<number> = new MockValueObject(8);
332
-
333
- const sequence: MockSequence<MockValueObject<number>> = new MockSequence([
334
- value1,
335
- value2,
336
- value3,
337
- value4
338
- ]);
339
-
340
- const predicate: Predicate<MockValueObject<number>> = (v: MockValueObject<number>) => {
341
- return v.get() % 2 === 1;
342
- };
343
-
344
- const some: boolean = sequence.some(predicate);
345
-
346
- expect(some).toBe(false);
347
- });
348
- });
349
-
350
- describe('toArray', () => {
351
- it('returns its retaining shallow-copied array', () => {
352
- const values: Array<MockValueObject<number>> = [
353
- new MockValueObject(1),
354
- new MockValueObject(2),
355
- new MockValueObject(3)
356
- ];
357
-
358
- const sequence: MockSequence<MockValueObject<number>> = new MockSequence(values);
359
- const array: Array<MockValueObject<number>> = sequence.toArray();
360
-
361
- expect(sequence.size()).toBe(values.length);
362
- for (let i: number = 0; i < values.length; i++) {
363
- expect(sequence.get(i)).toBe(array[i]);
364
- }
365
-
366
- array.push(new MockValueObject(4));
367
-
368
- expect(sequence.size()).not.toBe(array.length);
369
- });
370
- });
371
-
372
- describe('toString', () => {
373
- it('returns concatenated string', () => {
374
- const sequence: MockSequence<MockValueObject<number>> = new MockSequence([
375
- new MockValueObject(1),
376
- new MockValueObject(2),
377
- new MockValueObject(3)
378
- ]);
379
-
380
- expect(sequence.toString()).toBe('1, 2, 3');
381
- });
382
- });
383
-
384
- describe('values', () => {
385
- it('returns its retaining values', () => {
386
- const values: Array<MockValueObject<number>> = [
387
- new MockValueObject(1),
388
- new MockValueObject(2)
389
- ];
390
- const sequence: MockSequence<MockValueObject<number>> = new MockSequence(values);
391
-
392
- let i: number = 0;
393
-
394
- for (const value of sequence.values()) {
395
- expect(value).toBe(values[i]);
396
- i++;
397
- }
398
- });
399
- });
400
- });