{"_id":"streamr-test-utils","_rev":"20-68db2830c90ad515758780adfba93148","name":"streamr-test-utils","dist-tags":{"latest":"2.0.0"},"versions":{"1.0.0":{"name":"streamr-test-utils","version":"1.0.0","keywords":["testing","streamr","asynchronous"],"author":{"name":"Streamr","email":"contact@streamr.com"},"license":"AGPL-3.0","_id":"streamr-test-utils@1.0.0","maintainers":[{"name":"harbu","email":"harbuzen@gmail.com"}],"homepage":"https://github.com/streamr-dev/streamr-test-utils","bugs":{"url":"https://github.com/streamr-dev/streamr-test-utils/issues"},"dist":{"shasum":"7a3fa5e9260ea2e5941b277cd3ae89dc9b448b8c","tarball":"https://registry.npmjs.org/streamr-test-utils/-/streamr-test-utils-1.0.0.tgz","fileCount":4,"integrity":"sha512-NbZZz0kntHhBiOr/peEG/e9NK2sPwwzAK6gqHaq8aKVaia95ecbpF8EaDOS3YMqVlRnSSEzHWAifjjo027ogIQ==","signatures":[{"sig":"MEQCIFvNML5GBux0D1OhjyqEr9ogEeBYQ+pP6hniy5hEXw5mAiA7FZq5pCiQfWIIPF+jMRQ54mzO51Alq38pVqucUpLC6g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":44580,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdPu4KCRA9TVsSAnZWagAA4aMQAJOqLVMnHYRS6+RZ8KVl\naBKlbnWOrbwCKx5dPkkyYcsy8KD5AD9I/JIB2hbXX0UBk+Exu7Nkqi+nCP4z\nq5B2N1e9KqKExZnrGoQrz+7zjO13d2JXYKSGFW8hw8Fi+fA9Z63awA065Ke9\ngT8x4AMn8yY/hBpaogi4uICl73/Ge69ZpRQYvAK0KAdAcHPbiItIQNX8Zg8g\nZQXZEPmS7YA6NY2GCNKA+rKhvXIs1OIAWi2TY5R9+02uXX2JvzWC6H/xrMbU\neAVdTkCfHeVnD8LjtU/Y8IwfhXG8Y/DX4i3g2w01gRNysxIJ6tXtiu+UCFkL\n+wPZF0l44lyVALZ1vwUQ7a/7fbaLGJEvsnM2zytsVrvjEwD3m0vsY0yAPIPI\nclsI8bC/JFcthyY1se2HbIQ0jG1bWR1wR1xx6hCFvbW6S7uDpwx0bpfCHNn3\nFx2BTJzjIpf1Bpu+0+ZOORSCI72T1UVfAVb10i/OgdS9zgm+PIqqL/JuGH+e\n4HDirvCtDNmJMF54J5GYrovrE3Juyc6lcm7w61NBIWCzh/VB0cMNBYjHiDFw\nYu+SVqSp5Yo/dUcjHQyFxde+qD/IJ9rSgEzJYo2wC568DAeLxCqaYigo6By6\neKaj38ZBjXFaRYNgU2240BEvqUeJqvx13l4rztf5DKtacDiPfHFKdh8DZNem\nf9n0\r\n=4iq7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"utils.js","gitHead":"38184d14e97719cce871b38a11b7386c2d04a06f","scripts":{"test":"echo 'not implemented' & exit 1"},"_npmUser":{"name":"harbu","email":"harbuzen@gmail.com"},"repository":{"url":"git+ssh://git@github.com/streamr-dev/streamr-test-utils.git","type":"git"},"_npmVersion":"6.9.0","description":"a collection of Node.js utilities for dealing with asynchronous behavior in jest/mocha tests","directories":{},"_nodeVersion":"10.15.3","dependencies":{"p-event":"^4.1.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^6.1.0","eslint-plugin-import":"^2.18.2","eslint-config-airbnb-base":"^13.2.0","eslint-config-streamr-nodejs":"^1.1.0"},"_npmOperationalInternal":{"tmp":"tmp/streamr-test-utils_1.0.0_1564405257785_0.9628609800769745","host":"s3://npm-registry-packages"}},"1.0.4":{"name":"streamr-test-utils","version":"1.0.4","keywords":["testing","streamr","asynchronous"],"author":{"name":"Streamr","email":"contact@streamr.com"},"license":"Apache-2.0","_id":"streamr-test-utils@1.0.4","maintainers":[{"name":"harbu","email":"harbuzen@gmail.com"}],"homepage":"https://github.com/streamr-dev/streamr-test-utils","bugs":{"url":"https://github.com/streamr-dev/streamr-test-utils/issues"},"dist":{"shasum":"188c95285341c19dba1f9ed86d375480dd108ea3","tarball":"https://registry.npmjs.org/streamr-test-utils/-/streamr-test-utils-1.0.4.tgz","fileCount":6,"integrity":"sha512-NbnzOcJdIO6xt7kv0+GxUyMDfDUcPlZ8ojWAH6AeGv39M80SurFc9A73jV5MmMb6W9p3WhoCjlqxHllD4UWbog==","signatures":[{"sig":"MEUCIQCsEVXBbakEqn88mwDZGzoolffAC7cAxj73A3KrDxTGaQIgQru1QTMnL9aKEa7eFu9LMqvBOmRNexE8o0B1pjKiuvk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":22829,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdy/WZCRA9TVsSAnZWagAAvMQP/jOumxy+OQkIyM5Mv7xC\njgZrlTYRr0f11CI9Kju6sYv7qRF+yh7jdSInj/yaWhk06XDZ8YL0+WRTSJiO\nlMx8N0RTZ1s3ZDYjcO5ECpVyBV4D75cFWxL+7FlH6beotszZh3cHk8RULnHj\n8IBUFGpyhE26W4KVKfouQR0o8ruvPBzyopnahuiAxa+WiFYQWTLUgKNFHEp1\nuc/28cn1HEE3TdNPJheWpWfgvmR1KDOdTMcG9POM+g/OBLOErNDWIr0uiQ8b\nKLrgcUXWnBdml4DW52GYH0cExO5l+1FUDjT5YyQ42Ce31wCB3WUxGBLand/S\n71lyVZR09UTTODzwRMTYaZ6bfenPsE+5OacQL/arvsVAqHaP52Aal9lIvirG\nKJQ+gQXCgpv7hLu+ALTkuF323HlUAdxLNzxmJMpSTrDlNJkm+GoaeoR2yelr\nXElBmAUBmDyFzdU/eIFteike6g2DEtSBc4bZ8cLLfeiNSXD5tDleLEnDhGNI\n5S/+NmfVOGT9kza7oUlxExu6vQPMY0M8taw/HI6f58E+TAdL7vAKSMtfL7hK\n0dnFb82eFBtf8ddIID24HluAdCNfq3qo4ydRoaRcuZHI7kPB9B+awaH5MI1L\nFTrH0gXo/2eMNRFgcI6z2L1fq/F3qIbKI8EziH7JA35kU/jchndbF31wDiOj\njvTk\r\n=fTRW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"utils.js","gitHead":"bbdf511b17dfe887718bb2e588af829680cc8013","scripts":{"test":"echo 'not implemented' & exit 1","eslint":"eslint ."},"_npmUser":{"name":"streamr-dev","email":"devtools@streamr.com"},"repository":{"url":"git+ssh://git@github.com/streamr-dev/streamr-test-utils.git","type":"git"},"_npmVersion":"6.13.0","description":"a collection of Node.js utilities for dealing with asynchronous behavior in jest/mocha tests","directories":{},"_nodeVersion":"10.17.0","dependencies":{"p-event":"^4.1.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^6.6.0","eslint-plugin-import":"^2.18.2","eslint-config-airbnb-base":"^14.0.0","eslint-config-streamr-nodejs":"^1.1.0"},"_npmOperationalInternal":{"tmp":"tmp/streamr-test-utils_1.0.4_1573647769373_0.8722436953269361","host":"s3://npm-registry-packages"}},"1.1.0":{"name":"streamr-test-utils","version":"1.1.0","keywords":["testing","streamr","asynchronous"],"author":{"name":"Streamr","email":"contact@streamr.com"},"license":"Apache-2.0","_id":"streamr-test-utils@1.1.0","maintainers":[{"name":"streamr-dev","email":"devtools@streamr.com"},{"name":"harbu","email":"harbuzen@gmail.com"}],"homepage":"https://github.com/streamr-dev/streamr-test-utils","bugs":{"url":"https://github.com/streamr-dev/streamr-test-utils/issues"},"dist":{"shasum":"70c6bbf95b0e8a7b12c16d292ef035de0c40c816","tarball":"https://registry.npmjs.org/streamr-test-utils/-/streamr-test-utils-1.1.0.tgz","fileCount":6,"integrity":"sha512-+taHj07QRwL4WlfGvrcJKQ1ZOKrbiBPSy7dMtOHathuFznnrbPzihepWgOhVoN2Fe86a21VeUSdttv8rO/t1YQ==","signatures":[{"sig":"MEUCIQDrGvlEWwrmYZQous5p4k5xW2lm6rjEIMTCCbu9VZpsqgIgSVYeV4D+w8RDzJDPTI9SNzcCmcB9CdSxKlrJBeEQM4g=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":24116,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfjYtxCRA9TVsSAnZWagAAmHwP/0zDSJquVmuZIDUII4jQ\nlx9yqOAZ4gF+1gPlVO1YkkYfgcMKvwTI35Sqfl0MkTjlqxSJYlfGEC5gdsFD\nciKLskL+EFytobRyeX0TfLbQf1my/Mb1rtYPQuXaltm0YEWKxJHkfNKPCSlg\newPHEC4e+KbcijdZKg/zOkW3hTwWENmwbscnkKNrHoGI8VhZSLm9BDupGJi9\ncZsLyGEnTUjWVPNsmQsH6j+oKejuY3pgcgNSEl1CTJhMGk55vsemjdCtiHCO\nGT5eqpIyfJjBEk8+JCrWnHUTt2Mf9YYRdYz3NOsN5pY+nQvCXJGoBQSWDMLQ\ncj0ttKAsrubxCmt//ruw0eBj0gMxov8ZBCPaQPTTo06fwdf4qCPVV8pY5iNV\nVDLACNZdgkYjcItXdm+KOCxh0yM3xoVFmyBTqwEFOQp8f1haJ0NVMzvGlk1y\njZcG7dF5hQGddYATXn0No1HXbSClhRj2HGFQkwcUn6RLBG9hIbgizUvy93zq\nuVcuRSZ1ROxtIvXi9sohMkQRLlJM5U0UvptFPgH0tQ8+TV82rq8iSlMeUTLg\nKI9oMePNn9uYMrADJI+kMdJiz/ZRBOV1ldu9edxnuCRCMA0DJr5K9qTB7RAt\n3XGiIFdMPHXd6jtJv7Pifn7zjD5fKnxgFkRjYljwLxPgltjfBCE0Ga5Z8Lbm\n2Wg/\r\n=NnoQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"utils.js","gitHead":"d5705e2313d812b4eb13fd5b947c93fa904ba3ce","scripts":{"test":"echo 'not implemented' & exit 1","eslint":"eslint ."},"_npmUser":{"name":"streamr-dev","email":"devtools@streamr.com"},"repository":{"url":"git+ssh://git@github.com/streamr-dev/streamr-test-utils.git","type":"git"},"_npmVersion":"6.13.0","description":"a collection of Node.js utilities for dealing with asynchronous behavior in jest/mocha tests","directories":{},"_nodeVersion":"10.17.0","dependencies":{"p-event":"^4.1.0"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^6.6.0","eslint-plugin-import":"^2.18.2","eslint-config-airbnb-base":"^14.0.0","eslint-config-streamr-nodejs":"^1.1.0"},"_npmOperationalInternal":{"tmp":"tmp/streamr-test-utils_1.1.0_1603111792503_0.04121760978463129","host":"s3://npm-registry-packages"}},"1.1.1":{"name":"streamr-test-utils","version":"1.1.1","keywords":["testing","streamr","asynchronous"],"author":{"name":"Streamr","email":"contact@streamr.com"},"license":"Apache-2.0","_id":"streamr-test-utils@1.1.1","maintainers":[{"name":"streamr-dev","email":"devtools@streamr.com"},{"name":"harbu","email":"harbuzen@gmail.com"}],"homepage":"https://github.com/streamr-dev/streamr-test-utils","bugs":{"url":"https://github.com/streamr-dev/streamr-test-utils/issues"},"dist":{"shasum":"8c31bb1c3455e95327accab587fe0af80c49a9dd","tarball":"https://registry.npmjs.org/streamr-test-utils/-/streamr-test-utils-1.1.1.tgz","fileCount":6,"integrity":"sha512-uGJ72c4H3oqyCx97aM9W8iweBQfkfXTVkt0Rahkidus8nFPAwrfReViMBovVrY7g6M3EZaTrJruxTY6HsFS4Rw==","signatures":[{"sig":"MEUCIB8zj0vzsWLuVkogFzlXmKBe4FAi/aICA8tGgV2J0WTXAiEAvpYyLBPdD8BM7L9YWnA/kgfO9ze6D7EXXLwKbz7p1P4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":35440,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf25gACRA9TVsSAnZWagAAqsEP/AshwHBBPRC5Mj2s7Wgx\n7XaFpkl/arkPFvPfr6Lt74HHpzPm69JjDyc/VQ0q2WM/cRGRprzMhrAU07vh\nEvd3eJx3yfSc2pFXrYg1VqpbG2vD3CWmBjH+KJf31oirJKeosOeDONagEQan\nZpcCfxS2UX8CaMasYfMjlO3A0VIZMDlFumyKwtqsFWnrv7yYyqQdUgiPa+zv\nPS7iD4JXg3+vyITdJE1ZZQNoEwL8g7HtKLGHvp1bx+crmk+NJzrwAPiBA0z0\niHQCqewI8K4z/fXhLrSmryId0F3z7RJwGCraxbfzXWN3/tjsBsyKFnT/C+ET\nQbsRjotAEWrSzoRNHrEz/oZc0+I7AQdOWVUm0Ohjp8s3Dh1LzokAnTHZcm8Q\nPXqsCepJQmkLYhzExmtANZouJmNo5u3WkIyywacgEWSVB349bq01o8aAvar+\nNCLpCTwZAA12UzrGNtZeleLz/CSoYYiGHgt+SVpuz7GcpqiI+qLNmty40Eae\nIDsClc5HqaLsgmnRm4ikUrGZ+4Dfdk86SqCXkI8TAJF1uQZW1zpkibczhGzC\nsisVRRlfQPji7wQ0vTyG6SUY+REtF4eLbWQ3ujFZGjG/TptjyNpXuRhuqS4m\nqfRvDaJDs6/XVE45vWWMDghW80soglW4KAqt5Oxrj4Kn843hzRoCG9sURmSm\nCQnl\r\n=NlQx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./dist/utils.js","types":"./dist/utils.d.ts","gitHead":"ffd5888cdb305d7f9e6c9887d52377aa3f8603ec","scripts":{"test":"jest","build":"tsc","prepare":"tsc"},"_npmUser":{"name":"streamr-dev","email":"devtools@streamr.com"},"repository":{"url":"git+ssh://git@github.com/streamr-dev/streamr-test-utils.git","type":"git"},"_npmVersion":"6.14.9","description":"a collection of Node.js utilities for dealing with asynchronous behavior in jest/mocha tests","directories":{},"_nodeVersion":"14.15.0","_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","ts-jest":"^26.4.4","ts-node":"^9.1.1","typescript":"^4.1.3","@types/jest":"^26.0.19","@types/node":"^14.14.14"},"_npmOperationalInternal":{"tmp":"tmp/streamr-test-utils_1.1.1_1608226816494_0.18626982233900868","host":"s3://npm-registry-packages"}},"1.2.0":{"name":"streamr-test-utils","version":"1.2.0","keywords":["testing","streamr","asynchronous"],"author":{"name":"Streamr","email":"contact@streamr.com"},"license":"Apache-2.0","_id":"streamr-test-utils@1.2.0","maintainers":[{"name":"streamr-dev","email":"devtools@streamr.com"},{"name":"harbu","email":"harbuzen@gmail.com"}],"homepage":"https://github.com/streamr-dev/streamr-test-utils","bugs":{"url":"https://github.com/streamr-dev/streamr-test-utils/issues"},"dist":{"shasum":"3aa5ef5f29785ecb89e5aa1ff64ba8af75d8923f","tarball":"https://registry.npmjs.org/streamr-test-utils/-/streamr-test-utils-1.2.0.tgz","fileCount":6,"integrity":"sha512-oVs85qoxO7mehPPj+0SETVu5LrMvCeTFiJuTK9P47uRrZ2NJjflGQgDULJbGbCsg4csJ1K9j/7Jxi7ve/qBvWA==","signatures":[{"sig":"MEUCIGQ/QBMQmyF5N4j89kt+f4RMd87tk9jSSEDt9QYkj7YJAiEAjDSFeQULE0ua8Uon8eqvZXG7DLVE4lVAxXF6phFB2tc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":36103,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf3HteCRA9TVsSAnZWagAAeCMP/3QYeWYINjZedITUTkoI\nqmqEx0CqJ1YODzDqpeUAEDzY3+wOMyujTngfsMJ+ZxV5Fh+XJnD87VhuDn0R\niakmcbNzY7tBsa5COYXiRgbe+GSCKbju0mDmfKZQfY62RxPnbfN7HCKKStVy\n7Au1O+rVo5MTxLFb3tCPnyjCaS/NhOWMmXLh8N1tPDitkiO+FNB5JUDhgJsN\ntorl5+47GuBGifzhCWS/EKQljju5HaEsuqIPRMAK6JykSFfszhK48DFIAPMF\n3xxcjkLuXH16xbdr4h0GFL09ug6rv7jbTeuKy7dRZoDzQEdncIf72IBUa5PJ\nGk+dbGmCLHQ4IuXDc/wF40XWNXMxuA9d+ZkHV8hSYRRBwHeAJlfimYCAIrvZ\nUglw7qm10ZDJOdkjFLMlOKfYWFqHdcL3kEmAapqEZPIgt36W0fWUtt+VL8OI\nAzgKLqw/Pv1s94h89An0uE5tuKE7zTfsq3UVnPWmW64FifpTqGyO3JucY5cM\nMOVoGOjlK89fWttvfr3kLgK4ZnDUutFGP6rhEnSr5aGlmvJ3f3boXg9TXsxR\n2NRdIw1IUURz7lrQLOq121Miy3oDCExHgNDJLAtxhWw/n+qQ/D3cDHVj2El5\n9grNfe+bMj5kUn7I1AxhlVq4vfY4Oorzn/edBGoqsNMLKJroAtl8vsqsJvkW\nY64J\r\n=GeWB\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./dist/utils.js","types":"./dist/utils.d.ts","gitHead":"ef12d2fe6b6a4142b242175836ac22ae429d5691","scripts":{"test":"jest","build":"tsc","prepare":"tsc"},"_npmUser":{"name":"streamr-dev","email":"devtools@streamr.com"},"repository":{"url":"git+ssh://git@github.com/streamr-dev/streamr-test-utils.git","type":"git"},"_npmVersion":"6.14.9","description":"a collection of Node.js utilities for dealing with asynchronous behavior in jest/mocha tests","directories":{},"_nodeVersion":"14.15.0","_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","ts-jest":"^26.4.4","ts-node":"^9.1.1","typescript":"^4.1.3","@types/jest":"^26.0.19","@types/node":"^14.14.14"},"_npmOperationalInternal":{"tmp":"tmp/streamr-test-utils_1.2.0_1608285022515_0.5640111045876934","host":"s3://npm-registry-packages"}},"1.2.1":{"name":"streamr-test-utils","version":"1.2.1","keywords":["testing","streamr","asynchronous"],"author":{"name":"Streamr","email":"contact@streamr.com"},"license":"Apache-2.0","_id":"streamr-test-utils@1.2.1","maintainers":[{"name":"streamr-dev","email":"devtools@streamr.com"},{"name":"harbu","email":"harbuzen@gmail.com"}],"homepage":"https://github.com/streamr-dev/streamr-test-utils","bugs":{"url":"https://github.com/streamr-dev/streamr-test-utils/issues"},"dist":{"shasum":"6194b9a8d75bff4edd08e3c0becd33cf56c1e3c5","tarball":"https://registry.npmjs.org/streamr-test-utils/-/streamr-test-utils-1.2.1.tgz","fileCount":6,"integrity":"sha512-rQYAxqZ+LNuPlbZSUV7yuu0innb5BeERvEHsyRuxaYIGRyj0qq6u896IyNeH3Lgdk1A1fGUf6OCgW4/EFnJA2g==","signatures":[{"sig":"MEQCIAH7eTz3JtUkMNrbalR4fsSqHsGkcrKirMt4SES8vxEHAiA3vAXfw63O5gWXBFthXjcgOGjlEWNCvMgCefxkdUGjzQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":36793,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJf4xkICRA9TVsSAnZWagAAHzoQAI0hrmxye3cz+2xpJ1on\nU1i6GOsOvUMnGVEpXDa2tSQuBHZ/Wf8XwsP80Ssy/UjyDMSbmtS3dGbbGK92\nVv3AS3eaJNvoipB28J2EuiKLOkIThDiQGvkQHPVdcqaOVZPL7hhw5rKvyuaQ\n8F/ZUEmQDFSyg/Wgd5/JVk9ihqVIKMaRbHXK/YiW2FawQV0QsPL5Nuovf3UD\njIEKnfWsIDi8MjyuTEHsYWoHW7Ir0Mveeuao9UEqf56RAzw53m9Fim8r7kL6\nnLVo9rhqOS69LTBiTBdyxJ/h3KDX+gqY3Eihxz+pYolbEdGpWNAcsNesEJS3\nNgAUMxgcZUOr20ERMz/OVfeesbzS+3jfE6mTeivG5xllEqU7WJMismOEZwNN\nIWykw/VH1MMJD6uLMPBDqRgi/ZCW4HKvEsJvwLhAwHs/ei8CkpfK7hce/uPb\nGdTuiT3K0YH+l+eokGgoOQwgr3EMYSxzw551mj/ENQqRbQd9QDC8VT7+1HGf\nOCmvZFxECMBF9xlDeh6/aZCFgrv5c4jUW+Q0FQ2SnzNy2/6aYACRLg23LCLo\nqTl82slErj2yMinrshBRMGZOonao/Wzy+cVoyaJ9jjqTdN68NijNr6CbLo6B\nYLgUx/lfiPHevU/9F4vYmTMLnfccIGKA26kBLnSXYSfOFra/W7u8V+jEiCBc\n39Gp\r\n=mD8V\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./dist/utils.js","types":"./dist/utils.d.ts","gitHead":"3fad95d2c46bf42c80c0e79609c4b3294c74027f","scripts":{"test":"jest","build":"tsc","prepare":"tsc"},"_npmUser":{"name":"streamr-dev","email":"devtools@streamr.com"},"repository":{"url":"git+ssh://git@github.com/streamr-dev/streamr-test-utils.git","type":"git"},"_npmVersion":"6.14.10","description":"a collection of Node.js utilities for dealing with asynchronous behavior in jest/mocha tests","directories":{},"_nodeVersion":"14.15.0","_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","ts-jest":"^26.4.4","ts-node":"^9.1.1","typescript":"^4.1.3","@types/jest":"^26.0.19","@types/node":"^14.14.14"},"_npmOperationalInternal":{"tmp":"tmp/streamr-test-utils_1.2.1_1608718600400_0.44796717323217106","host":"s3://npm-registry-packages"}},"1.3.0":{"name":"streamr-test-utils","version":"1.3.0","keywords":["testing","streamr","asynchronous"],"author":{"name":"Streamr","email":"contact@streamr.com"},"license":"Apache-2.0","_id":"streamr-test-utils@1.3.0","maintainers":[{"name":"streamr-dev","email":"devtools@streamr.com"},{"name":"harbu","email":"harbuzen@gmail.com"}],"homepage":"https://github.com/streamr-dev/streamr-test-utils","bugs":{"url":"https://github.com/streamr-dev/streamr-test-utils/issues"},"dist":{"shasum":"970ed1509130a1480bf7af95caf800aa8a8a6d99","tarball":"https://registry.npmjs.org/streamr-test-utils/-/streamr-test-utils-1.3.0.tgz","fileCount":6,"integrity":"sha512-mSjtHIUyoVksv6OXVDMj5BecbEXCKfXRmSmiHav1kJLEHj4oE9cF1N0Ml1I3KL3ARw51+RloRnPtRSexg71m/Q==","signatures":[{"sig":"MEYCIQD9E7lc1+X3fXHnVBb4ktcrNQD7bPwZ8h5mdnXs+AFjrAIhAM/14vnJ0mMxCd9WhI85PfWONyhTgj7tGE7Cr6Mkvd4e","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":40169,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgDq1DCRA9TVsSAnZWagAA6BAQAKHzcUEDJKM77Id4LV1I\n00S0+eXEMzOjOydeAwm2E8IC3bsghurBEwd5VP81lbOoFERwxWVVs/dFxR4O\n0lD7zNhyZAb0uHG6jWnF++8HuEgArC5VezG3eUqqxStOuf/EJkGN4vod65NV\nHx+sbB+PqHHj3KmrQKCV1rgbDYv8dr4c4pV6jghP130eN3VffvyGkyjMTlvE\nQNVRzx2KrCJuxKV57iyGe4cQskW3KyE3EhwKHa/tNEuUw9QVay2r7Gnlhg8B\nDCfriQaYCjb7ujnvvhvckkUkZVjz7Z/ELtGzUnILdLaexslnVaNPxAgbVREH\nVl4S7BodBiEPO9Wb6vFqqzOkbJS4F7yWiYtQ5SGBZrNmgyLuYQlg7GrgDaIo\nqh0YqSQqa8wPdynnQ9NDs3O7zVrwFggC7hE3z1Kt6Lkbcr9LTqlakRtlUF5b\nE9WiQmMBb5wjk5vH/6tvKh2xVVurxAYv4ND/riHKZ1JgZpTQ2Iy3A/a49Yud\nzitW+Wpv8ycvAJroZcOcBlRG/kK8jtQb6jj6Bgt7SVV5xuZVOb/tS7hDw+Qm\nGW2+LjNxHBQQDaSFKlKdLICOct+8QtMeQfbLdVv2oa0c/v1lYUxR3ws2BGJU\nqFaoA6pKea3pNjfO5bb1ax3yNL5v5D0t+o7F5HH1XX4rPqFApm+lFrIe04uE\neQYI\r\n=iXle\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./dist/utils.js","types":"./dist/utils.d.ts","gitHead":"294b0011127043a445c74d195966086acae7eb22","scripts":{"test":"jest","build":"tsc","prepare":"tsc"},"_npmUser":{"name":"streamr-dev","email":"devtools@streamr.com"},"repository":{"url":"git+ssh://git@github.com/streamr-dev/streamr-test-utils.git","type":"git"},"_npmVersion":"6.14.11","description":"a collection of Node.js utilities for dealing with asynchronous behavior in jest/mocha tests","directories":{},"_nodeVersion":"14.15.0","_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","ts-jest":"^26.4.4","ts-node":"^9.1.1","typescript":"^4.1.3","@types/jest":"^26.0.19","@types/node":"^14.14.14"},"_npmOperationalInternal":{"tmp":"tmp/streamr-test-utils_1.3.0_1611574594794_0.782498003694917","host":"s3://npm-registry-packages"}},"1.3.1":{"name":"streamr-test-utils","version":"1.3.1","keywords":["testing","streamr","asynchronous"],"author":{"name":"Streamr","email":"contact@streamr.com"},"license":"Apache-2.0","_id":"streamr-test-utils@1.3.1","maintainers":[{"name":"streamr-dev","email":"devtools@streamr.com"},{"name":"harbu","email":"harbuzen@gmail.com"}],"homepage":"https://github.com/streamr-dev/streamr-test-utils","bugs":{"url":"https://github.com/streamr-dev/streamr-test-utils/issues"},"dist":{"shasum":"87b9e19f4850281610aab6332b95b181027bd5f8","tarball":"https://registry.npmjs.org/streamr-test-utils/-/streamr-test-utils-1.3.1.tgz","fileCount":6,"integrity":"sha512-3ol+bRQOSUz6Qjso0/VDBNzTxD9msizCOtsHgx7YqGYkxtIUSlGbsVtZh3JhBnnm53BNyaNHS74+N7Mjoa+w5Q==","signatures":[{"sig":"MEUCICwxI4qwJQ9hG93Afwjk2zyoLfdpQ4/OQ0ESLEYH4hSMAiEAxztm7oh4DABByNm2qIDYunIbfb70dXW4Nu+O6ajdZlg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":40062,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgJO/KCRA9TVsSAnZWagAA/PgQAJQ2Hs8auZsRsEIe5Uge\nM4dJzhlDJNjwQRfZo02XMrsfPDUyah/TrDg+IG0x2jGfak3FDZ4D3jPlj/Th\nYmnRjXkup6jUPEn+vsr+JLcX4JKvL/wUZu0LTdNkwCQ+c9QzaXZHGreSTHey\nFt996O7OqVu1R2zPHtw6MPC6X4167563Y4R8za/ROnP1rfx2TGaJgymP9hoq\nW24j2uE30RZOXr7FEitXESvzIDZE4i/yMJOgDtXnj5DVCWiuUrrtHlZtobCm\nQAVgqfrhJDTvd0Mz6djZPBPODwAbDAWS1rTSgtQp9TsIg9JxelW1dK8Z3KZ8\nmOwyXnG/j41p/zKOE01B72bQNAT2eYK7DbDEc1M0AkWzAVEwCoc1ETN1xQn7\npclwPM0gWOKh5UxnNpp/unfZzxOLvXNhGOHnGr9w1t3x6mYHK8Tk6p0OgBsU\nn4GY1f9WNksRI6Y97BYZdEcYRJ4qNFQ6LAvmHWfL78jqfN8Y1uZ32ksGsSa/\nk/rekZxcVx/+pSQdLA/vvzeBYDgvmYqTguE9A5LSZFXBnLjVlt2LE9ZpxK0S\n0lRy2QNT35zZPB8VmCB0Pu1uK1zQZSrroD4vw7BhavEBhNN9IhwOq0wZW8aQ\nh17ycLPWHL4pakLncEtsywOS083iyDzeDklq77Fvkma9MOLB41PjO4rzqLyD\n3MXu\r\n=kigi\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./dist/utils.js","types":"./dist/utils.d.ts","gitHead":"b7ba196f95541837deb114ad08ce204c90ced214","scripts":{"test":"jest","build":"tsc","prepare":"tsc"},"_npmUser":{"name":"streamr-dev","email":"devtools@streamr.com"},"repository":{"url":"git+ssh://git@github.com/streamr-dev/streamr-test-utils.git","type":"git"},"_npmVersion":"7.5.3","description":"a collection of Node.js utilities for dealing with asynchronous behavior in jest/mocha tests","directories":{},"_nodeVersion":"14.15.0","_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","ts-jest":"^26.4.4","ts-node":"^9.1.1","typescript":"^4.1.3","@types/jest":"^26.0.19","@types/node":"^14.14.14"},"_npmOperationalInternal":{"tmp":"tmp/streamr-test-utils_1.3.1_1613033417828_0.6516190901920311","host":"s3://npm-registry-packages"}},"1.3.2":{"name":"streamr-test-utils","version":"1.3.2","keywords":["testing","streamr","asynchronous"],"author":{"name":"Streamr","email":"contact@streamr.com"},"license":"Apache-2.0","_id":"streamr-test-utils@1.3.2","maintainers":[{"name":"streamr-dev","email":"devtools@streamr.com"},{"name":"harbu","email":"harbuzen@gmail.com"}],"homepage":"https://github.com/streamr-dev/streamr-test-utils","bugs":{"url":"https://github.com/streamr-dev/streamr-test-utils/issues"},"dist":{"shasum":"59aa57383e6cd989679e93c0a47a8075b7083080","tarball":"https://registry.npmjs.org/streamr-test-utils/-/streamr-test-utils-1.3.2.tgz","fileCount":6,"integrity":"sha512-qYFJ9ra0FtTq3grn9uXTIST/vU91bxAswOMQX275KNdD7+Lu8Z0YRPr51fOdV6iE+kdrXUsPWbKvOS/6iCNBFQ==","signatures":[{"sig":"MEUCIA+3lRngP/iHGHdlqKCq45IOXhxFh7uyHHB7K607htRmAiEAkY7urwghVlb88HyqXzfravy7JxnPXNvgHawAuNxo6jM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":40268,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJghxaLCRA9TVsSAnZWagAAtOUQAJCfr8K48GgAhkat4U0M\nnlUdHiNmBJfpNOOg6u4/2eawWzYHYbmfSZAOdANs5Zt2hY5tTUIUzKrpVBl5\n0/QqQbUCUWlWw0aC7FBUDV7U9QDnrePNnBAsAoPYYoa81bl6eHUneuoEuFxD\njP0NsJBgrVEP8DAZNJ9725rrRyAPobQaZnQMufI3qEBwoa6uuBHM4FiTD7/J\nc2D4wK5k6534m16W/MuhlreXEzN4GaEQh46ZxfzYDOhZWJthfupG34hKaFU5\nHCc85TTM98A6E9Acj4pjGMtePJtrmAETJjD6KeFELXh+GTEQ8oOKcCbfZaus\nwAoXvhzzQOciIcfb2x6s35XiP1X/QZNqY+2JMv4edSbSzd0akqPJYDgX2N0P\n9RwrvEjpWAH30fG9zlkU1fpoatILHPDE75UvwDr9LLqs7UM8a9eMcZ93p54e\nyDe4emsNlSbDvMMjw7ug8T0mf3L+4lN4SRPjvAkJ7M4/NRbfKvxyilWpa1O/\nqRMzViskNJvnHY5DRQYXH79VGhDsVgk/nb4eCycJb1YhamYCJJH7gt6pgiGg\nd5usDc0EEH+5vuR/tuXsgklV8UjsG2bDA+ej+iP45abtMbS0EqjJ3MPQTZgA\n8BySz60Y3BKO+ak7Yw/TqQ9h8etWHDcggAZYDF8f2zms+Sr8nyRRuphQuTXb\nLA2a\r\n=19Bl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./dist/utils.js","types":"./dist/utils.d.ts","gitHead":"229d397611a44fcb06da41ae890ed1e2123709f1","scripts":{"test":"jest","build":"tsc","prepare":"tsc"},"_npmUser":{"name":"streamr-dev","email":"devtools@streamr.com"},"repository":{"url":"git+ssh://git@github.com/streamr-dev/streamr-test-utils.git","type":"git"},"_npmVersion":"7.11.1","description":"a collection of Node.js utilities for dealing with asynchronous behavior in jest/mocha tests","directories":{},"_nodeVersion":"14.15.0","_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","ts-jest":"^26.4.4","ts-node":"^9.1.1","typescript":"^4.1.3","@types/jest":"^26.0.19","@types/node":"^14.14.14"},"_npmOperationalInternal":{"tmp":"tmp/streamr-test-utils_1.3.2_1619465867050_0.44031498063589014","host":"s3://npm-registry-packages"}},"2.0.0":{"name":"streamr-test-utils","version":"2.0.0","keywords":["testing","streamr","asynchronous"],"author":{"name":"Streamr","email":"contact@streamr.com"},"license":"Apache-2.0","_id":"streamr-test-utils@2.0.0","maintainers":[{"name":"simppafi","email":"simo.santavirta@gmail.com"},{"name":"samt1803","email":"samt1803@gmail.com"},{"name":"kare","email":"kare.nuorteva@me.com"},{"name":"juhah","email":"juha.haavisto@streamr.com"},{"name":"fonty1","email":"mr.matto@gmail.com"},{"name":"hpihkala","email":"henri.pihkala@streamr.com"},{"name":"tumppi","email":"tuomas.koponen@streamr.com"},{"name":"timoxley","email":"secoif@gmail.com"},{"name":"harbu","email":"harbuzen@gmail.com"},{"name":"mariusz_io","email":"mariusz@mariusz.io"},{"name":"pzsavola","email":"petri.savolainen@spaceify.net"},{"name":"mmartinmo","email":"martin.moravek@streamr.com"},{"name":"juslesan","email":"santeri.juslenius@gmail.com"},{"name":"jtakalai","email":"juuso.takalainen@streamr.com"},{"name":"jwolff","email":"jwolff@isentropy.com"},{"name":"streamr-dev","email":"devtools@streamr.com"},{"name":"teogeb","email":"teo@streamr.com"}],"homepage":"https://github.com/streamr-dev/streamr-test-utils","bugs":{"url":"https://github.com/streamr-dev/streamr-test-utils/issues"},"dist":{"shasum":"f4b21436694a82eaaaa5665f6b4ac8acac21d3f8","tarball":"https://registry.npmjs.org/streamr-test-utils/-/streamr-test-utils-2.0.0.tgz","fileCount":10,"integrity":"sha512-b63bezAN0a8Lw9nJ4iMiwqpef8LEyxqFz/3ynQZHe68vjsDIOZQZpMasMapsefXrkepOFiHaRi+QdQLrkQZtlQ==","signatures":[{"sig":"MEUCIE57KZbZPLWDnWDARzI6W9tc3urEFED0wHZX60gP12rFAiEAu+QuzPjuUGKqqztGzJf4/7sXd5EYmp0jvQEp7QxM1kQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":66014,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg7V2XCRA9TVsSAnZWagAATvcQAIkp/NRQwwTaxvASK3l+\nqrEchNH9Z/UpfSDWDWbF8m0bca5wbIr0KLXM4BV3+svWWyxXKZRhORjVT8qK\n0G2zvQRmjHUM1GHr4+PelYzPooGPGc4UNUyGViYt2u8VY7VupTtOWMAXkuU/\nAI8hepmEEYmSyPmtMY0HcD1U227KsJ7nTwTfh/Dh9rLAv9cFfRe/gNE6HcAZ\nz95oj8Suo63YxDPmuRN3kHjdijVqxOdcidKFVBJpyXwissNLiikv4MAk49L8\nE+hpLwN04jRp+yJ1mObRfAvkAkFSdJsB3Ab1hatsafO/Ua9YW1MQzgRg8Jkq\nHP8V9PIqCPVXXDa3DypM0C83EUz/PVzZM5L9Fedp4NAzaeZAHnA7Ys265+qm\nxg1OgqOSTFi6gM5pbebdobvPoXfC2z247dHNuPvAidWqslFIyOeV/W6Op68/\nqf14CMeMPu9Vr9AM8qVezxnro2sCuNQ2Q6abcHzNaZP9YxVl3UI3AA52ylnL\nrRIkzUcsBVRqioDI2P8IvuneCX6PDvehJ8tnFXyGNhURdpG1gDmLQagwcZDW\noVGaHIvvZDVzrZGH0Nwc8g+MD4Notd2Evil2BFMOJspXu5tS6qR63On4Fobm\nFVWmnAghxjaYGk7xTwPpmzaM6HYZ+ziXWbyZRs1aMJ/QaL4+LMFCnkKBA3ja\n20As\r\n=Dxvl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./dist/utils.js","types":"./dist/utils.d.ts","scripts":{"test":"jest","build":"tsc","eslint":"eslint .","prepare":"eslint . && tsc","test-unit":"npm run test"},"_npmUser":{"name":"harbu","email":"harbuzen@gmail.com"},"repository":{"url":"git+ssh://git@github.com/streamr-dev/streamr-test-utils.git","type":"git"},"_npmVersion":"6.14.11","description":"a collection of Node.js utilities for dealing with asynchronous behavior in jest/mocha tests","directories":{},"_nodeVersion":"14.16.0","_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","eslint":"^7.26.0","ts-jest":"^26.5.6","ts-node":"^9.1.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@streamr/dev-config":"^1.0.0","eslint-plugin-promise":"^5.1.0","eslint-config-streamr-ts":"^3.0.1","@typescript-eslint/parser":"^4.24.0","@typescript-eslint/eslint-plugin":"^4.24.0"},"_npmOperationalInternal":{"tmp":"tmp/streamr-test-utils_2.0.0_1626168726774_0.1152549605809099","host":"s3://npm-registry-packages"}}},"time":{"created":"2019-07-29T13:00:57.785Z","modified":"2026-05-28T14:47:41.297Z","1.0.0":"2019-07-29T13:00:57.941Z","1.0.4":"2019-11-13T12:22:49.512Z","1.1.0":"2020-10-19T12:49:52.690Z","1.1.1":"2020-12-17T17:40:16.619Z","1.2.0":"2020-12-18T09:50:22.670Z","1.2.1":"2020-12-23T10:16:40.558Z","1.3.0":"2021-01-25T11:36:34.961Z","1.3.1":"2021-02-11T08:50:18.006Z","1.3.2":"2021-04-26T19:37:47.240Z","2.0.0":"2021-07-13T09:32:06.946Z"},"bugs":{"url":"https://github.com/streamr-dev/streamr-test-utils/issues"},"author":{"name":"Streamr","email":"contact@streamr.com"},"license":"Apache-2.0","homepage":"https://github.com/streamr-dev/streamr-test-utils","keywords":["testing","streamr","asynchronous"],"repository":{"url":"git+ssh://git@github.com/streamr-dev/streamr-test-utils.git","type":"git"},"description":"a collection of Node.js utilities for dealing with asynchronous behavior in jest/mocha tests","maintainers":[{"email":"henri.pihkala@streamr.com","name":"hpihkala"},{"email":"petri.savolainen@spaceify.net","name":"pzsavola"},{"email":"devtools@streamr.com","name":"streamr-dev"},{"email":"harbuzen@gmail.com","name":"harbu"}],"readme":"# streamr-test-utils\nA collection of Node.js utilities for dealing with asynchronous behavior in jest/mocha tests.\n\n## Table of Contents\n- [Install](#install)\n- [Use](#use)\n- [Best Practices](#best-practices)\n- [Release](#release)\n\n## Install\nIn your Node.js project run\n```\nnpm install --save-dev streamr-test-utils\n```\nto add this npm package as a development dependency.\n\n## Use\n\nThis section provides an overview of the utilities (functions) that this package offers. To dive deeper, check the\n[code comment](src/utils.ts) of a particular function.\n\n### Control flow utilities\n\nUsed primarily for waiting for something asynchronous to happen.\n\n#### waitForStreamToEnd\n```\nwaitForStreamToEnd(stream) => Promise\n```\n\nCollect data of a stream into an array. The array is wrapped in a Promise that resolves when the stream ends.\n\nExample:\n```js\ntest('test', async () => {\n    const stream = node.requestResendLast(...)\n    const messages = await waitForStreamToEnd(stream)\n    expect(messages).toEqual([\n        ....\n    ])\n})\n``` \n\n#### waitForEvent\n```\nwaitForEvent(emitter, event, timeout = 5000) => Promise\n```\n\nWait for an event to be emitted on emitter within timeout.\n\nExample:\n```js\ntest('test', async () => {\n    const [message] = await waitForEvent(node, events.MESSAGE_PROPAGATED)\n    expect(message).toEqual('something')\n})\n``` \n\n#### waitForCondition\n```\nwaitForCondition(conditionFn, timeout = 5000, retryInterval = 100, onTimeoutContext? () => string) => Promise\n```\n\nWait for a condition to become true by re-evaluating it every `retryInterval` milliseconds.\n\nExample:\n```js\ntest('test', async () => {\n    ...\n    await waitForCondition(() => messages.length >= 4)\n    expect(messages).toEqual([\n        ...\n    ])\n})\n``` \n\nExample:\n```js\ntest('test', async () => {\n    ...\n    await waitForCondition(async () => {\n        const rows = await sqlQuery(\"SELECT * FROM streams\")\n        return rows.length >= 10\n    })\n    ...\n})\n```\n\n#### wait\n```\nwait(ms) => Promise\n```\n\nWait for a specific time\n\nExample:\n```js\ntest('test', async () => {\n    ...\n    await wait(2000) // 2 seconds\n    expect(messages).toEqual([\n        ...\n    ])\n})\n``` \n\n### Convenience utilities\n\nHelpful functions for dealing with async-related matters.\n\n### eventsToArray\n```\neventsToArray(emitter, events) => Array\n```\n\nCollect events emitted by an emitter into an array.\n\nExample:\n```js\ntest('test', async () => {\n    const arr = eventsToArray(emitter, ['RESENDING', 'UNICAST', 'RESENT', 'NO_RESEND'])\n    await emitter.longRunningFnThatEmitsEvents()\n    expect(arr).toEqual([\n        'RESENDING',\n        'UNICAST',\n        'UNICAST',\n        'UNICAST',\n        'RESENT'\n    ])\n})\n``` \n\n### eventsWithArgsToArray\n```\neventsWithArgsToArray(emitter, events) => Array\n```\n\nCollect events emitted by an emitter into an array, including event arguments.\n\nExample:\n```js\ntest('test', async () => {\n    const arr = eventsToArray(emitter, ['RESENDING', 'UNICAST', 'RESENT', 'NO_RESEND'])\n    await emitter.longRunningFnThatEmitsEvents()\n    expect(arr).toEqual([\n        ['RESENDING', 'subId'],\n        ['UNICAST', StreamMessage.create(...)],\n        ['UNICAST', StreamMessage.create(...)],\n        ['UNICAST', StreamMessage.create(...)],\n        ['RESENT', 'subId']\n    ])\n})\n``` \n\n### toReadableStream\n```\ntoReadableStream(...args)\n```\n\nMake a `ReadableStream` out of an array of items. Any item of type `Error` will be emitted as an error event instead\nof pushed to stream.\n\n```js\ntest('test', () => {\n    const stream = toReadableStream([\n        StreamMessage.create(...),\n        StreamMessage.create(...),\n        StreamMessage.create(...),\n        StreamMessage.create(...)\n    ])\n    stream.on('data', (data) => {\n        console.info(data)\n    })\n    stream.on('end', () => {\n        console.info('DONE')\n    })\n})\n```\n\n### callbackToPromise\n```\ncallbackToPromise(fn, ...args)\n```\n\nConvert a function that has as its last parameter a callback of the form `(err, result)` into a Promise.\n\nExample:\n```js\nconst fs = require('fs')\n\ncallbackToPromise(fs.readFile, 'README.md')\n    .then((res) => {\n        ...\n    })\n``` \n\n## Best Practices\n\nIt would seem like the best order in which to use the control flow utilities is something like\n1. Simply await a Promise if possible & relevant\n2. `waitForStreamToEnd` if dealing with ReadableStream\n3. `waitForEvent` if dealing with events\n4. `waitForCondition` when there is no direct handle to the async-behavior \n5. `wait` if nothing else works\n\n### Try to avoid using `wait` when possible.\n\n- It is prone to timing issues which leads to test flaky-ness.\n- It increases test run time because we always wait for the pre-determined amount of time even if the required pre-condition has been met.\n- We often have to use quite large delays to err on the side of caution, increasing test run time further.\n\n### When using `waitForCondition` favor simple conditions\n- The utility doesn't provide detailed info on what went wrong; when a condition fails, you will not have much visibility into the \"why\". \n- Use a simple condition for `waitForCondition` and then later on in the test function perform proper assertions using the facilities provided by your test framework.\n- E.g. use `waitForCondition` to wait for an array to have elements in it. Then afterwards assert the contents of those elements.\n\n### Other\n- Usefulness of `waitForEvent` declines in the presence of multiple events from the same emitter with the same event type\n    - Consider bringing in `eventsToArray` or `eventsWithArgsToArray` to help\n- Notice that `waitForStreamToEnd` has two uses cases: collecting the data of a stream into an array _and_ waiting for a\nstream to be closed.\n    - In some use cases you may only be interested in waiting for the stream to end. You don't have to examine the\n    contents of the stream.\n\n\n## Release\n\nPublishing to NPM is automated via Travis CI. Follow the steps below to publish stable (`latest`) or `beta`.\n\n### Publishing stable (latest)\n1. `git checkout master && git pull`\n2. Update version with either `npm version [patch|minor|major]`. Use semantic versioning\nhttps://semver.org/. Files package.json and package-lock.json will be automatically updated, and an appropriate git commit and tag created.\n3. `git push --follow-tags`\n4. Wait for Travis CI to run tests\n5. If tests passed, Travis CI will publish the new version to NPM\n","readmeFilename":"README.md"}