49 lines
1.4 KiB
JavaScript
49 lines
1.4 KiB
JavaScript
const path = require('path');
|
|
const each = require('async-each-series');
|
|
|
|
const seeds = require(path.join(__dirname, '..', '/config/seeds.js'));
|
|
|
|
const { ethers } = require("hardhat");
|
|
const Kredits = require('../lib/kredits');
|
|
|
|
async function main() {
|
|
kredits = new Kredits(hre.ethers.provider, hre.ethers.provider.getSigner())
|
|
await kredits.init();
|
|
|
|
let fundingAmount = '2';
|
|
each(seeds.funds, (address, next) => {
|
|
console.log(`funding ${address} with 2 ETH`);
|
|
try {
|
|
hre.ethers.provider.getSigner().sendTransaction({
|
|
to: address,
|
|
value: hre.ethers.utils.parseEther(fundingAmount)
|
|
});
|
|
} catch(e) {
|
|
console.log('FAILED:', e);
|
|
}
|
|
next();
|
|
});
|
|
|
|
each(seeds.contractCalls, (call, next) => {
|
|
let [contractName, method, args] = call;
|
|
let contractWrapper = kredits[contractName];
|
|
let func;
|
|
if (contractWrapper[method]) {
|
|
func = contractWrapper[method];
|
|
} else {
|
|
func = contractWrapper.contract[method];
|
|
}
|
|
func.apply(contractWrapper, args).then((result) => {
|
|
console.log(`[OK] kredits.${contractName}.${method}(${JSON.stringify(args)}) => ${result.hash}`);
|
|
next();
|
|
}).catch((error) => {
|
|
console.log(`[FAILED] kredits.${contractName}.${method}(${JSON.stringify(args)})`);
|
|
console.log(`Error: ${error.message}`);
|
|
next();
|
|
});
|
|
}, () => { console.log("\nDone!") });
|
|
|
|
}
|
|
|
|
main();
|