31 lines
1.0 KiB
TypeScript
31 lines
1.0 KiB
TypeScript
import { env, EnvVars } from '@0xproject/dev-utils';
|
|
import { GanacheSubprovider } from '@0xproject/subproviders';
|
|
import { Web3Wrapper } from '@0xproject/web3-wrapper';
|
|
import * as fs from 'fs';
|
|
import * as _ from 'lodash';
|
|
import ProviderEngine = require('web3-provider-engine');
|
|
|
|
import { coverage } from './coverage';
|
|
|
|
export const web3Provider = new ProviderEngine();
|
|
const isCoverageEnabled = env.parseBoolean(EnvVars.SolidityCoverage);
|
|
if (isCoverageEnabled) {
|
|
web3Provider.addProvider(coverage.getCoverageSubproviderSingleton());
|
|
}
|
|
web3Provider.addProvider(
|
|
new GanacheSubprovider({
|
|
logger: {
|
|
log: (arg: any) => {
|
|
fs.appendFileSync('ganache.log', `${arg}\n`);
|
|
},
|
|
},
|
|
verbose: env.parseBoolean(EnvVars.SolidityCoverage),
|
|
port: 8545,
|
|
networkId: 50,
|
|
mnemonic: 'concert load couple harbor equip island argue ramp clarify fence smart topic',
|
|
}),
|
|
);
|
|
web3Provider.start();
|
|
|
|
export const web3Wrapper = new Web3Wrapper(web3Provider);
|