Improve custom error helper when there is no match (#4437)

This commit is contained in:
Francisco
2023-07-09 18:36:23 -03:00
committed by GitHub
parent e47b53bce4
commit 4bac6fa310

View File

@ -13,13 +13,10 @@ async function expectRevertCustomError(promise, expectedErrorName, args) {
// VM Exception while processing transaction: // VM Exception while processing transaction:
// reverted with custom error 'InvalidAccountNonce("0x70997970C51812dc3A010C7d01b50e0d17dc79C8", 0)' // reverted with custom error 'InvalidAccountNonce("0x70997970C51812dc3A010C7d01b50e0d17dc79C8", 0)'
// We trim out anything inside the single quotes as comma-separated values // Attempt to parse as a custom error
const [, error] = message.match(/'(.*)'/); const match = message.match(/custom error '(?<name>\w+)\((?<args>.*)\)'/);
// Attempt to parse as an error
const match = error.match(/(?<name>\w+)\((?<args>.*)\)/);
if (!match) { if (!match) {
expect.fail(`Couldn't parse "${error}" as a custom error`); expect.fail(`Could not parse as custom error. ${message}`);
} }
// Extract the error name and parameters // Extract the error name and parameters
const errorName = match.groups.name; const errorName = match.groups.name;