{"_id":"@aragon/contract-helpers-test","_rev":"46-dc03ee1006c94ef311b3a7867e0fb4c6","name":"@aragon/contract-helpers-test","dist-tags":{"next":"0.1.0-rc.2","latest":"0.1.0"},"versions":{"0.0.1":{"name":"@aragon/contract-helpers-test","version":"0.0.1","author":{"name":"Aragon Assocation","email":"legal@aragon.org"},"license":"MIT","_id":"@aragon/contract-helpers-test@0.0.1","maintainers":[{"name":"ajsantander","email":"palebluedot@gmail.com"},{"name":"evalir","email":"hi@enriqueortiz.dev"},{"name":"gabrielg","email":"gabrielpk.18@gmail.com"},{"name":"facuspagnuolo","email":"facundo_spagnuolo@icloud.com"},{"name":"aragon-ci","email":"jorge+npmci@aragon.one"},{"name":"bingen","email":"bingen@aragon.one"},{"name":"izqui","email":"jorge@aragon.one"},{"name":"luisivan","email":"me@luisivan.net"},{"name":"bpierre","email":"hello@pierre.world"},{"name":"sohkai","email":"qisheng.brett.sun@gmail.com"}],"dist":{"shasum":"b5edaf7d44278a43ea7218f20dd34a0867cb5aa8","tarball":"https://registry.npmjs.org/@aragon/contract-helpers-test/-/contract-helpers-test-0.0.1.tgz","fileCount":24,"integrity":"sha512-LHyc3Sw2KlbG1IBXPzfRlp5dGrbIqXSi/uiCC92C6nV/2GA7+rtOBI4nXZVWr7OPAmzzq3eyDq6HxIpMhORySA==","signatures":[{"sig":"MEYCIQClnN3JSs0Ee4cqrUiO4Sj8IvMcrN3FKkSAYGg+Tb29GwIhANiiM3dIDjdOHEM3C7ea0AiegG+qYeZkEKaR/9EjFjzj","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27385,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeRF6iCRA9TVsSAnZWagAAPscP/iBr9fvDb48hy1LmrFyk\nbt/4rPcQXdxYuI68INTQvNim7IRoMpeLeyLK3gDyyqLNm/jBiLG53oov/0F0\nIbgaZUrBBFybWCkn8vTr5vFbJzDYSRixl2y2mEoM4yd2hX/vHikuqKK11YNZ\nz8sgUlCFu9aefA0gKN95kdWDWOSDITIhqq31jDbLEZpJS/+yGMP2sY24VfQs\nqKpED8vwszKJc5yJ03kLQ0TtpEKBT3bwiO1Vw6qce/OZyjTxrFfWZCMqHc0A\n52qURpgoXGIAOPYez1z70VCDQV5aB1R3AH6LKlTkS9js1vBztn2tTN+8zrJ1\nI1h1ZVdQrgtw3eYpEgIZEiPqe2GmdTOj9fle+px9WdABwJaXRek25i3e8ss4\nJUTtMQ8jAdIguz+nRsZIC2Fr+XYJ+RzK7gaczIbiTN/LEXYzJ9D46373kJ9Q\nobc60FCsYeq5AGKEl+y21gVOy7Zn9XW3jB7vkrfOmO4b4WOJL7XrNqdJ+JXm\nXjpvxl1BaRP94ofOUQW0lhhLv6AQDShVAlbWHADmMVJTnR7K1Ki7D2AFszKX\n/URLCzykztY3EuEcZNlN3WEK5CE29os0AMZ+BuXVlYrh2kHObiUzTmespeDr\nmMKOHBySR97tUOEjGH+XYw+IBYhYA7v39+J1DEX3de/SU6Fl0pgsCc2oU0lx\nzTbq\r\n=/tJ8\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"gabrielg","email":"gabrielpk.18@gmail.com"},"_npmVersion":"6.13.4","directories":{},"_nodeVersion":"12.16.0","dependencies":{"web3-utils":"^1.2.1","web3-eth-abi":"^1.2.1","ethereumjs-abi":"^0.6.4"},"_hasShrinkwrap":false,"peerDependencies":{"ganache-cli":"^6.0.0","solidity-coverage":"^0.6.2"},"_npmOperationalInternal":{"tmp":"tmp/contract-helpers-test_0.0.1_1581538977781_0.05485410661375667","host":"s3://npm-registry-packages"}},"0.0.2":{"name":"@aragon/contract-helpers-test","version":"0.0.2","author":{"name":"Aragon Assocation","email":"legal@aragon.org"},"license":"MIT","_id":"@aragon/contract-helpers-test@0.0.2","maintainers":[{"name":"ajsantander","email":"palebluedot@gmail.com"},{"name":"aragon-ci","email":"jorge+npmci@aragon.one"},{"name":"bingen","email":"bingen@aragon.one"},{"name":"bpierre","email":"hello@pierre.world"},{"name":"evalir","email":"hi@enriqueortiz.dev"},{"name":"facuspagnuolo","email":"facundo_spagnuolo@icloud.com"},{"name":"gabrielg","email":"gabrielpk.18@gmail.com"},{"name":"izqui","email":"jorge@aragon.one"},{"name":"luisivan","email":"me@luisivan.net"},{"name":"sohkai","email":"qisheng.brett.sun@gmail.com"}],"dist":{"shasum":"14abd96ab74739577754ec32a282c4c5abdcad2e","tarball":"https://registry.npmjs.org/@aragon/contract-helpers-test/-/contract-helpers-test-0.0.2.tgz","fileCount":24,"integrity":"sha512-J9uUIoXaiLJOvtVS1X7tBiKqbiwduktZkxzfFWkbYXbfFqpmiW5fPpdrYqjOg+/+Iuwj5jjeqYL5zV6MIX+vYg==","signatures":[{"sig":"MEUCIA/VrmCdvgThsvbfvtk6wDrKTP6BEK+/4d++KiBaId0/AiEAhYsSYBTU/U4MGiHU/+mJp4tB9CPJ6d2qV6jC6ulGzws=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27389,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeSuArCRA9TVsSAnZWagAAPSQP/0ATwskTe1+6fdSy4AqS\nPDIX2bx3VfHvmj56jbhcbO4EYDmobIgr4estjU0vZA0QaAR9PlQfjAXf73ZH\nat3VYp1OLn8KiQhGhDY/72s1WRmDmihGAuliOMATLJqGEIkd63/xPpABZLgL\ncsIvyDZeNe3kJpEMYwDJhemlrkhH2+GuAFVoWqyIDx2BFxH5+CYfNaPFcwq8\n9fHR88TS/3ZAaq1Xw78MucInTCp/gN7HnC0U2gtkN4xqAfrrP/7s02YS7jFu\nwJxKhTLnMZYlNiqxdXa2pPXTbxhB3GPFfM5ropQNxIXr0PI8LwG2y0rJ9Ih0\nJszVjFjU4mkyBEM9P4aTHQGBEPpBzY1CMvcrVOlfcZZmb0m67x/a8Qxg809Z\nQ5vR+TCKqUHN1ZoA09bUkmDqxBVNQNblVdgzGeAXA8X7eDp9xl6GHHgQbOzv\nIzKAp3wKPsY+LCtD/nFNvBeb2vmTAsxU/S8STr++eBtOuQNIska7nnYMniNo\n/4EtWQnyDsvOUsLHgd26H8On6k/41Q8ncQgR+MKWFAy0MDFtAUzGl32UmX3C\nIuaLBzpCil1IZFC8ybiDbg+dm6etCQwEtNQvGG5ZTNTfiHc04rkl2r/thyVo\nWdvd4TOanmB17NjFcxWVKv0em+Sgr9OEqWIe1BTGDIsgsDP1SRDhPH7TCaR0\nMUxR\r\n=uoL9\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"gabrielg","email":"gabrielpk.18@gmail.com"},"_npmVersion":"6.13.4","directories":{},"_nodeVersion":"12.16.0","dependencies":{"web3-utils":"^1.2.1","web3-eth-abi":"^1.2.1","ethereumjs-abi":"^0.6.4"},"_hasShrinkwrap":false,"peerDependencies":{"ganache-cli":"^6.0.0","solidity-coverage":"^0.6.2"},"_npmOperationalInternal":{"tmp":"tmp/contract-helpers-test_0.0.2_1581965355389_0.18355149970405948","host":"s3://npm-registry-packages"}},"0.0.3":{"name":"@aragon/contract-helpers-test","version":"0.0.3","author":{"name":"Aragon Assocation","email":"legal@aragon.org"},"license":"MIT","_id":"@aragon/contract-helpers-test@0.0.3","maintainers":[{"name":"ajsantander","email":"palebluedot@gmail.com"},{"name":"andy-hook","email":"hello@andy-hook.co.uk"},{"name":"aragon-ci","email":"jorge+npmci@aragon.one"},{"name":"bingen","email":"bingen@aragon.one"},{"name":"bpierre","email":"hello@pierre.world"},{"name":"evalir","email":"hi@enriqueortiz.dev"},{"name":"facuspagnuolo","email":"facundo_spagnuolo@icloud.com"},{"name":"gabrielg","email":"gabrielpk.18@gmail.com"},{"name":"izqui","email":"jorge@aragon.one"},{"name":"luisivan","email":"me@luisivan.net"},{"name":"sohkai","email":"qisheng.brett.sun@gmail.com"}],"dist":{"shasum":"92da62e348825e89b0c941fcf6d5db6fe643a64b","tarball":"https://registry.npmjs.org/@aragon/contract-helpers-test/-/contract-helpers-test-0.0.3.tgz","fileCount":24,"integrity":"sha512-WP5VurPSXxNYmsgoefggyBhp+jDsK14G8UKpWGZvG606SHzM13mI2ZcYpCX8R/E6xeseIEVszbQN6BLqEkR+Ng==","signatures":[{"sig":"MEYCIQC55iyDhEjzNAMcg7pt0Eq9r7BFq36TNYEXH2ybBXIukAIhAJYfimFn8ZTG14iZ2eepPIXNWFrLKZJwjzYt/ymiPRfm","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":27387,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJezqOvCRA9TVsSAnZWagAARIUP/jNCVJAZvG1AkhOf6nN+\n6EZpF0j9oKgtfsZQ0tuMZBg+ULumP7diEzPe7fvO87oT/oToCa2Rr2R5H0DD\nFiUfXBNuJjMzrYpTpF3TsC7c6CeeukXb4fCMAa28Nsp1crJnIdHvK9nHdyDM\nbsx0q3gQ43Uwg4HhMwr7brFSJ4yHCzFLA4HwRaf+qBgUI655eq+a+x6wdk+m\nYZbhyjLqOaUpurp4qtgb4nE0HS9WSUDb+pDrCtXYfsRkOTxdTTpl5uTZXHaA\nEPVVfqbih7QXVJOmmSij/99zOHDbuosanOEbzF5BB30UseYdJQCTc06/xwVe\nhXjU4hR9qAn9PPA4fKkSOA/JVDpzQIJkWam6Jb78T1WYeqa5Rf6k84WdHzOm\nBfxChYkgqTQpOlJ4z3SV2ryU2vKDoYipzOJW3kiSsdiDbgy8E+i3a4khKQ4E\n7hFdUvxloOw1FFiJeGU0HXR8JODIKvSxkFeIzQleXDsrKLvNpcTiJZh0xepv\nQSKygAcPqJgSJI8M40Ltao4FHoa9jVdDUMa7WqYfrY1TwqzSH+24mxmBXK+T\nTGCbLofzvwAcO8uP3w+5mBAZLMLiR9kyL2Vs8ULyX/ZBKKfDJlYejFtet/oJ\nFARWNzMABE2Icrxy0pjfeUWzzGChRb/GKNNFXOB0FD4NfPMTSekxhDrlVZL9\nfRfQ\r\n=Ih9s\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"bingen","email":"bingen@aragon.one"},"_npmVersion":"6.13.4","directories":{},"_nodeVersion":"10.15.0","dependencies":{"web3-utils":"1.2.5","web3-eth-abi":"1.2.5","ethereumjs-abi":"^0.6.4"},"_hasShrinkwrap":false,"peerDependencies":{"ganache-cli":"^6.0.0","solidity-coverage":"^0.6.2"},"_npmOperationalInternal":{"tmp":"tmp/contract-helpers-test_0.0.3_1590600622571_0.6569273116991865","host":"s3://npm-registry-packages"}},"0.1.0-rc.1":{"name":"@aragon/contract-helpers-test","version":"0.1.0-rc.1","author":{"name":"Aragon Assocation","email":"legal@aragon.org"},"license":"MIT","_id":"@aragon/contract-helpers-test@0.1.0-rc.1","maintainers":[{"name":"ajsantander","email":"palebluedot@gmail.com"},{"name":"andy-hook","email":"hello@andy-hook.co.uk"},{"name":"aragon-ci","email":"jorge+npmci@aragon.one"},{"name":"bingen","email":"bingen@aragon.one"},{"name":"bpierre","email":"hello@pierre.world"},{"name":"evalir","email":"hi@enriqueortiz.dev"},{"name":"facuspagnuolo","email":"facundo_spagnuolo@icloud.com"},{"name":"gabrielg","email":"gabrielpk.18@gmail.com"},{"name":"izqui","email":"jorge@aragon.one"},{"name":"luisivan","email":"me@luisivan.net"},{"name":"sohkai","email":"qisheng.brett.sun@gmail.com"}],"dist":{"shasum":"56d4132affaadcebc59db508c483d67e81da93cc","tarball":"https://registry.npmjs.org/@aragon/contract-helpers-test/-/contract-helpers-test-0.1.0-rc.1.tgz","fileCount":36,"integrity":"sha512-6oOaOGsVvAJeo23eKw3Xs+dfQE27dz6sFrHYpVyKuyc6l1D8AZ0iktvJNQ7EgWRSC+Ms2mdC6LpSc6M0BV7vCg==","signatures":[{"sig":"MEUCIQCcWFNT7UpUIYMaiNpJ6Gin7nWR5uKJ/KjKaY5yh+o7nwIgLm89TznHr36DYGDY9E4CsrEDgCZWLNuhgi+/+pjLXoc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":49255,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfDzTZCRA9TVsSAnZWagAAr6wQAIScGF/ctVWmcFVG4/jv\nGEqHg9K/IG/lIgg1foLyZlhVH02vskSv9I6AQiLyCSOTADQpVeh58BhId64D\nIEgG32C0LO2Zt8i5sQeIiPh4DuCnHsaupfYsRiOCi8eOl60APrpY2JZDLbHj\n5TNNBY2dmYSPDlk8oqhtW3FBMFr8kwSIWTnZNCHQ2IX/5IfzAlMEO/FGD+hW\n2TD+34Y8l2/PYySiTRoFa8NGcxxiQ4rf1tXbBo6r1XrS/pUEs81w/8qH/4YW\n2qAIMCD6AQ9Xj7QswkwgwusO/fBAxOq//rcJ5QjMtqRxHLNo8HIL/wKE4oSu\nBj3V8gDgVQ+8Bhlgpvt9ksMEGgt1ITPEB54jij8RbB0ALKyL3KfeQye44LWZ\nmqL9Whi3JH1CFniJuZsja+TifIk9QeyrHDYD5aYu25JNP3nDtQ743wHpk+YN\nJizbgxs+Erukh/Vqali2skSbny6b5Zi5lPPjzRU/Zh3snH0LESG2iPfQ7aQh\n/wEnrFuoTnldr3bcTiRaLvZYtn+sPMhUdlSzwj7NioZ7eVLYvmj04O88c760\nzODGl9PzXIhZlJOnKGVKTXvoNkJtHEttqA6fPfbXyp48b10aca1VQ4rnhcRH\nRpygTgXjzz0GJ3uzMYUkcBcjK4ef1xDBKMrpyRbgKzmkwdeXEku5IW31dAO8\n8mm7\r\n=osxo\r\n-----END PGP SIGNATURE-----\r\n"},"main":"src/index.js","engines":{"node":">= 10.0.0"},"scripts":{"lint":"eslint ./src","test":"npm run lint"},"_npmUser":{"name":"sohkai","email":"qisheng.brett.sun@gmail.com"},"_npmVersion":"6.13.6","description":"[![Status](https://img.shields.io/badge/stability-stable.svg?style=flat-square)](https://nodejs.org/api/documentation.html#documentation_stability_index) [![npm version](https://img.shields.io/npm/v/@aragon/contract-helpers-test.svg?style=flat-square&colo","directories":{},"_nodeVersion":"10.15.1","dependencies":{"@aragon/os":"^4.0.0","web3-utils":"1.2.5","web3-eth-abi":"1.2.5"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^7.4.0","prettier":"^2.0.5","eslint-plugin-node":"^11.1.0","eslint-plugin-import":"^2.22.0","eslint-plugin-promise":"^4.2.1","eslint-config-prettier":"^6.11.0","eslint-config-standard":"^14.1.1","eslint-plugin-prettier":"^3.1.4","eslint-plugin-standard":"^4.0.1"},"peerDependencies":{"chai":"^4.2.0","web3":"^1.0.0"},"optionalDependencies":{"@aragon/os":"^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/contract-helpers-test_0.1.0-rc.1_1594832089221_0.23802287908701514","host":"s3://npm-registry-packages"}},"0.1.0-rc.2":{"name":"@aragon/contract-helpers-test","version":"0.1.0-rc.2","author":{"name":"Aragon Assocation","email":"legal@aragon.org"},"license":"MIT","_id":"@aragon/contract-helpers-test@0.1.0-rc.2","maintainers":[{"name":"andy-hook","email":"hello@andy-hook.co.uk"},{"name":"aragon-ci","email":"jorge+npmci@aragon.one"},{"name":"bingen","email":"bingen@aragon.one"},{"name":"bpierre","email":"hello@pierre.world"},{"name":"evalir","email":"hi@enriqueortiz.dev"},{"name":"facuspagnuolo","email":"facundo_spagnuolo@icloud.com"},{"name":"gabrielg","email":"gabrielpk.18@gmail.com"},{"name":"izqui","email":"jorge@aragon.one"},{"name":"luisivan","email":"me@luisivan.net"},{"name":"sohkai","email":"qisheng.brett.sun@gmail.com"}],"dist":{"shasum":"94e4aef90439ef49532fe620bf7985eafa99cafb","tarball":"https://registry.npmjs.org/@aragon/contract-helpers-test/-/contract-helpers-test-0.1.0-rc.2.tgz","fileCount":37,"integrity":"sha512-YsKBFRNkAfWQdA2jd1fsg65w/fDlodCH4O3UiVRya61KQbtgFxM9jB4zSVJi9sgFZ5keUcQqQP/reTuqjtSbGQ==","signatures":[{"sig":"MEUCIG/ek/AvckCKWb57zGxRecRLjUE8WPoOQ82hrq36z8nnAiEA5QR0/uULFnZIYgddMp4h5oVI5pP53xfiWXJ8thZv2sQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50057,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfEMHNCRA9TVsSAnZWagAAftkP/1hqq0sJcFn6cHX1DX6A\nISkXNOylRoySLF+phyNivTlmmAV2rs35ErqQ0dl6+VFTfcTkZ6C/vZVZQLsl\nbjkqghSQAfiUfqcGTXkOqXG6TjgMMpJ05iBHmVAav+v60k3WIex2FYZn+nrc\nI4nju5FozY/1fQOUSKOAHiGeVqr0FUHc6niHdzQ82JLO2gwpIWIlU8Ft2EjU\nHpejSQ/G2WCyF0LouF7na6vtoTMgSrr+jlNiEm7PSLJajmM1l1+Bk55MlYwq\nPyEUF7e4mCtAweYaxKItXXjvR5XuN5+141lyfLzyXTUXZJ7Cx7Htq+v4nqm3\nlkkyZYR4KZm4U8AdyfXECYTHIDpgmHz+Sw8DTLTc16gFzYRh7NvvsgT4KFoG\nHAp2JmneQ1psseaG1WTjp+e3G6RO1xmDP/xqXPhe8TuP7p1ElQlrSfLEUuv4\nYCd8/Wr6puayYP+kyVhdTJvJhxuWgT2xxwcgqBeZ/T5J597rdA94lDFjZnvV\nrat7jC0eUpPQpxs6+u/v6dGF8sUQL3oIBF/eH89LCf/NtokGh5162mC4eY+E\njj+sE+wqe6s/JqQxyW1xGXniWciDqQFs1hPJODhOcBP2fgT8DKcnpdHasPrX\nm4MkAH63jtjvozmnrKKGnA3bgPg595Ub1fD3rw6oC/84Hegwx0w/ezWzgcHW\nD8Zd\r\n=n2Uo\r\n-----END PGP SIGNATURE-----\r\n"},"main":"src/index.js","readme":"# Aragon test helpers\n\n[![Status](https://img.shields.io/badge/stability-stable.svg?style=flat-square)](https://nodejs.org/api/documentation.html#documentation_stability_index)\n[![npm version](https://img.shields.io/npm/v/@aragon/contract-helpers-test.svg?style=flat-square&color=lightgrey)](https://npmjs.org/package/@aragon/truffle-config-v4)\n\nTest helpers for both generic Solidity and Aragon-related smart contracts.\n\n> 🛠  This package is designed to be used in a [`web3.js@1`](js.readthedocs.io/en/1.0/) and [Truffle v5](https://www.trufflesuite.com/docs/truffle/overview) environment. If you are using [ethers.js](https://docs.ethers.io/v5/), you are likely much better served by [waffle](https://getwaffle.io/) which comes batteries-included with most of the [assertion matchers](https://ethereum-waffle.readthedocs.io/en/latest/matchers.html) you'll need.\n\n## Quick start\n\nInstall with `yarn add --dev @aragon/contract-helpers-test`.\n\nIn your tests, you'll then import these utilities like so:\n\n```js\nconst { bn, getEvents, MAX_UINT256, ZERO_ADDRESS } = require('@aragon/contract-helpers-test')\nconst { assertEvent, assertRevert } = require('@aragon/contract-helpers-test/asserts')\nconst { newDao, newDaoFactory } = require('@aragon/contract-helpers-test/aragon-os')\n```\n\nA number of contract mocks are also accessible through `@aragon/contract-helpers-test/contracts/` and may be useful for testing Aragon apps or other generic smart contracts. More documentation on these contract mocks is available in the [`contracts/`](./contracts) subdirectory.\n\n## API\n\nThe test helpers are grouped into several main exports:\n\n- [`@aragon/contract-helpers-test/`](#generic-utilities): generic utilities for on-chain interactions\n- [`@aragon/contract-helpers-test/asserts`](#custom-assertions): custom assertions for on-chain interactions\n- [`@aragon/contract-helpers-test/aragon-os`](#aragonos-utilities): aragonOS-related utilities\n- [`@aragon/contract-helpers-test/aragon-os/asserts`](#aragonos-assertions): aragonOS-related assertions\n\nFurthermore, the package also comes with:\n\n- [`@aragon/contract-helpers-test/contracts`](#smart-contract-mocks): smart contract mocks\n- [`@aragon/contract-helpers-test/scripts`](#shell-scripts): utility shell scripts\n\n### Global state\n\nThe utilities exposed from the test helpers will automatically detect and bind to an injected Truffle environment (`artifacts` and `web3`).\n\nHowever, it is possible to override this default binding or inject your own if none exist at the start of a file.\n\n#### `ctx`\n\nIndividual utilities containing a trailing `ctx` parameter allow you to override the environment specifically for that single call.\n\n```ts\ntype Artifacts = {\n  require: (name: string) => TruffleContract,\n}\n\ntype Context = {\n  artifacts: Artifacts,\n  web3: Web3,\n}\n```\n\n#### `injectArtifacts()`\n\nInject an `artifacts` object into the global default environment.\n\nNote that all future calls will now reference this new `artifacts` object by default.\n\n#### `injectWeb3()`\n\nInject a `web3` object into the global default environment.\n\nNote that all future calls will now reference this new `web3` object by default.\n\n### Generic utilities\n\n#### Constants\n\nThe following constants are available, and mostly self-explanatory:\n\n- Ethereum related\n  - `EMPTY_BYTES`\n  - `ZERO_ADDRESS`\n  - `ZERO_BYTES32`\n- Number related\n  - `MAX_UINT64`\n  - `MAX_UINT192`\n  - `MAX_UINT256`\n- Time related\n  - `NOW`: `Date.now()`, *in seconds*\n  - `TOMORROW`: one day ahead of `Date.now()`, *in seconds*\n  - `NEXT_WEEK`: one week ahead of `Date.now()`, *in seconds*\n  - `ONE_DAY`: duration for one day, *in seconds*\n  - `ONE_WEEK`: duration for one week, *in seconds*\n\n### Custom assertions\n\n### aragonOS utilities\n\n#### Constants\n\nThe following constants are available:\n\n- ACL\n  - `ANY_ENTITY`: address denoting any address has permission\n  - `BURN_MANAGER`: address denoting a permission has been frozen via discarding (burning) its manager\n- EVM Scripts\n  - `EMPTY_CALLS_SCRIPT`: empty CallsScript (with spec id 1)\n\n### aragonOS assertions\n\n### Smart contract mocks\n\nPlease visit the documentation available in [`contracts/`](./contracts).\n\n### Shell scripts\n\n#### `ganache-cli.sh`\n\nA utility script to start a local `ganache-cli` or `solidity-coverage` RPC node and initiate `npx truffle test`.\n\nThis script is generally considered deprecated but may be useful if your test framework still requires you to start a local test node manually.\n\nIf you haven't already done so, you may be interested in migrating to [buidler](https://buidler.dev/), which handles this connection for you.\n","engines":{"node":">= 10.0.0"},"scripts":{"lint":"eslint ./src","test":"npm run lint"},"_npmUser":{"name":"facuspagnuolo","email":"facundo_spagnuolo@icloud.com"},"_npmVersion":"6.1.0","description":"[![Status](https://img.shields.io/badge/stability-stable.svg?style=flat-square)](https://nodejs.org/api/documentation.html#documentation_stability_index) [![npm version](https://img.shields.io/npm/v/@aragon/contract-helpers-test.svg?style=flat-square&colo","directories":{},"_nodeVersion":"10.7.0","dependencies":{"@aragon/os":"^4.0.0","web3-utils":"1.2.5","web3-eth-abi":"1.2.5"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"eslint":"^7.4.0","prettier":"^2.0.5","eslint-plugin-node":"^11.1.0","eslint-plugin-import":"^2.22.0","eslint-plugin-promise":"^4.2.1","eslint-config-prettier":"^6.11.0","eslint-config-standard":"^14.1.1","eslint-plugin-prettier":"^3.1.4","eslint-plugin-standard":"^4.0.1"},"peerDependencies":{"chai":"^4.2.0","web3":"^1.0.0"},"optionalDependencies":{"@aragon/os":"^4.0.0"},"_npmOperationalInternal":{"tmp":"tmp/contract-helpers-test_0.1.0-rc.2_1594933709150_0.45549551783501996","host":"s3://npm-registry-packages"}},"0.1.0-rc.3":{"name":"@aragon/contract-helpers-test","version":"0.1.0-rc.3","author":{"name":"Aragon Assocation","email":"legal@aragon.org"},"license":"MIT","_id":"@aragon/contract-helpers-test@0.1.0-rc.3","maintainers":[{"name":"andy-hook","email":"hello@andyhook.dev"},{"name":"aragon-ci","email":"jorge+npmci@aragon.one"},{"name":"bingen","email":"bingen@aragon.one"},{"name":"bpierre","email":"hello@pierre.world"},{"name":"delfipolito","email":"delfipolito@hotmail.com"},{"name":"evalir","email":"hi@enriqueortiz.dev"},{"name":"facuspagnuolo","email":"facundo_spagnuolo@icloud.com"},{"name":"gabrielg","email":"gabrielpk.18@gmail.com"},{"name":"izqui","email":"jorge@aragon.one"},{"name":"luisivan","email":"me@luisivan.net"},{"name":"promaty","email":"promaty@gmail.com"},{"name":"sohkai","email":"qisheng.brett.sun@gmail.com"}],"dist":{"shasum":"dec428b5f0f7ffdf851663fd308dbc890ee045c1","tarball":"https://registry.npmjs.org/@aragon/contract-helpers-test/-/contract-helpers-test-0.1.0-rc.3.tgz","fileCount":37,"integrity":"sha512-9bCQagWrrZqaM8pSZq2YAY/uavbuNeaiUnKILFXuVwrVTeX2tjExIcaVTyeiGzZDF/L52ruOMi/o+Ns+T2U/gQ==","signatures":[{"sig":"MEUCIEdT+lS0Euudx/w8KC1jdHFXx75TwoomW9+QYv+fQL3vAiEAtv7aFT0m9z9fO49aSO8kEkwqxcEefj9zrXlipRq/yTU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":49998,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJfMwQUCRA9TVsSAnZWagAAdNUP/jbPKnc5w+2V1l+xoHdB\ncwLggQCpcrnXA17/VLdoy6RBiIXd9IxaYCBDMo71hznxyosMRzgEp0DRTjEV\nXlbxZdRbNZ5jRql9pf4mEGzoH6hUSI1/fYrGkvP97Mh+1XkFNF6PRAL0TVxh\nFHXFre2UQooxU4GRERQpnthIop5/wV5iEhA8kNl8cyTCnr4VAW/6pt4tlhjL\nqbuYa+M/V+ZfOY6vN3M3vVX4ujR2B2QFzcgocHNyvR90PQL4LvyM0ZhwCLhU\nItwHdxGQKVleMY9/L5i/ePkCPpuriKVDlIpqQrkHSvNWsZjqMNZl0nDtSXgS\n8uKzcEV/fP3BQfF61z7lrzYgcivdAPgK9+PLxVB1OBXjxg/p5TuNUYLmbETx\npyERSxn4mYu6BQTxpklV5MznfDlyde3Av3hH769Ijr4CDWLcmHgZdrR1R2Tw\n0ocX7d2kzNYZFIddQi+JApZhWrsp++eBhJwIndCSznMaZ0DDDIeLGiD3dBrn\nYu3Qeg3ZbgERzWKp8q8fga5M47F0DylMWdWiI6tP8p/RhgSdI3nJ8Gi44vTs\nNcrWVb36UxUGLXVaus19SeTBU3kMVDRevZxrGfN+smGMftCwpkbuyF6X93JI\nCVixr2VkGSW8uEdMJcfNaLAYvhNT7EQr9g/A6GnkcsqFDE8IVrAUbC8w/wE9\nsnCx\r\n=/g18\r\n-----END PGP SIGNATURE-----\r\n"},"main":"src/index.js","engines":{"node":">= 10.0.0"},"scripts":{"lint":"eslint ./src","test":"npm run lint"},"_npmUser":{"name":"gabrielg","email":"gabrielpk.18@gmail.com"},"_npmVersion":"6.14.6","description":"[![Status](https://img.shields.io/badge/stability-stable.svg?style=flat-square)](https://nodejs.org/api/documentation.html#documentation_stability_index) [![npm version](https://img.shields.io/npm/v/@aragon/contract-helpers-test.svg?style=flat-square&colo","directories":{},"_nodeVersion":"12.18.3","dependencies":{"web3-utils":"1.2.5","web3-eth-abi":"1.2.5"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^7.4.0","prettier":"^2.0.5","eslint-plugin-node":"^11.1.0","eslint-plugin-import":"^2.22.0","eslint-plugin-promise":"^4.2.1","eslint-config-prettier":"^6.11.0","eslint-config-standard":"^14.1.1","eslint-plugin-prettier":"^3.1.4","eslint-plugin-standard":"^4.0.1"},"peerDependencies":{"chai":"^4.2.0","web3":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/contract-helpers-test_0.1.0-rc.3_1597178899853_0.0355172631608236","host":"s3://npm-registry-packages"}},"0.1.0":{"name":"@aragon/contract-helpers-test","version":"0.1.0","author":{"name":"Aragon Assocation","email":"legal@aragon.org"},"license":"MIT","_id":"@aragon/contract-helpers-test@0.1.0","maintainers":[{"name":"andy-hook","email":"hello@andyhook.dev"},{"name":"aragon-ci","email":"jorge+npmci@aragon.one"},{"name":"bingen","email":"bingen@aragon.one"},{"name":"bpierre","email":"hello@pierre.world"},{"name":"delfipolito","email":"delfipolito@hotmail.com"},{"name":"evalir","email":"hi@enriqueortiz.dev"},{"name":"facuspagnuolo","email":"facundo_spagnuolo@icloud.com"},{"name":"gabrielg","email":"gabrielpk.18@gmail.com"},{"name":"izqui","email":"jorge@aragon.one"},{"name":"luisivan","email":"me@luisivan.net"},{"name":"promaty","email":"promaty@gmail.com"},{"name":"sohkai","email":"qisheng.brett.sun@gmail.com"}],"dist":{"shasum":"5c5f09739a0b33ab66843bc4849cb2b997d88af0","tarball":"https://registry.npmjs.org/@aragon/contract-helpers-test/-/contract-helpers-test-0.1.0.tgz","fileCount":37,"integrity":"sha512-xP2CqqP0Jw/6Jdo1mRg4OxL+3gmsCYV3EJRy7xN8xUrhQIqkOyRptC44X951O7Cr+VeqXJq22rpZSr01TJZhNg==","signatures":[{"sig":"MEUCIDNKvFGo7Xg0JI/eQF/quNSghzu0DgF69pWIsRiLbmrgAiEApTCwI50s2eyglqnG2HKkOl4Ixq+fceC3ob49jNvQQhg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50205,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh111KCRA9TVsSAnZWagAAS9UP/i81Vp3yHPa53s8Byszb\nzezixDnz31OgSCt+sInF+ohdc0bXYVmeubCNq0yvSRWQBbmDJKylG4yLThsc\nWPIGNsBaDevgzCTQSrjQDCJ6dcPuPKB135Gi80b3LjLMTusJ+TYkRwji41ol\nJgJFy8PU/NGXJ5EV4fnM7LIi3f+cb3hPDTksK/qbms57Rs63y0b2RH+YteQr\nQ8odP1qahavfxa/JqHwwFC6KmdXQ/rzdOD88t0Gg/7Uk1R7LQRzJ5gv5LaJ3\nIEVk4fl3Fl1ENwBc/QQUngr3vaSlRuiT2U4FTqTlbCBm/6nq/eD28PZ2042e\n7Q9W5DEgXZpXVrlWl6uGxDnLwY1jG3MP7WHAi67CM4SwYMw5fA5SYQ3PO7aW\n6atkJeF04XZl7UTUuLVhKoiRxPiA7oiSIp3nMwI3+oDV3P9gFeAYS+8vj6IT\nIpeQ0l6tkeJyV9RhCgC41WoKnHu9c8gaABDmuEtcktpG/9HFvIb4Q0EBrS01\nitU9F0GbfYjt2Wid6UEZLy+4eThagKvBu5uutYjA+ra6vQZ8F8wlMwRIi1jd\n9HOpoMXbz0ap85A9GjXtx0ZgMZtAV0v8NJWcsOUQcFKGyNcTJLjq5Lu/TwZI\n0WfVg0vjt4ZTODQ9OMevtEMk3ekmddpHyJ1s7EC3y0NjTuIxdZ1pFiqpYjfh\nhMhv\r\n=gyew\r\n-----END PGP SIGNATURE-----\r\n"},"main":"src/index.js","engines":{"node":">= 10.0.0"},"scripts":{"lint":"eslint ./src","test":"npm run lint"},"_npmUser":{"name":"facuspagnuolo","email":"facundo_spagnuolo@icloud.com"},"_npmVersion":"6.14.6","description":"[![Status](https://img.shields.io/badge/stability-stable.svg?style=flat-square)](https://nodejs.org/api/documentation.html#documentation_stability_index) [![npm version](https://img.shields.io/npm/v/@aragon/contract-helpers-test.svg?style=flat-square&colo","directories":{},"_nodeVersion":"10.22.0","dependencies":{"web3-utils":"1.2.5","web3-eth-abi":"1.2.5"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^7.4.0","prettier":"^2.0.5","eslint-plugin-node":"^11.1.0","eslint-plugin-import":"^2.22.0","eslint-plugin-promise":"^4.2.1","eslint-config-prettier":"^6.11.0","eslint-config-standard":"^14.1.1","eslint-plugin-prettier":"^3.1.4","eslint-plugin-standard":"^4.0.1"},"peerDependencies":{"chai":"^4.2.0","web3":"^1.0.0"},"_npmOperationalInternal":{"tmp":"tmp/contract-helpers-test_0.1.0_1598378807861_0.21888926320344693","host":"s3://npm-registry-packages"}}},"time":{"created":"2020-02-12T20:22:57.564Z","modified":"2025-05-09T12:19:36.140Z","0.0.1":"2020-02-12T20:22:57.946Z","0.0.2":"2020-02-17T18:49:15.497Z","0.0.3":"2020-05-27T17:30:22.685Z","0.1.0-rc.1":"2020-07-15T16:54:49.337Z","0.1.0-rc.2":"2020-07-16T21:08:29.310Z","0.1.0-rc.3":"2020-08-11T20:48:19.974Z","0.1.0":"2020-08-25T18:06:48.019Z"},"author":{"name":"Aragon Assocation","email":"legal@aragon.org"},"license":"MIT","description":"[![Status](https://img.shields.io/badge/stability-stable.svg?style=flat-square)](https://nodejs.org/api/documentation.html#documentation_stability_index) [![npm version](https://img.shields.io/npm/v/@aragon/contract-helpers-test.svg?style=flat-square&colo","maintainers":[{"email":"devops-master@aragon.org","name":"devops-master"},{"email":"jjavieralvarezrodriguez@gmail.com","name":"jjavieralv"},{"email":"devops@aragon.org","name":"arabot-1"}],"readme":"# Aragon test helpers\n\n[![Status](https://img.shields.io/badge/stability-stable.svg?style=flat-square)](https://nodejs.org/api/documentation.html#documentation_stability_index)\n[![npm version](https://img.shields.io/npm/v/@aragon/contract-helpers-test.svg?style=flat-square&color=lightgrey)](https://npmjs.org/package/@aragon/truffle-config-v4)\n\nTest helpers for both generic Solidity and Aragon-related smart contracts.\n\n> 🛠  This package is designed to be used in a [`web3.js@1`](js.readthedocs.io/en/1.0/) and [Truffle v5](https://www.trufflesuite.com/docs/truffle/overview) environment. If you are using [ethers.js](https://docs.ethers.io/v5/), you are likely much better served by [waffle](https://getwaffle.io/) which comes batteries-included with most of the [assertion matchers](https://ethereum-waffle.readthedocs.io/en/latest/matchers.html) you'll need.\n\n## Quick start\n\nInstall with `yarn add --dev @aragon/contract-helpers-test`.\n\nIn your tests, you'll then import these utilities like so:\n\n```js\nconst { bn, getEvents, MAX_UINT256, ZERO_ADDRESS } = require('@aragon/contract-helpers-test')\nconst { assertEvent, assertRevert } = require('@aragon/contract-helpers-test/asserts')\nconst { newDao, newDaoFactory } = require('@aragon/contract-helpers-test/aragon-os')\n```\n\nA number of contract mocks are also accessible through `@aragon/contract-helpers-test/contracts/` and may be useful for testing Aragon apps or other generic smart contracts. More documentation on these contract mocks is available in the [`contracts/`](./contracts) subdirectory.\n\n## API\n\nThe test helpers are grouped into several main exports:\n\n- [`@aragon/contract-helpers-test/`](#generic-utilities): generic utilities for on-chain interactions\n- [`@aragon/contract-helpers-test/asserts`](#custom-assertions): custom assertions for on-chain interactions\n- [`@aragon/contract-helpers-test/aragon-os`](#aragonos-utilities): aragonOS-related utilities\n- [`@aragon/contract-helpers-test/aragon-os/asserts`](#aragonos-assertions): aragonOS-related assertions\n\nFurthermore, the package also comes with:\n\n- [`@aragon/contract-helpers-test/contracts`](#smart-contract-mocks): smart contract mocks\n- [`@aragon/contract-helpers-test/scripts`](#shell-scripts): utility shell scripts\n\n### Global state\n\nThe utilities exposed from the test helpers will automatically detect and bind to an injected Truffle environment (`artifacts` and `web3`).\n\nHowever, it is possible to override this default binding or inject your own if none exist at the start of a file.\n\n#### `ctx`\n\nIndividual utilities containing a trailing `ctx` parameter allow you to override the environment specifically for that single call.\n\n```ts\ntype Artifacts = {\n  require: (name: string) => TruffleContract,\n}\n\ntype Context = {\n  artifacts: Artifacts,\n  web3: Web3,\n}\n```\n\n#### `injectArtifacts()`\n\nInject an `artifacts` object into the global default environment.\n\nNote that all future calls will now reference this new `artifacts` object by default.\n\n#### `injectWeb3()`\n\nInject a `web3` object into the global default environment.\n\nNote that all future calls will now reference this new `web3` object by default.\n\n### Generic utilities\n\n#### Constants\n\nThe following constants are available, and mostly self-explanatory:\n\n- Ethereum related\n  - `EMPTY_BYTES`\n  - `ZERO_ADDRESS`\n  - `ZERO_BYTES32`\n- Number related\n  - `MAX_UINT64`\n  - `MAX_UINT192`\n  - `MAX_UINT256`\n- Time related\n  - `NOW`: `Date.now()`, *in seconds*\n  - `TOMORROW`: one day ahead of `Date.now()`, *in seconds*\n  - `NEXT_WEEK`: one week ahead of `Date.now()`, *in seconds*\n  - `ONE_DAY`: duration for one day, *in seconds*\n  - `ONE_WEEK`: duration for one week, *in seconds*\n\n### Custom assertions\n\n### aragonOS utilities\n\n#### Constants\n\nThe following constants are available:\n\n- ACL\n  - `ANY_ENTITY`: address denoting any address has permission\n  - `BURN_MANAGER`: address denoting a permission has been frozen via discarding (burning) its manager\n- EVM Scripts\n  - `EMPTY_CALLS_SCRIPT`: empty CallsScript (with spec id 1)\n\n### aragonOS assertions\n\n### Smart contract mocks\n\nPlease visit the documentation available in [`contracts/`](./contracts).\n\n### Shell scripts\n\n#### `ganache-cli.sh`\n\nA utility script to start a local `ganache-cli` or `solidity-coverage` RPC node and initiate `npx truffle test`.\n\nThis script is generally considered deprecated but may be useful if your test framework still requires you to start a local test node manually.\n\nIf you haven't already done so, you may be interested in migrating to [buidler](https://buidler.dev/), which handles this connection for you.\n","readmeFilename":"README.md"}