{"bugs":{"url":"https://github.com/EthWorks/Waffle/issues"},"dist":{"shasum":"04da8fa6707ab8a6d47ece0f9ddd94a4c455be5f","tarball":"https://registry.npmjs.org/@ethereum-waffle/provider/-/provider-4.0.5-dev.0c72c63.tgz","fileCount":77,"integrity":"sha512-/OpMVQpD5YfaxD3tgDd6JpPlfpml8A29Hpixcow4Xe8gKys+IsS+OlCNoc8qqtdhx2hJKZjSjOeGShOjG0Kedg==","signatures":[{"sig":"MEUCIQDb8yCzBT85qFSL8DoYkA/Ch1rZ1uTXDCsEOWXFcqYdTgIgA4+se8DNdQQFsrD9noj/mZLlpMgQhGdBKesgjDioqzY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":251194,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjMYpVACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqZiA/7BoHqMa/cA/J/cse7tOb4K1NqQHrjrYmbpvFM4SSelOpw8ENS\r\n9nLSIq6DT8ChEckcCcTr9IapNbUCBa1yIO1D6Y4UnY7ed3gzEjWoEnPObu84\r\n7GUoeVw2gXYpYPrn28yRQWvAXzoNDmCeJzEfLkn1nFZsT9EyjpnlafrHDCoC\r\n01U+mBdzkZaNNhxjgyoRlWIfhGF5M4uw+MTXfC5ruPfOkPNtBbyiLcWb+q3u\r\n1IH1an487wMuhUPQ+inaCmGgQISKZPiQDRgcotkVm2lA3qPURwUXkDQ2xt7G\r\nQri/9jGSBBA+oGUHwfm2WQSsDMnNSHAZJeDccWWmgJWono/+qnjZ+7ORJcbc\r\n8435TTkSUzhzB9r+gDVnrFZ+Q6xONw+0rylyQ5BOW9o4fAVsME2+6wVtRHBE\r\nxVox8YnycmDO2V7JRh37N4yVssKHNcPEspz1n4E86a2p36PKiAOxMKlQSdig\r\nQBhYDq349+EP59a60DI1Y7Q4rjRaQNrfakJSs5kM8aQBOll99aQDINF56wk0\r\nQiSMLbtbjUrS/6gfkxVm896Yd1S0fSM1LIzfgnUP6FL5CB4exVKhyF6MdGLl\r\n5vM/m945kN5cEjwzaREepG5xQ2jEyp7N7xTP3MB9ObVB4MTKa2TCL8PQZHsX\r\nGPChnaUd1SX2x6+2aGcYIW944lZXOc52czM=\r\n=BPd0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"dist/cjs/src/index.js","name":"@ethereum-waffle/provider","_from":"file:ethereum-waffle-provider-4.0.5-dev.0c72c63.tgz","types":"dist/esm/src/index.d.ts","author":{"url":"http://ethworks.io","name":"Marek Kirejczyk","email":"account@ethworks.io"},"module":"dist/esm/src/index.ts","readme":"![CI](https://github.com/EthWorks/Waffle/workflows/CI/badge.svg)\n[![](https://img.shields.io/npm/v/@ethereum-waffle/provider.svg)](https://www.npmjs.com/package/@ethereum-waffle/provider)\n\n![Ethereum Waffle](https://raw.githubusercontent.com/EthWorks/Waffle/master/docs/source/logo.png)\n\n# @ethereum-waffle/provider\n\nA mock provider for your blockchain testing needs.\n\n## Installation\n\nIn the current version of waffle (v2.x.x) you will install this package as a dependency of the main waffle package - `ethereum-waffle`.\n\n```\nyarn add --dev ethereum-waffle\nnpm install --save-dev ethereum-waffle\n```\n\nIf you want to use this package directly please install it via:\n```\nyarn add --dev @ethereum-waffle/provider\nnpm install --save-dev @ethereum-waffle/provider\n```\n\n## Feature overview\n\n**NOTE**: You do not need to use this package directly. You can install it through the main package (`ethereum-waffle`) and use it instead.\n\n### MockProvider\n\nThe `MockProvider` class is the main way of interacting with the blockchain in your waffle tests.\n\nIt wraps `ganache-core` in an `ethers` provider and extends it with useful functionality.\n\nYou can learn more about it [in the documentation](https://ethereum-waffle.readthedocs.io/en/latest/basic-testing.html).\n\n### Usage\n\nExamples of creating `MockProvider` and usage `getWallets` function:\n```ts\nimport {expect} from 'chai';\nimport {MockProvider} from '@ethereum-waffle/provider';\n\ndescribe('waffle tests', async () => {\n  it('wallets have non-zero balance', async () => {\n    const provider = new MockProvider();\n    const wallets = provider.getWallets();\n    const balance = await wallets[0].getBalance();\n    expect(balance.gt(0)).to.equal(true)\n  })\n})\n```\n\nUse `setupENS` function to set up your `ens` and setting ens address to the provider's networks. The function accepts\nthe `wallet` as an argument, and if you call it without an argument, it will use the last `wallet` from `MockProvider`.\n\n```ts\nimport {expect} from 'chai';\nimport {MockProvider} from '@ethereum-waffle/provider';\ndescribe('waffle tests', async () => {\n  it('setup ens', async () => {\n    const provider = new MockProvider();\n    await provider.setupENS();\n    expect(provider.network.ensAddress).to.eq(provider.ens.ens.address);\n  });\n});\n```\n\n\n### Fixtures\n\nFixtures are an advanced concept that you can use to make your tests run faster. They take advantage of the snapshot mechanism in Ganache.\n\nYou can learn more about it [in the documentation](https://ethereum-waffle.readthedocs.io/en/latest/fixtures.html).\n\n### Legacy API\n\n- `createMockProvider` - this was the old way to construct a MockProvider instance\n- `getGanacheOptions` - previously it was possible to load the options from the waffle config file\n- `getWallets` - this was the old way to get wallets from a provider\n","engines":{"node":">=10.0"},"license":"MIT","private":false,"scripts":{"lint":"eslint '{src,test}/**/*.ts'","test":"mocha","build":"rimraf ./dist && yarn build:esm && yarn build:cjs","lint:fix":"eslint --fix '{src,test}/**/*.ts'","build:cjs":"tsc -p tsconfig.build.json --outDir dist/cjs","build:esm":"tsc -p tsconfig.build.json --outDir dist/esm --module ES6"},"_npmUser":{"name":"ethworks","email":"code@trusttoken.com"},"homepage":"https://github.com/EthWorks/Waffle","keywords":["ethereum","smart-contracts","solidity","testing","javascript","typescript","library"],"_resolved":"/tmp/1b2a8b485f211fbce13eea5a81499a89/ethereum-waffle-provider-4.0.5-dev.0c72c63.tgz","_integrity":"sha512-/OpMVQpD5YfaxD3tgDd6JpPlfpml8A29Hpixcow4Xe8gKys+IsS+OlCNoc8qqtdhx2hJKZjSjOeGShOjG0Kedg==","repository":{"url":"git+ssh://git@github.com/EthWorks/Waffle.git","type":"git"},"_npmVersion":"8.15.0","description":"A mock provider for your blockchain testing needs.","directories":{},"maintainers":[{"name":"ethworks","email":"code@trusttoken.com"}],"resolutions":{"web3":"1.2.4"},"_nodeVersion":"16.17.0","dependencies":{"debug":"^4.3.4","ganache":"7.4.3","@ethereum-waffle/ens":"4.0.3-dev.0c72c63","@ganache/ethereum-options":"0.1.4"},"publishConfig":{"tag":"dev","access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"mocha":"^8.2.1","eslint":"^7.14.0","ethers":"5.6.2","rimraf":"^3.0.2","typescript":"^4.6.2","@types/debug":"^4.1.7"},"peerDependencies":{"ethers":"*"},"_npmOperationalInternal":{"tmp":"tmp/provider_4.0.5-dev.0c72c63_1664191061027_0.8848551576306753","host":"s3://npm-registry-packages"},"_id":"@ethereum-waffle/provider@4.0.5-dev.0c72c63","version":"4.0.5-dev.0c72c63"}