Skip to content

Commit 109d13f

Browse files
committed
Update upgrade tests
1 parent e229ff5 commit 109d13f

1 file changed

Lines changed: 20 additions & 10 deletions

File tree

test/upgrade/upgrade-tests.js

Lines changed: 20 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ import { createMinipool, getMinipoolMinimumRPLStake } from '../_helpers/minipool
88
import { mintRPL } from '../_helpers/tokens';
99
import { userDeposit } from '../_helpers/deposit';
1010
import * as assert from 'assert';
11+
import { shouldRevert } from '../_utils/testing';
1112

1213
export default function() {
1314
contract('RocketUpgradeOneDotThreeDotOne', async (accounts) => {
@@ -99,28 +100,39 @@ export default function() {
99100
}
100101
});
101102

102-
it(printTitle('upgrade', 'updates addresses correctly'), async () => {
103+
async function executeUpgrade() {
104+
const rocketStorage = await RocketStorage.deployed();
105+
106+
// Lock contract and execute upgrade
103107
await rocketUpgradeOneDotThreeDotOne.lock();
104108
await setDaoNodeTrustedBootstrapUpgrade('addContract', 'rocketUpgradeOneDotThreeDotOne', contracts.rocketUpgradeOneDotThreeDotOne.abi, rocketUpgradeOneDotThreeDotOne.address, { from: owner });
105109
await rocketUpgradeOneDotThreeDotOne.execute();
106110

111+
// Confirm version string updated
112+
const versionString = await rocketStorage.getString(hre.web3.utils.soliditySha3('protocol.version'));
113+
assert.equal(versionString, '1.3.1');
114+
}
115+
116+
it(printTitle('upgrade', 'cannot execute twice'), async () => {
117+
await executeUpgrade();
118+
await shouldRevert(rocketUpgradeOneDotThreeDotOne.execute(), 'Was able to execute twice', 'Already executed');
119+
});
120+
121+
it(printTitle('upgrade', 'updates addresses correctly'), async () => {
107122
const rocketStorage = await RocketStorage.deployed();
108123

124+
await executeUpgrade();
125+
109126
for (let contract in addresses) {
110127
const key = hre.web3.utils.soliditySha3('contract.address', contract);
111128
const address = await rocketStorage.getAddress(key);
112129

113130
assert.equal(address, addresses[contract]);
114131
}
115-
116-
const versionString = await rocketStorage.getString(hre.web3.utils.soliditySha3('protocol.version'));
117-
assert.equal(versionString, '1.3.1');
118132
});
119133

120134
it(printTitle('upgrade', 'adjusts quorum parameter correctly'), async () => {
121-
await rocketUpgradeOneDotThreeDotOne.lock();
122-
await setDaoNodeTrustedBootstrapUpgrade('addContract', 'rocketUpgradeOneDotThreeDotOne', contracts.rocketUpgradeOneDotThreeDotOne.abi, rocketUpgradeOneDotThreeDotOne.address, { from: owner });
123-
await rocketUpgradeOneDotThreeDotOne.execute();
135+
await executeUpgrade();
124136

125137
const rocketDAOProtocolSettingsProposal = await RocketDAOProtocolSettingsProposals.deployed();
126138
const proposalQuorum = await rocketDAOProtocolSettingsProposal.getProposalQuorum.call();
@@ -174,9 +186,7 @@ export default function() {
174186
}
175187

176188
// Execute upgrade
177-
await rocketUpgradeOneDotThreeDotOne.lock();
178-
await setDaoNodeTrustedBootstrapUpgrade('addContract', 'rocketUpgradeOneDotThreeDotOne', contracts.rocketUpgradeOneDotThreeDotOne.abi, rocketUpgradeOneDotThreeDotOne.address, { from: owner });
179-
await rocketUpgradeOneDotThreeDotOne.execute();
189+
await executeUpgrade();
180190

181191
// Confirm changes
182192
for (let i = 0; i < nodes.length; i++) {

0 commit comments

Comments
 (0)