Replace revert strings with custom errors (#4261)
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com> Co-authored-by: Francisco <fg@frang.io>
This commit is contained in:
@ -1,5 +1,6 @@
|
||||
const { expectEvent, expectRevert } = require('@openzeppelin/test-helpers');
|
||||
const { expectEvent } = require('@openzeppelin/test-helpers');
|
||||
const { expect } = require('chai');
|
||||
const { expectRevertCustomError } = require('../../helpers/customError');
|
||||
|
||||
const InitializableMock = artifacts.require('InitializableMock');
|
||||
const ConstructorInitializableMock = artifacts.require('ConstructorInitializableMock');
|
||||
@ -40,13 +41,13 @@ contract('Initializable', function () {
|
||||
});
|
||||
|
||||
it('initializer does not run again', async function () {
|
||||
await expectRevert(this.contract.initialize(), 'Initializable: contract is already initialized');
|
||||
await expectRevertCustomError(this.contract.initialize(), 'AlreadyInitialized', []);
|
||||
});
|
||||
});
|
||||
|
||||
describe('nested under an initializer', function () {
|
||||
it('initializer modifier reverts', async function () {
|
||||
await expectRevert(this.contract.initializerNested(), 'Initializable: contract is already initialized');
|
||||
await expectRevertCustomError(this.contract.initializerNested(), 'AlreadyInitialized', []);
|
||||
});
|
||||
|
||||
it('onlyInitializing modifier succeeds', async function () {
|
||||
@ -56,7 +57,7 @@ contract('Initializable', function () {
|
||||
});
|
||||
|
||||
it('cannot call onlyInitializable function outside the scope of an initializable function', async function () {
|
||||
await expectRevert(this.contract.initializeOnlyInitializing(), 'Initializable: contract is not initializing');
|
||||
await expectRevertCustomError(this.contract.initializeOnlyInitializing(), 'NotInitializing', []);
|
||||
});
|
||||
});
|
||||
|
||||
@ -98,9 +99,9 @@ contract('Initializable', function () {
|
||||
|
||||
it('cannot nest reinitializers', async function () {
|
||||
expect(await this.contract.counter()).to.be.bignumber.equal('0');
|
||||
await expectRevert(this.contract.nestedReinitialize(2, 2), 'Initializable: contract is already initialized');
|
||||
await expectRevert(this.contract.nestedReinitialize(2, 3), 'Initializable: contract is already initialized');
|
||||
await expectRevert(this.contract.nestedReinitialize(3, 2), 'Initializable: contract is already initialized');
|
||||
await expectRevertCustomError(this.contract.nestedReinitialize(2, 2), 'AlreadyInitialized', []);
|
||||
await expectRevertCustomError(this.contract.nestedReinitialize(2, 3), 'AlreadyInitialized', []);
|
||||
await expectRevertCustomError(this.contract.nestedReinitialize(3, 2), 'AlreadyInitialized', []);
|
||||
});
|
||||
|
||||
it('can chain reinitializers', async function () {
|
||||
@ -119,18 +120,18 @@ contract('Initializable', function () {
|
||||
describe('contract locking', function () {
|
||||
it('prevents initialization', async function () {
|
||||
await this.contract.disableInitializers();
|
||||
await expectRevert(this.contract.initialize(), 'Initializable: contract is already initialized');
|
||||
await expectRevertCustomError(this.contract.initialize(), 'AlreadyInitialized', []);
|
||||
});
|
||||
|
||||
it('prevents re-initialization', async function () {
|
||||
await this.contract.disableInitializers();
|
||||
await expectRevert(this.contract.reinitialize(255), 'Initializable: contract is already initialized');
|
||||
await expectRevertCustomError(this.contract.reinitialize(255), 'AlreadyInitialized', []);
|
||||
});
|
||||
|
||||
it('can lock contract after initialization', async function () {
|
||||
await this.contract.initialize();
|
||||
await this.contract.disableInitializers();
|
||||
await expectRevert(this.contract.reinitialize(255), 'Initializable: contract is already initialized');
|
||||
await expectRevertCustomError(this.contract.reinitialize(255), 'AlreadyInitialized', []);
|
||||
});
|
||||
});
|
||||
});
|
||||
@ -205,8 +206,8 @@ contract('Initializable', function () {
|
||||
|
||||
describe('disabling initialization', function () {
|
||||
it('old and new patterns in bad sequence', async function () {
|
||||
await expectRevert(DisableBad1.new(), 'Initializable: contract is already initialized');
|
||||
await expectRevert(DisableBad2.new(), 'Initializable: contract is initializing');
|
||||
await expectRevertCustomError(DisableBad1.new(), 'AlreadyInitialized', []);
|
||||
await expectRevertCustomError(DisableBad2.new(), 'AlreadyInitialized', []);
|
||||
});
|
||||
|
||||
it('old and new patterns in good sequence', async function () {
|
||||
|
||||
Reference in New Issue
Block a user