You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
22 lines
605 B
22 lines
605 B
export 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`.
|
|
export default 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()
|
|
}
|
|
}
|
|
|