mirror of
https://github.com/PaulRBerg/hardhat-template.git
synced 2026-01-12 23:48:25 -05:00
33 lines
1.0 KiB
TypeScript
33 lines
1.0 KiB
TypeScript
import { Signer } from "@ethersproject/abstract-signer";
|
|
import { ethers, waffle } from "@nomiclabs/buidler";
|
|
|
|
import GreeterArtifact from "../artifacts/Greeter.json";
|
|
|
|
import { Greeter } from "../typechain/Greeter";
|
|
import { shouldBehaveLikeGreeter } from "./Greeter.behavior";
|
|
|
|
const { createFixtureLoader, deployContract } = waffle;
|
|
|
|
async function greeterFixture(signers: Signer[]): Promise<{ greeter: Greeter }> {
|
|
const greeter: Greeter = (await deployContract(signers[0], GreeterArtifact, ["Hello, world!"])) as Greeter;
|
|
return { greeter };
|
|
}
|
|
|
|
setTimeout(async function () {
|
|
const signers: Signer[] = await ethers.getSigners();
|
|
|
|
describe("Greeter", function () {
|
|
beforeEach(async function () {
|
|
/**
|
|
* You can replace "waffle.provider.getWallets" with "ethers.getSigners()" - the bug persists.
|
|
*/
|
|
const { greeter } = await createFixtureLoader(await waffle.provider.getWallets())(greeterFixture);
|
|
this.greeter = greeter;
|
|
});
|
|
|
|
shouldBehaveLikeGreeter(signers);
|
|
});
|
|
|
|
run();
|
|
}, 1000);
|