ref-fvm
ref-fvm copied to clipboard
Eth contract testing: Openzeppelin: Send multiple transactions simultaneously
CI fails while testing Openzeppelin contracts
Reproduce Steps
Follow the README to set up the environment
cd ./extern/openzeppelin-contracts
npx hardhat --network test test
Looks like a dup of #1615?
They are different. The root cause of this issue is that the code sends out multiple transactions simultaneously, so they all share the same nonce.
test/governance/extensions/GovernorERC721.test.js:
await Promise.all([NFT0, NFT1, NFT2, NFT3, NFT4].map(tokenId => this.token.$_mint(owner, tokenId)))
Oh, I see. I think:
- The first message fails with out of gas, but lands in the mpool.
- Subsequent messages fail because the first message is in the mpool.