| 123456789101112131415161718192021222324252627282930313233343536 |
- /*
- This script advances Ganache network state. It runs as a sidecar pod alongside the devnet and
- ensures that manual token transfers triggered through the web UI will be able to be confirmed.
- */
- advanceBlock = () => {
- return new Promise((resolve, reject) => {
- web3.currentProvider.send({
- jsonrpc: "2.0",
- method: "evm_mine",
- id: new Date().getTime()
- }, (err, result) => {
- if (err) {
- return reject(err);
- }
- const newBlockHash = web3.eth.getBlock('latest').hash;
- return resolve(newBlockHash)
- });
- });
- }
- function sleep(ms) {
- return new Promise(resolve => setTimeout(resolve, ms));
- }
- module.exports = function(callback) {
- const fn = async () => {
- while (true) {
- console.log(await advanceBlock());
- await sleep(1000);
- }
- }
- fn().catch(reason => console.error(reason))
- }
|