Skip to content

Commit df59765

Browse files
authored
Merge pull request #4591 from tmigone/tmigone/4589-anvil-support
Support anvil network in hh-network-helpers
2 parents f2cb1a2 + 4ad111a commit df59765

File tree

2 files changed

+15
-10
lines changed

2 files changed

+15
-10
lines changed

.changeset/plenty-pens-itch.md

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"@nomicfoundation/hardhat-network-helpers": patch
3+
---
4+
5+
Added support for using network helpers on anvil network (thanks @tmigone!)

packages/hardhat-network-helpers/src/utils.ts

+10-10
Original file line numberDiff line numberDiff line change
@@ -5,39 +5,39 @@ import type { NumberLike } from "./types";
55

66
import { HardhatNetworkHelpersError, OnlyHardhatNetworkError } from "./errors";
77

8-
let cachedIsHardhatNetwork: boolean;
9-
async function checkIfHardhatNetwork(
8+
let cachedIsDevelopmentNetwork: boolean;
9+
async function checkIfDevelopmentNetwork(
1010
provider: EIP1193Provider,
1111
networkName: string
1212
): Promise<boolean> {
1313
let version: string | undefined;
14-
if (cachedIsHardhatNetwork === undefined) {
14+
if (cachedIsDevelopmentNetwork === undefined) {
1515
try {
1616
version = (await provider.request({
1717
method: "web3_clientVersion",
1818
})) as string;
1919

20-
cachedIsHardhatNetwork = version
21-
.toLowerCase()
22-
.startsWith("hardhatnetwork");
20+
cachedIsDevelopmentNetwork =
21+
version.toLowerCase().startsWith("hardhatnetwork") ||
22+
version.toLowerCase().startsWith("anvil");
2323
} catch (e) {
24-
cachedIsHardhatNetwork = false;
24+
cachedIsDevelopmentNetwork = false;
2525
}
2626
}
2727

28-
if (!cachedIsHardhatNetwork) {
28+
if (!cachedIsDevelopmentNetwork) {
2929
throw new OnlyHardhatNetworkError(networkName, version);
3030
}
3131

32-
return cachedIsHardhatNetwork;
32+
return cachedIsDevelopmentNetwork;
3333
}
3434

3535
export async function getHardhatProvider(): Promise<EIP1193Provider> {
3636
const hre = await import("hardhat");
3737

3838
const provider = hre.network.provider;
3939

40-
await checkIfHardhatNetwork(provider, hre.network.name);
40+
await checkIfDevelopmentNetwork(provider, hre.network.name);
4141

4242
return hre.network.provider;
4343
}

0 commit comments

Comments
 (0)