|
|
|
@ -621,14 +621,15 @@ function shouldBehaveLikeAccessControlDefaultAdminRules(errorPrefix, delay, defa |
|
|
|
|
}); |
|
|
|
|
|
|
|
|
|
describe('renounces admin', function () { |
|
|
|
|
let expectedSchedule; |
|
|
|
|
let delayPassed; |
|
|
|
|
let delayNotPassed; |
|
|
|
|
|
|
|
|
|
beforeEach(async function () { |
|
|
|
|
await this.accessControl.beginDefaultAdminTransfer(constants.ZERO_ADDRESS, { from: defaultAdmin }); |
|
|
|
|
delayPassed = web3.utils |
|
|
|
|
.toBN(await time.latest()) |
|
|
|
|
.add(delay) |
|
|
|
|
.addn(1); |
|
|
|
|
expectedSchedule = web3.utils.toBN(await time.latest()).add(delay); |
|
|
|
|
delayNotPassed = expectedSchedule; |
|
|
|
|
delayPassed = expectedSchedule.addn(1); |
|
|
|
|
}); |
|
|
|
|
|
|
|
|
|
it('reverts if caller is not default admin', async function () { |
|
|
|
@ -639,6 +640,15 @@ function shouldBehaveLikeAccessControlDefaultAdminRules(errorPrefix, delay, defa |
|
|
|
|
); |
|
|
|
|
}); |
|
|
|
|
|
|
|
|
|
it("renouncing the admin role when not an admin doesn't affect the schedule", async function () { |
|
|
|
|
await time.setNextBlockTimestamp(delayPassed); |
|
|
|
|
await this.accessControl.renounceRole(DEFAULT_ADMIN_ROLE, other, { from: other }); |
|
|
|
|
|
|
|
|
|
const { newAdmin, schedule } = await this.accessControl.pendingDefaultAdmin(); |
|
|
|
|
expect(newAdmin).to.equal(constants.ZERO_ADDRESS); |
|
|
|
|
expect(schedule).to.be.bignumber.equal(expectedSchedule); |
|
|
|
|
}); |
|
|
|
|
|
|
|
|
|
it('keeps defaultAdmin consistent with hasRole if another non-defaultAdmin user renounces the DEFAULT_ADMIN_ROLE', async function () { |
|
|
|
|
await time.setNextBlockTimestamp(delayPassed); |
|
|
|
|
|
|
|
|
@ -677,12 +687,6 @@ function shouldBehaveLikeAccessControlDefaultAdminRules(errorPrefix, delay, defa |
|
|
|
|
}); |
|
|
|
|
|
|
|
|
|
describe('schedule not passed', function () { |
|
|
|
|
let delayNotPassed; |
|
|
|
|
|
|
|
|
|
beforeEach(function () { |
|
|
|
|
delayNotPassed = delayPassed.subn(1); |
|
|
|
|
}); |
|
|
|
|
|
|
|
|
|
for (const [fromSchedule, tag] of [ |
|
|
|
|
[-1, 'less'], |
|
|
|
|
[0, 'equal'], |
|
|
|
|