Files
openzeppelin-contracts/test/helpers/advanceToBlock.js
Nicolás Venturo cea2a85a42 Remove Babel (#1074)
* Test helpers no longer rely on Babel.

* Behaviours are no longer imported.

* Removed Babel dependency.

* Fixed linter errors.
2018-07-18 19:37:16 -03:00

28 lines
647 B
JavaScript

function advanceBlock () {
return new Promise((resolve, reject) => {
web3.currentProvider.sendAsync({
jsonrpc: '2.0',
method: 'evm_mine',
id: Date.now(),
}, (err, res) => {
return err ? reject(err) : resolve(res);
});
});
}
// Advances the block number so that the last mined block is `number`.
async function advanceToBlock (number) {
if (web3.eth.blockNumber > number) {
throw Error(`block number ${number} is in the past (current is ${web3.eth.blockNumber})`);
}
while (web3.eth.blockNumber < number) {
await advanceBlock();
}
}
module.exports = {
advanceBlock,
advanceToBlock,
};