2.0.6 • Published 11 months ago

@nomiclabs/hardhat-waffle v2.0.6

Weekly downloads
8,622
License
MIT
Repository
github
Last release
11 months ago

npm hardhat

hardhat-waffle

Hardhat plugin for integration with Waffle.

What

You can use this plugin to build smart contract tests using Waffle in Hardhat, taking advantage of both.

This plugin adds a Hardhat-ready version of Waffle to the Hardhat Runtime Environment, and automatically initializes the Waffle Chai matchers.

Installation

npm install --save-dev @nomiclabs/hardhat-waffle 'ethereum-waffle@^3.0.0' @nomiclabs/hardhat-ethers 'ethers@^5.0.0' @types/sinon-chai@^3.2.3

And add the following statement to your hardhat.config.js:

require("@nomiclabs/hardhat-waffle");

Or, if you are using TypeScript, add this to your hardhat.config.ts:

import "@nomiclabs/hardhat-waffle";

Tasks

This plugin creates no additional tasks.

Environment extensions

This plugin adds a waffle object to the Hardhat Runtime Environment. This object has all the Waffle functionality, already adapted to work with Hardhat.

The waffle object has these properties:

  • provider
  • deployContract
  • solidity
  • link
  • deployMockContract
  • createFixtureLoader
  • loadFixture

This plugin depends on @nomiclabs/hardhat-ethers, so it also injects an ethers object into the HRE, which is documented here.

Usage

Once installed, you can build your tests almost like in Waffle.

Instead of importing things from ethereum-waffle, you access them from the waffle property of the Hardhat Runtime Environment.

For example, instead of doing

const { deployContract } = require("ethereum-waffle");

you should do

const { waffle } = require("hardhat");
const { deployContract } = waffle;

Also, you don't need to call chai.use in order to use Waffle's Chai matchers.

Note that by default, Hardhat saves its compilation output into artifacts/ instead of build/. You can either use that directory in your tests, or customize your Hardhat config.

distributed-town-smart-contracts@jbox/contracts@unioncredit/union-v1-sdk@meetusvr/smart-contracts@infinitebrahmanuniverse/nolb-_nom@everything-registry/sub-chunk-663ico-crowdsale12infinitymint-btillumquomarketplace-nftnemosapientenewdex-peripherynetrefvotename-wrappernum_complex_soliditymarket143411ducimusuterc721nesestprovidentgluwa-token-testtoolsgrowpayharbor-hardhat-anvilfacilisquosevm-network-testgas-saverpacked-solidity-arraysrward-backendsafient-claimssafient-claims-test@elastic-dao/elasticswap@eth-optimism/contracts-governance@eth-optimism/chugsplash@elasticswap/elasticswap@elasticswap/token@elasticswap/token-bridged@gluwa/token-testtools@gluwa/evm-network-test@ensdomains/name-wrapper@exodiafi/exodia-sdk@foundry-rs/hardhat-anvil@foundry-rs/hardhat-forge@holyswap/hardhat-framework@idecentralize/pulsar@ikalasdev/erc20generator@ikalasdev/erc721generator@ikalasdev/timelock@infini3/hardhat-tsvoluptasomnistornadio-sdktestpackage-praveen5-o@insuredao/pool-contracts@kangafinance/hardhat-framework@klaytn/kss-oracles@klaytn/kds-oracles@mimic-fi/v2-helpers@mimic-fi/v3-helpers@mimic-fi/v1-contractswepublic-contractsx-domain-messenger-plusx1-sfc@lightdotso/hardhat-config@m.arefev/nft@nifty-badges/contractsskill-walletsurviving-the-bearsolidity_tutorialssolidity-trading-journalsoulswap-hardhat-configdfyn-smart-order-routertea-ossreiciendisaccusamus@mstable/protocol@moraswap/permit2@lhrc/core@picoswap/pico-test-tokens@picoswap/pico-v2-core@partylikeits1983/complex_sol@polycity/hardhat-framework@overnight-contracts/blp-rebalancer@ngmpool/sdk@luckyfinance/hardhat-framework@ourz/our-contracts@ponyswapdex/pony-swap-core@tracer-protocol/contracts@recruiter.party/contracts@soundxyz/protocol@unioncredit/v1-sdk@unioncredit/v2-sdk@trustlessfi/multicall@trustlessfi/protocols@panukresko/hardhat-anvil@panukresko/hardhat-forge@quant-finance/testnet-faucet@protocol-octopus/smart-contracts@matthewyun/v2-periphery@sismo-core/ens-sdao@skyxexchange/permit2@richeroneren/fast-presale@safient/contracts@safient/claims
2.0.6

11 months ago

2.0.5

1 year ago

2.0.4

1 year ago

2.0.3

2 years ago

2.0.2

2 years ago

2.0.1

3 years ago

1.0.0

3 years ago

2.0.0-rc.1

3 years ago

2.0.0

3 years ago

2.0.0-rc.0

3 years ago