{"_id":"@attocash/commons-test","_rev":"15-4fc335342f87d3710da04eb0f81d3a60","name":"@attocash/commons-test","dist-tags":{"latest":"8.0.2"},"versions":{"6.0.0":{"name":"@attocash/commons-test","version":"6.0.0","_id":"@attocash/commons-test@6.0.0","maintainers":[{"name":"attocash","email":"felipe@atto.cash"}],"dist":{"shasum":"5105008d0bbd00b0a9cff26abb2a24d6cc762bc0","tarball":"https://registry.npmjs.org/@attocash/commons-test/-/commons-test-6.0.0.tgz","fileCount":1442,"integrity":"sha512-bPIBUgxTFMH/EuLRk2Nau0cjK652dyMv27G0Yd/2PrRGhyg8GaBbrm4ePEHfNOH5oWNOimM2V7V7VFJXOz25mQ==","signatures":[{"sig":"MEQCIH2KJujK2lUGeM0xpxW6spjNaKROSRZrJRFGYiOJa/VhAiBacw1k3Yr8vsZlOl30rPOjONQpk7IYSM9cTq3SHeOO7w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5565551},"main":"commons-commons-test.mjs","types":"commons-commons-test.d.mts","gitHead":"e236d2d49796d336082db435c5b51f5fe9bd3f50","_npmUser":{"name":"attocash","email":"felipe@atto.cash"},"_npmVersion":"11.6.1","directories":{},"_nodeVersion":"24.11.0","dependencies":{"ws":"8.18.3","@js-joda/core":"3.2.0","testcontainers":"11.7.1","@stablelib/hmac":"1.0.1","@stablelib/sha256":"1.0.1","@stablelib/sha512":"1.0.1","@stablelib/blake2b":"1.0.1","@stablelib/ed25519":"1.0.1","@testcontainers/mysql":"11.7.1"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"5.8.3"},"peerDependencies":{},"bundleDependencies":[],"optionalDependencies":{},"_npmOperationalInternal":{"tmp":"tmp/commons-test_6.0.0_1762939998346_0.9140061725246147","host":"s3://npm-registry-packages-npm-production"}},"6.1.0":{"name":"@attocash/commons-test","version":"6.1.0","_id":"@attocash/commons-test@6.1.0","maintainers":[{"name":"attocash","email":"felipe@atto.cash"}],"dist":{"shasum":"da51ef63eb7cc70c49acdccf6c5094f3ef42771b","tarball":"https://registry.npmjs.org/@attocash/commons-test/-/commons-test-6.1.0.tgz","fileCount":1442,"integrity":"sha512-8wRn7vl5Bkl0Twu0QXIcO+r9HYFXVwg2rk49Tr2azZaezWjwwfLtDCCW/vrc5JjjbtNBBDyIN5H7uBLHvx3KFg==","signatures":[{"sig":"MEYCIQDgpYxo9mvxV8QLrdUFPF6A7VMP5PCVfArrhRsW36HEzAIhAPaz87aXv/LveuUBUL14Xu40j3x25c2s3viY05oLCnpU","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5551035},"main":"commons-commons-test.mjs","types":"commons-commons-test.d.mts","gitHead":"ab19ef87f3b93d9efac50a9cc7d520a792d59349","_npmUser":{"name":"attocash","email":"felipe@atto.cash"},"_npmVersion":"11.6.2","directories":{},"_nodeVersion":"24.11.1","dependencies":{"ws":"8.18.3","@js-joda/core":"3.2.0","testcontainers":"11.7.1","@stablelib/hmac":"1.0.1","@stablelib/sha256":"1.0.1","@stablelib/sha512":"1.0.1","@stablelib/blake2b":"1.0.1","@stablelib/ed25519":"1.0.1","@testcontainers/mysql":"11.7.1"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"5.8.3"},"peerDependencies":{},"bundleDependencies":[],"optionalDependencies":{},"_npmOperationalInternal":{"tmp":"tmp/commons-test_6.1.0_1765316313983_0.31968244399667034","host":"s3://npm-registry-packages-npm-production"}},"6.2.0":{"name":"@attocash/commons-test","version":"6.2.0","_id":"@attocash/commons-test@6.2.0","maintainers":[{"name":"attocash","email":"felipe@atto.cash"}],"dist":{"shasum":"ce40aab707914eb09faf16fc452ed97622208bb6","tarball":"https://registry.npmjs.org/@attocash/commons-test/-/commons-test-6.2.0.tgz","fileCount":1444,"integrity":"sha512-F2vB/wO2BqZk3TNGwLFt+sfJ7CQ0oUTcfFhijeDL7HZOOVyhqxQOiXuLvS0m168aaPUBjbwlSGkZA3QJ9qfIFQ==","signatures":[{"sig":"MEUCIQCGLX62X6s6FwfovyPOdHdfColCzZn8zzkMoq3qEGfU0AIgQ3ofzVgIA1ixB0kzHLwIG3CF6KoTqSCwhDOMAguiuT4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5696846},"main":"commons-commons-test.mjs","types":"commons-commons-test.d.mts","gitHead":"0cd4202ad72027a5abc2fa567ef6d3cc2812809e","_npmUser":{"name":"attocash","email":"felipe@atto.cash"},"_npmVersion":"11.6.2","directories":{},"_nodeVersion":"24.13.0","dependencies":{"ws":"8.18.3","@js-joda/core":"3.2.0","testcontainers":"11.7.1","@stablelib/hmac":"1.0.1","@stablelib/sha256":"1.0.1","@stablelib/sha512":"1.0.1","@stablelib/blake2b":"1.0.1","@stablelib/ed25519":"1.0.1","@testcontainers/mysql":"11.7.1"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"5.9.2"},"peerDependencies":{},"bundleDependencies":[],"optionalDependencies":{},"_npmOperationalInternal":{"tmp":"tmp/commons-test_6.2.0_1769456784835_0.2101750960121873","host":"s3://npm-registry-packages-npm-production"}},"6.2.1":{"name":"@attocash/commons-test","version":"6.2.1","_id":"@attocash/commons-test@6.2.1","maintainers":[{"name":"attocash","email":"felipe@atto.cash"}],"dist":{"shasum":"973a1cd8818e55a6dcaf424201920d3729e1438d","tarball":"https://registry.npmjs.org/@attocash/commons-test/-/commons-test-6.2.1.tgz","fileCount":1444,"integrity":"sha512-dC/RkjLrpiA4fJvEHp99uhLfUsDhONnl3HuwvL72TBAXKgb1lvce8wogfmd0S0oLdBxxIKPsLs/X6bnxqhEwrQ==","signatures":[{"sig":"MEQCIACV04QxjGT3nImrIIcF7dSXo3T9tIJKaLhZLtYEEyGVAiBe715K0W9ndqdjxOsXxkDpHH23DvGad7h/nhnGAYQC7A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5681350},"main":"commons-commons-test.mjs","types":"commons-commons-test.d.mts","gitHead":"27882b23d242f317b477aa4c017881e2b331a5fc","_npmUser":{"name":"attocash","email":"felipe@atto.cash"},"_npmVersion":"11.6.2","directories":{},"_nodeVersion":"24.13.0","dependencies":{"ws":"8.18.3","@js-joda/core":"3.2.0","testcontainers":"11.7.1","@stablelib/hmac":"1.0.1","@stablelib/sha256":"1.0.1","@stablelib/sha512":"1.0.1","@stablelib/blake2b":"1.0.1","@stablelib/ed25519":"1.0.1","@testcontainers/mysql":"11.7.1"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"5.9.2"},"peerDependencies":{},"bundleDependencies":[],"optionalDependencies":{},"_npmOperationalInternal":{"tmp":"tmp/commons-test_6.2.1_1769721355409_0.21714862806876645","host":"s3://npm-registry-packages-npm-production"}},"6.3.0":{"name":"@attocash/commons-test","version":"6.3.0","_id":"@attocash/commons-test@6.3.0","maintainers":[{"name":"attocash","email":"felipe@atto.cash"}],"dist":{"shasum":"d1cf97533fe787f9c8aa5811c517e9b042b7d64c","tarball":"https://registry.npmjs.org/@attocash/commons-test/-/commons-test-6.3.0.tgz","fileCount":1447,"integrity":"sha512-JZWZXtMYxPeukeCJU4gBjfTBEQlWX8wbIpwtRYsBwQfNo2WqXHjCZIAwYNOvcBv6Dctz57D0XG8GvkObfliV1w==","signatures":[{"sig":"MEUCIQDqAMaI7nkILrRWwm/vSs6dizbo87kkxdhJIoFZBDIiRAIgVM32ljTmcyq4brTfUSyrb6jj53/CM0xYqrUfU/g1Kmw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5889813},"main":"commons-commons-test.mjs","types":"commons-commons-test.d.mts","gitHead":"7694769c9f60ff02025cf449488f41009b4f6957","_npmUser":{"name":"attocash","email":"felipe@atto.cash"},"_npmVersion":"11.6.2","directories":{},"_nodeVersion":"24.13.0","dependencies":{"ws":"8.18.3","@js-joda/core":"3.2.0","testcontainers":"11.7.1","@stablelib/hmac":"1.0.1","@stablelib/sha256":"1.0.1","@stablelib/sha512":"1.0.1","@stablelib/blake2b":"1.0.1","@stablelib/ed25519":"1.0.1","@testcontainers/mysql":"11.7.1"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"5.9.2"},"peerDependencies":{},"bundleDependencies":[],"optionalDependencies":{},"_npmOperationalInternal":{"tmp":"tmp/commons-test_6.3.0_1769897918162_0.6547139622559239","host":"s3://npm-registry-packages-npm-production"}},"6.3.1":{"name":"@attocash/commons-test","version":"6.3.1","_id":"@attocash/commons-test@6.3.1","maintainers":[{"name":"attocash","email":"felipe@atto.cash"}],"dist":{"shasum":"79034d1b6d3a422c30924743545c2f44b3d85022","tarball":"https://registry.npmjs.org/@attocash/commons-test/-/commons-test-6.3.1.tgz","fileCount":6,"integrity":"sha512-tPeWFoHb/3i63jMdFK2uGy5WLOrfTil81H6zhb8Ocb4pG6JCUcgBkjvbWAi17E+tmbdzXGM5jlUnCWaXK1ePSA==","signatures":[{"sig":"MEQCID1+Ay8ImPQ5RRrEcaw5KkDSKCLmQ5l0RjkbZhcbdh+kAiAozxYBfdHkDkc5pUBOqvEepYheizc/ynKAW1pCnr+FGw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4009306},"main":"commons-commons-test.mjs","types":"commons-commons-test.d.mts","gitHead":"10ef3312e867bb2edf7c59480f9c7e1c8ca48dd5","_npmUser":{"name":"attocash","email":"felipe@atto.cash"},"_npmVersion":"11.6.2","directories":{},"_nodeVersion":"24.13.0","dependencies":{"ws":"8.18.3","@js-joda/core":"3.2.0","testcontainers":"11.7.1","@stablelib/hmac":"1.0.1","@stablelib/sha256":"1.0.1","@stablelib/sha512":"1.0.1","@stablelib/blake2b":"1.0.1","@stablelib/ed25519":"1.0.1","@testcontainers/mysql":"11.7.1"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"5.9.2"},"peerDependencies":{},"bundleDependencies":[],"optionalDependencies":{},"_npmOperationalInternal":{"tmp":"tmp/commons-test_6.3.1_1769983375328_0.2049413482880087","host":"s3://npm-registry-packages-npm-production"}},"6.3.2":{"name":"@attocash/commons-test","version":"6.3.2","_id":"@attocash/commons-test@6.3.2","maintainers":[{"name":"attocash","email":"felipe@atto.cash"}],"dist":{"shasum":"56db79c9b4199972fa4ee185fd6fa32bdf4be028","tarball":"https://registry.npmjs.org/@attocash/commons-test/-/commons-test-6.3.2.tgz","fileCount":6,"integrity":"sha512-K+MgpbMFKBfk6qdpfyAHSnP9fA3DfRHB9VSgFIBFb8jm7q0iPnkLe9klmOPNFLG1/xhbbH0lJWP/Os9IVmuIkg==","signatures":[{"sig":"MEYCIQCa50uDNi04M/yvQQrjW+dc+rlGui5LV6+4LPXdMZDRfAIhALD01IPrhle3znfajc9o2zM9WG1tWiMzgcX776zYW+3A","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4011476},"main":"commons-commons-test.mjs","types":"commons-commons-test.d.mts","gitHead":"c114aaf3789819d50b06f9f599a95ecf3e4c622d","_npmUser":{"name":"attocash","email":"felipe@atto.cash"},"_npmVersion":"11.6.2","directories":{},"_nodeVersion":"24.13.0","dependencies":{"ws":"8.18.3","@js-joda/core":"3.2.0","testcontainers":"11.7.1","@stablelib/hmac":"1.0.1","@stablelib/sha256":"1.0.1","@stablelib/sha512":"1.0.1","@stablelib/blake2b":"1.0.1","@stablelib/ed25519":"1.0.1","@testcontainers/mysql":"11.7.1"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"5.9.2"},"peerDependencies":{},"bundleDependencies":[],"optionalDependencies":{},"_npmOperationalInternal":{"tmp":"tmp/commons-test_6.3.2_1770453720827_0.39701792432469074","host":"s3://npm-registry-packages-npm-production"}},"6.5.0":{"name":"@attocash/commons-test","version":"6.5.0","_id":"@attocash/commons-test@6.5.0","maintainers":[{"name":"attocash","email":"felipe@atto.cash"}],"homepage":"https://github.com/attocash/commons#readme","bugs":{"url":"https://github.com/attocash/commons/issues"},"dist":{"shasum":"4c80fd5829d232be463de9220394890427b228d8","tarball":"https://registry.npmjs.org/@attocash/commons-test/-/commons-test-6.5.0.tgz","fileCount":7,"integrity":"sha512-6HkW2A/0a0n2NCBrAeMVsOW77B1p4w/7QCjZ0yMpGQFTOVTDMpJP3LS0JihBH/Hq5vM61R8XEZiG7A1os3LRDQ==","signatures":[{"sig":"MEUCIQDG0pwmgLYB35+hPMhRIa19Vo0ohBf5bsH34hshyiwVCQIgRSl35jD0Y3wexvk8I3w97Na6HnmwSu2qOlEASk2p+5o=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@attocash%2fcommons-test@6.5.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4136292},"main":"commons-commons-test.mjs","types":"commons-commons-test.d.mts","gitHead":"3d1fe096f87af811ed17dfef0c5557197498d27a","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:3c3bdc43-3a14-4b63-a77b-bfe09a4cbf9d"}},"repository":{"url":"git+https://github.com/attocash/commons.git","type":"git"},"_npmVersion":"11.11.0","description":"[![npm version](https://img.shields.io/npm/v/@attocash/commons-test.svg)](https://www.npmjs.com/package/@attocash/commons-test) [![license](https://img.shields.io/github/license/attocash/commons.svg)](https://github.com/attocash/commons/blob/main/LICENSE)","directories":{},"_nodeVersion":"24.14.1","dependencies":{"ws":"8.18.3","@js-joda/core":"3.2.0","testcontainers":"11.7.1","@stablelib/hmac":"1.0.1","@stablelib/sha256":"1.0.1","@stablelib/sha512":"1.0.1","@stablelib/blake2b":"1.0.1","@stablelib/ed25519":"1.0.1","@testcontainers/mysql":"11.7.1"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"5.9.3"},"peerDependencies":{},"bundleDependencies":[],"optionalDependencies":{},"_npmOperationalInternal":{"tmp":"tmp/commons-test_6.5.0_1778790727724_0.5409480396590638","host":"s3://npm-registry-packages-npm-production"}},"6.6.0":{"name":"@attocash/commons-test","version":"6.6.0","_id":"@attocash/commons-test@6.6.0","maintainers":[{"name":"attocash","email":"felipe@atto.cash"}],"homepage":"https://github.com/attocash/commons#readme","bugs":{"url":"https://github.com/attocash/commons/issues"},"dist":{"shasum":"887119bc7d11e30bf85eb0fd16d7303095571bb1","tarball":"https://registry.npmjs.org/@attocash/commons-test/-/commons-test-6.6.0.tgz","fileCount":7,"integrity":"sha512-4rdyVf03l0yaYLQYQ+VkbA2PeGp5HXoLo1+63hjx9WMFiwFRgVurp8aKr+Ja4/L4gt37KvYF+wum+pr96jWOIQ==","signatures":[{"sig":"MEYCIQC0IAMcfJyBHcx76y6rM1t50DIuYRi7COaQEwn1+0SsPwIhALNwjKNqoAhHyrIzrdwjSx+8msi09biginpR5ATVxt8I","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@attocash%2fcommons-test@6.6.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":4136292},"main":"commons-commons-test.mjs","types":"commons-commons-test.d.mts","gitHead":"aef9064a4cf8a2edd1ae02595e46579d83a9fa69","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:3c3bdc43-3a14-4b63-a77b-bfe09a4cbf9d"}},"repository":{"url":"git+https://github.com/attocash/commons.git","type":"git"},"_npmVersion":"11.12.1","description":"[![npm version](https://img.shields.io/npm/v/@attocash/commons-test.svg)](https://www.npmjs.com/package/@attocash/commons-test) [![license](https://img.shields.io/github/license/attocash/commons.svg)](https://github.com/attocash/commons/blob/main/LICENSE)","directories":{},"_nodeVersion":"24.15.0","dependencies":{"ws":"8.18.3","@js-joda/core":"3.2.0","testcontainers":"11.7.1","@stablelib/hmac":"1.0.1","@stablelib/sha256":"1.0.1","@stablelib/sha512":"1.0.1","@stablelib/blake2b":"1.0.1","@stablelib/ed25519":"1.0.1","@testcontainers/mysql":"11.7.1"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"5.9.3"},"peerDependencies":{},"bundleDependencies":[],"optionalDependencies":{},"_npmOperationalInternal":{"tmp":"tmp/commons-test_6.6.0_1778943554602_0.6732982649066357","host":"s3://npm-registry-packages-npm-production"}},"6.7.0":{"name":"@attocash/commons-test","version":"6.7.0","keywords":["atto","kotlin","kotlin-js","cryptocurrency"],"license":"BSD-3-Clause","_id":"@attocash/commons-test@6.7.0","maintainers":[{"name":"attocash","email":"felipe@atto.cash"}],"homepage":"https://atto.cash","bugs":{"url":"https://github.com/attocash/commons/issues"},"dist":{"shasum":"d784586cc495b3d753ebd6c819ed10fd8560fb27","tarball":"https://registry.npmjs.org/@attocash/commons-test/-/commons-test-6.7.0.tgz","fileCount":8,"integrity":"sha512-oIfP2BmgQq04VPLWkbegZ/mWf4Xycif1VTlGI68eBejTu5FsAlwTVFa4VI4XFo2HApszXpHmXbTpZHUVHCoOLQ==","signatures":[{"sig":"MEUCIQCIQvy3GgWrUikqVsgTDYlFWyiuHeuR5vHQtN6JI0YesQIgLHzIP01ZRYdlnG36oTxhWwey/u9tx/f5CeACVOSTsoc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":4127470},"main":"commons-commons-test.mjs","_from":"file:commons-test/build/packages/attocash-commons-test-6.7.0.tgz","types":"commons-commons-test.d.mts","_npmUser":{"name":"attocash","email":"felipe@atto.cash"},"_resolved":"/var/home/felipe/IdeaProjects/commons/commons-test/build/packages/attocash-commons-test-6.7.0.tgz","_integrity":"sha512-oIfP2BmgQq04VPLWkbegZ/mWf4Xycif1VTlGI68eBejTu5FsAlwTVFa4VI4XFo2HApszXpHmXbTpZHUVHCoOLQ==","repository":{"url":"git+https://github.com/attocash/commons.git","type":"git","directory":"commons-test"},"_npmVersion":"10.9.7","description":"Test utilities and mock Atto node and worker services for JavaScript and TypeScript integrations.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ws":"8.18.3","@js-joda/core":"3.2.0","testcontainers":"11.7.1","@stablelib/hmac":"1.0.1","@stablelib/sha256":"1.0.1","@stablelib/sha512":"1.0.1","@stablelib/blake2b":"1.0.1","@stablelib/ed25519":"1.0.1","@testcontainers/mysql":"11.7.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/commons-test_6.7.0_1779911970871_0.7064173515706453","host":"s3://npm-registry-packages-npm-production"}},"6.7.1":{"name":"@attocash/commons-test","version":"6.7.1","keywords":["atto","kotlin","kotlin-js","cryptocurrency"],"license":"BSD-3-Clause","_id":"@attocash/commons-test@6.7.1","maintainers":[{"name":"attocash","email":"felipe@atto.cash"}],"homepage":"https://atto.cash","bugs":{"url":"https://github.com/attocash/commons/issues"},"dist":{"shasum":"890a03c9025f956eaac240b8dcd8919301259bf6","tarball":"https://registry.npmjs.org/@attocash/commons-test/-/commons-test-6.7.1.tgz","fileCount":70,"integrity":"sha512-H21WFf0S+2DkjN8n412dWMJaINxe5OJYOglxFf3YqD86FRv+bIcc4Js3HNhNQ2BzAJ0Mf6w9DHh/307jHddx9A==","signatures":[{"sig":"MEUCIQDaAMY5tNoUD5vrcMKnZIO8mRiRqh2syK2HIkl29vva3AIgLPwYYlu9DBDKYmt1hmz2dbdzuO3FwnJeIjNZraugO3I=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":3587988},"main":"commons-commons-test.mjs","types":"commons-commons-test.d.mts","gitHead":"1a3e41024f75a8372be02aab0eb9e6ed7b92d87f","_npmUser":{"name":"attocash","email":"felipe@atto.cash"},"repository":{"url":"git+https://github.com/attocash/commons.git","type":"git","directory":"commons-test"},"_npmVersion":"11.5.1","description":"Test utilities and mock Atto node and worker services for JavaScript and TypeScript integrations.","directories":{},"_nodeVersion":"24.6.0","dependencies":{"ws":"8.18.3","@js-joda/core":"3.2.0","testcontainers":"11.7.1","@stablelib/hmac":"1.0.1","@stablelib/sha256":"1.0.1","@stablelib/sha512":"1.0.1","@stablelib/blake2b":"1.0.1","@stablelib/ed25519":"1.0.1","@testcontainers/mysql":"11.7.1","@attocash/commons-core":"6.7.1","@attocash/commons-worker":"6.7.1","@attocash/commons-node-remote":"6.7.1","@attocash/commons-worker-remote":"6.7.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/commons-test_6.7.1_1779996277245_0.06902108288745668","host":"s3://npm-registry-packages-npm-production"}},"6.7.1-patch.1":{"name":"@attocash/commons-test","version":"6.7.1-patch.1","keywords":["atto","kotlin","kotlin-js","cryptocurrency"],"license":"BSD-3-Clause","_id":"@attocash/commons-test@6.7.1-patch.1","maintainers":[{"name":"attocash","email":"felipe@atto.cash"}],"homepage":"https://atto.cash","bugs":{"url":"https://github.com/attocash/commons/issues"},"dist":{"shasum":"f93242098a0ae4739bb5dcca345b13c0e9ee2b67","tarball":"https://registry.npmjs.org/@attocash/commons-test/-/commons-test-6.7.1-patch.1.tgz","fileCount":54,"integrity":"sha512-8KmGLMBYO5TeNrVSpZhJ3Km5RbyP57IktaC+okpQjESai9a27+gjc/EAqMs5v72Ke3jxPAefdGV8T0wa+3k06A==","signatures":[{"sig":"MEQCIAWI568KMhKAjhYiXYYzaldeb8KgK/ohn1ud9vf4AGX7AiAOD8hSwnla2ElayJKytWdlNMMA6HA59jDWUP2wZmYsTA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1427138},"main":"commons-commons-test.mjs","_from":"file:commons-test/build/tmp/packJsPackage/attocash-commons-test-6.7.1-patch.1.tgz","types":"commons-commons-test.d.mts","_npmUser":{"name":"attocash","email":"felipe@atto.cash"},"_resolved":"/var/home/felipe/IdeaProjects/commons/commons-test/build/tmp/packJsPackage/attocash-commons-test-6.7.1-patch.1.tgz","_integrity":"sha512-8KmGLMBYO5TeNrVSpZhJ3Km5RbyP57IktaC+okpQjESai9a27+gjc/EAqMs5v72Ke3jxPAefdGV8T0wa+3k06A==","repository":{"url":"git+https://github.com/attocash/commons.git","type":"git","directory":"commons-test"},"_npmVersion":"11.5.1","description":"Test utilities and mock Atto node and worker services for JavaScript and TypeScript integrations.","directories":{},"_nodeVersion":"22.22.2","dependencies":{"ws":"8.18.3","@js-joda/core":"3.2.0","testcontainers":"11.7.1","@stablelib/hmac":"1.0.1","@stablelib/sha256":"1.0.1","@stablelib/sha512":"1.0.1","@stablelib/blake2b":"1.0.1","@stablelib/ed25519":"1.0.1","@testcontainers/mysql":"11.7.1","@attocash/commons-core":"6.7.1-patch.1","@attocash/commons-worker":"6.7.1-patch.1","@attocash/commons-node-remote":"6.7.1-patch.1","@attocash/commons-worker-remote":"6.7.1-patch.1"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/commons-test_6.7.1-patch.1_1780002749067_0.6563078061287109","host":"s3://npm-registry-packages-npm-production"}},"7.0.2":{"name":"@attocash/commons-test","version":"7.0.2","keywords":["atto","kotlin","kotlin-js","cryptocurrency"],"license":"BSD-3-Clause","_id":"@attocash/commons-test@7.0.2","maintainers":[{"name":"attocash","email":"felipe@atto.cash"}],"homepage":"https://atto.cash","bugs":{"url":"https://github.com/attocash/commons/issues"},"dist":{"shasum":"651cffce917c3da2b46e7e5f3d3112706aea9542","tarball":"https://registry.npmjs.org/@attocash/commons-test/-/commons-test-7.0.2.tgz","fileCount":20,"integrity":"sha512-8CGIBmV68T6vdRNMMB42isM1N7UcpD2lIsSmCvmXjq0NR9iu90iBSmrHHqwjfOZZvMHjFuuWFd5qsD6PkGolMw==","signatures":[{"sig":"MEUCIQCo49eusErz8AJkttmYyMKCsAGLTLCAhf2ME8BdDIjMNAIgcjQjVfvSu4KmjiSJX1EUAHnQM013fOe7Q3chvR7rvkE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@attocash%2fcommons-test@7.0.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":387767},"main":"commons-commons-test.mjs","_from":"file:commons-test/build/packages/attocash-commons-test-7.0.2.tgz","types":"commons-commons-test.d.mts","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:315c2343-ec46-4676-8c8f-cd45b43c1cd1"}},"_resolved":"/home/runner/work/commons/commons/commons-test/build/packages/attocash-commons-test-7.0.2.tgz","_integrity":"sha512-8CGIBmV68T6vdRNMMB42isM1N7UcpD2lIsSmCvmXjq0NR9iu90iBSmrHHqwjfOZZvMHjFuuWFd5qsD6PkGolMw==","repository":{"url":"git+https://github.com/attocash/commons.git","type":"git","directory":"commons-test"},"_npmVersion":"11.16.0","description":"Test utilities and mock Atto node and worker services for JavaScript and TypeScript integrations.","directories":{},"_nodeVersion":"24.18.0","dependencies":{"ws":"8.20.1","@js-joda/core":"3.2.0","@noble/hashes":"2.2.0","testcontainers":"11.7.1","@testcontainers/mysql":"11.7.1","@attocash/commons-core":"7.0.2","@attocash/commons-node":"7.0.2","@attocash/commons-worker":"7.0.2","@attocash/commons-transport":"7.0.2","@attocash/commons-node-remote":"7.0.2","@attocash/commons-worker-remote":"7.0.2"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/commons-test_7.0.2_1785094488911_0.8988548847005209","host":"s3://npm-registry-packages-npm-production"}},"8.0.0":{"name":"@attocash/commons-test","version":"8.0.0","keywords":["atto","kotlin","kotlin-js","cryptocurrency"],"license":"BSD-3-Clause","_id":"@attocash/commons-test@8.0.0","maintainers":[{"name":"attocash","email":"felipe@atto.cash"}],"homepage":"https://atto.cash","bugs":{"url":"https://github.com/attocash/commons/issues"},"dist":{"shasum":"938c7dc17888d3a08b400ac70f5ae6c0a4712d90","tarball":"https://registry.npmjs.org/@attocash/commons-test/-/commons-test-8.0.0.tgz","fileCount":20,"integrity":"sha512-IxVZSP5zrrZ+1+LA4CtKjR8oWau4J+/DzcTI6zCXqijc4Lfxe62+W7Ttj1eVucrAbj8qKYXmP+LaUPcunWUjdw==","signatures":[{"sig":"MEYCIQC7hxPMeKNpR3/Z+8EelqPUgtNtJr3wnTeIM5hHiMmnSgIhAN7TiHhmRZGIOw/MRTSq2FJ039O2UBK4DEGBXZdpSGc4","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@attocash%2fcommons-test@8.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":387767},"main":"commons-commons-test.mjs","_from":"file:commons-test/build/packages/attocash-commons-test-8.0.0.tgz","types":"commons-commons-test.d.mts","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:315c2343-ec46-4676-8c8f-cd45b43c1cd1"}},"_resolved":"/home/runner/work/commons/commons/commons-test/build/packages/attocash-commons-test-8.0.0.tgz","_integrity":"sha512-IxVZSP5zrrZ+1+LA4CtKjR8oWau4J+/DzcTI6zCXqijc4Lfxe62+W7Ttj1eVucrAbj8qKYXmP+LaUPcunWUjdw==","repository":{"url":"git+https://github.com/attocash/commons.git","type":"git","directory":"commons-test"},"_npmVersion":"11.19.0","description":"Test utilities and mock Atto node and worker services for JavaScript and TypeScript integrations.","directories":{},"_nodeVersion":"24.20.0","dependencies":{"ws":"8.20.1","@js-joda/core":"3.2.0","@noble/hashes":"2.2.0","testcontainers":"11.7.1","@testcontainers/mysql":"11.7.1","@attocash/commons-core":"8.0.0","@attocash/commons-node":"8.0.0","@attocash/commons-worker":"8.0.0","@attocash/commons-transport":"8.0.0","@attocash/commons-node-remote":"8.0.0","@attocash/commons-worker-remote":"8.0.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/commons-test_8.0.0_1788898418396_0.3829654230866526","host":"s3://npm-registry-packages-npm-production"}},"8.0.2":{"_id":"@attocash/commons-test@8.0.2","bugs":{"url":"https://github.com/attocash/commons/issues"},"dist":{"shasum":"3431e33f00da06d79528f1b49eac6df8a5ecf9eb","tarball":"https://registry.npmjs.org/@attocash/commons-test/-/commons-test-8.0.2.tgz","fileCount":20,"integrity":"sha512-IN4m5Z+Z1MIpAeBNLm/pUr7Jt8VfcwEUvsgBcigQj/be3htJyy0lF66DzlfyFjC5Y6Sd/1Hg1SgcuMb9oIEMxQ==","signatures":[{"sig":"MEUCIGb56mAj83A3Z9hA5Vr+PZY38GmhjgXhkOJSxo3H2WvqAiEA6Q2oaTZTwC3GCvhN/kKfZS57H8cpTFDtRoVxuhAHPwA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"},{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQC3J/o+dvbdQQxa4I3h+CqepbElImc0UWNSqQX4lw2wDQIhANd753mQgrXuoLdfbw/QUUdPDOBAGXuRM80etv+4pTCg"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@attocash%2fcommons-test@8.0.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":438406},"main":"commons-commons-test.mjs","name":"@attocash/commons-test","_from":"file:commons-test/build/packages/attocash-commons-test-8.0.2.tgz","types":"commons-commons-test.d.mts","license":"BSD-3-Clause","version":"8.0.2","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"315c2343-ec46-4676-8c8f-cd45b43c1cd1"}},"homepage":"https://atto.cash","keywords":["atto","kotlin","kotlin-js","cryptocurrency"],"_resolved":"/home/runner/work/commons/commons/commons-test/build/packages/attocash-commons-test-8.0.2.tgz","_integrity":"sha512-IN4m5Z+Z1MIpAeBNLm/pUr7Jt8VfcwEUvsgBcigQj/be3htJyy0lF66DzlfyFjC5Y6Sd/1Hg1SgcuMb9oIEMxQ==","repository":{"url":"git+https://github.com/attocash/commons.git","type":"git","directory":"commons-test"},"_npmVersion":"11.19.0","description":"Test utilities and mock Atto node and worker services for JavaScript and TypeScript integrations.","directories":{},"maintainers":[{"name":"attocash","email":"felipe@atto.cash"}],"_nodeVersion":"24.21.0","dependencies":{"ws":"8.20.1","@js-joda/core":"3.2.0","@noble/hashes":"2.2.0","testcontainers":"11.7.1","@testcontainers/mysql":"11.7.1","@attocash/commons-core":"8.0.2","@attocash/commons-node":"8.0.2","@attocash/commons-worker":"8.0.2","@attocash/commons-transport":"8.0.2","@attocash/commons-node-remote":"8.0.2","@attocash/commons-worker-remote":"8.0.2"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/commons-test_8.0.2_1790705982549_0.38614969612100514"}}},"time":{"created":"2025-11-12T09:33:18.228Z","modified":"2026-09-29T18:19:43.026Z","6.0.0":"2025-11-12T09:33:18.625Z","6.1.0":"2025-12-09T21:38:34.173Z","6.2.0":"2026-01-26T19:46:25.088Z","6.2.1":"2026-01-29T21:15:55.652Z","6.3.0":"2026-01-31T22:18:38.466Z","6.3.1":"2026-02-01T22:02:55.551Z","6.3.2":"2026-02-07T08:42:01.029Z","6.5.0":"2026-05-14T20:32:07.943Z","6.6.0":"2026-05-16T14:59:14.786Z","6.7.0":"2026-05-27T19:59:31.082Z","6.7.1":"2026-05-28T19:24:37.419Z","6.7.1-patch.1":"2026-05-28T21:12:29.281Z","7.0.2":"2026-07-26T19:34:49.067Z","8.0.0":"2026-09-08T20:13:38.632Z","8.0.2":"2026-09-29T18:19:42.663Z"},"bugs":{"url":"https://github.com/attocash/commons/issues"},"license":"BSD-3-Clause","homepage":"https://atto.cash","keywords":["atto","kotlin","kotlin-js","cryptocurrency"],"repository":{"url":"git+https://github.com/attocash/commons.git","type":"git","directory":"commons-test"},"description":"Test utilities and mock Atto node and worker services for JavaScript and TypeScript integrations.","maintainers":[{"name":"attocash","email":"felipe@atto.cash"}],"readme":"# @attocash/commons-test\n\n[![npm version](https://img.shields.io/npm/v/@attocash/commons-test.svg)](https://www.npmjs.com/package/@attocash/commons-test)\n[![license](https://img.shields.io/github/license/attocash/commons.svg)](https://github.com/attocash/commons/blob/main/LICENSE)\n\nTest utilities for Atto JavaScript and TypeScript integrations.\n\n`@attocash/commons-test` provides local mock services for applications that use the individual Atto Commons JavaScript\npackages. It starts a real Atto node container with a MySQL container and a real Work Server container, then exposes\ntheir mapped URLs so your tests can use the normal node, worker, wallet, and monitor clients.\n\n## Install\n\n```sh\nnpm install --save-dev @attocash/commons-test\nnpm install @attocash/commons-core @attocash/commons-node @attocash/commons-node-remote\nnpm install @attocash/commons-worker @attocash/commons-worker-remote @attocash/commons-wallet\n```\n\nThis package is published as ESM and includes TypeScript declarations.\n\n## Requirements\n\n- Node.js 18 or newer is recommended.\n- Docker or Podman must be installed and running.\n- The test process must be allowed to pull and run containers.\n- Use ESM imports. In Node.js files, use `.mjs` or set `\"type\": \"module\"`.\n\nNode.js examples that use the Atto clients should expose `require` for the underlying runtime:\n\n```js\nimport {createRequire} from 'node:module'\n\nglobalThis.require = createRequire(import.meta.url)\n```\n\n## What It Provides\n\n- `AttoNodeMockAsyncBuilder`: starts a local Atto node backed by MySQL.\n- `AttoWorkerMockAsyncBuilder`: starts a local Work Server.\n- `baseUrl` properties that plug directly into `AttoNodeClientAsyncBuilder` and `AttoWorkerAsyncBuilder`.\n- A generated local genesis transaction so tests can start with a funded account.\n- Builder options for container names, images, MySQL settings, and custom genesis transactions.\n\n## Quick Example\n\n```js\nimport {createRequire} from 'node:module'\nimport {\n  AttoAmount,\n  AttoMnemonic,\n  AttoUnit,\n  toAttoIndex,\n  toPrivateKey,\n  toSeedAsync,\n} from '@attocash/commons-core'\nimport {AttoNodeClientAsyncBuilder} from '@attocash/commons-node-remote'\nimport {AttoWorkerAsyncBuilder} from '@attocash/commons-worker-remote'\nimport {AttoWalletAsyncBuilder} from '@attocash/commons-wallet'\nimport {\n  AttoNodeMockAsyncBuilder,\n  AttoWorkerMockAsyncBuilder,\n} from '@attocash/commons-test'\n\nglobalThis.require = createRequire(import.meta.url)\n\nconst mnemonic = await AttoMnemonic.generate()\nconst seed = await toSeedAsync(mnemonic)\nconst genesisPrivateKey = await toPrivateKey(seed, toAttoIndex(0))\n\nconst nodeMock = await new AttoNodeMockAsyncBuilder(genesisPrivateKey).build()\nconst workerMock = await new AttoWorkerMockAsyncBuilder().build()\n\ntry {\n  await nodeMock.start()\n  await workerMock.start()\n\n  const nodeClient = new AttoNodeClientAsyncBuilder(nodeMock.baseUrl).build()\n  const worker = new AttoWorkerAsyncBuilder(workerMock.baseUrl).build()\n\n  const wallet = new AttoWalletAsyncBuilder(nodeClient, worker)\n    .signerProviderSeed(seed)\n    .build()\n\n  const sender = toAttoIndex(0)\n  const receiver = toAttoIndex(1)\n\n  await wallet.openAccount(sender)\n  await wallet.openAccount(receiver)\n\n  const receiverAddress = await wallet.getAddress(receiver)\n  const amount = AttoAmount.from(AttoUnit.ATTO, '1')\n  const transaction = await wallet.sendByIndex(sender, receiverAddress, amount, null)\n\n  console.log(`Published ${transaction.hash}`)\n} finally {\n  await workerMock.stop()\n  await nodeMock.stop()\n}\n```\n\n## Custom Images and Names\n\nUse builder methods when a test suite needs pinned images, isolated container names, or custom MySQL settings.\n\n```js\nconst nodeMock = await new AttoNodeMockAsyncBuilder(genesisPrivateKey)\n  .name('atto-node-test')\n  .image('ghcr.io/attocash/node:live')\n  .mysqlImage('mysql:8.4')\n  .dbName('node')\n  .dbUser('root')\n  .dbPassword('root')\n  .pullImages(false)\n  .logOutput(false)\n  .build()\n\nconst workerMock = await new AttoWorkerMockAsyncBuilder()\n  .name('atto-worker-test')\n  .image('ghcr.io/attocash/work-server:cpu')\n  .pullImage(false)\n  .logOutput(false)\n  .build()\n```\n\nFor release gates, prefer immutable image digests in `.image(...)` and `.mysqlImage(...)`.\nContainer logs are disabled by default so generated test keys are not copied into CI logs; enable `.logOutput(true)` only while debugging.\n\n## Lifecycle\n\nAlways await `stop()` in `finally` or your test framework's teardown hook. Stop mocks in reverse acquisition order.\n\n```js\nlet nodeMock\nlet workerMock\n\nbeforeAll(async () => {\n  nodeMock = await new AttoNodeMockAsyncBuilder(genesisPrivateKey).build()\n  workerMock = await new AttoWorkerMockAsyncBuilder().build()\n\n  await nodeMock.start()\n  await workerMock.start()\n})\n\nafterAll(async () => {\n  await workerMock?.stop()\n  await nodeMock?.stop()\n})\n```\n\n`baseUrl` is available only after `start()` has completed.\n`close()` remains available as a synchronous compatibility fallback, but it cannot guarantee teardown has completed before the next test starts.\n\n## Full Example\n\nThe repository includes a runnable JavaScript example that uses `@attocash/commons-test` with the individual Atto\nCommons packages to start mock services, create a wallet, open accounts, send transactions, and listen to monitors:\n\n- [examples/js-client](https://github.com/attocash/commons/tree/main/examples/js-client)\n\n## API Summary\n\n| Export                       | Purpose                                                                       |\n|------------------------------|-------------------------------------------------------------------------------|\n| `AttoNodeMockAsyncBuilder`   | Builds a node mock backed by an Atto node container and a MySQL container.    |\n| `AttoNodeMockAsync`          | Starts, stops, and exposes the node mock `baseUrl` and `genesisTransaction`.  |\n| `AttoWorkerMockAsyncBuilder` | Builds a Work Server mock container.                                          |\n| `AttoWorkerMockAsync`        | Starts, stops, and exposes the worker mock `baseUrl`.                         |\n| `AttoNodeMockConfiguration`  | Configuration object for lower-level Kotlin/JVM use.                          |\n\n## Documentation\n\n- [Atto documentation](https://atto.cash/docs)\n- [Integration overview](https://atto.cash/docs/integration)\n- [Node integration](https://atto.cash/docs/integration/node)\n- [Work Server integration](https://atto.cash/docs/integration/work-server)\n- [Atto Commons repository](https://github.com/attocash/commons)\n\n## License\n\n[BSD 3-Clause](https://github.com/attocash/commons/blob/main/LICENSE)\n","readmeFilename":"README.md"}