diff options
author | Leonid Logvinov <logvinov.leon@gmail.com> | 2018-02-12 22:40:28 +0800 |
---|---|---|
committer | Leonid Logvinov <logvinov.leon@gmail.com> | 2018-02-15 03:51:26 +0800 |
commit | dbad7d18691e787bfc1c8e63a0e712f652486865 (patch) | |
tree | 6e21c6ca3b65d846f50a07c40445cdd6e7223e85 /packages/dev-utils/src | |
parent | 18e1c2dea5d3c5387db6f616cd0ebbfe89dc308b (diff) | |
download | dexon-sol-tools-dbad7d18691e787bfc1c8e63a0e712f652486865.tar dexon-sol-tools-dbad7d18691e787bfc1c8e63a0e712f652486865.tar.gz dexon-sol-tools-dbad7d18691e787bfc1c8e63a0e712f652486865.tar.bz2 dexon-sol-tools-dbad7d18691e787bfc1c8e63a0e712f652486865.tar.lz dexon-sol-tools-dbad7d18691e787bfc1c8e63a0e712f652486865.tar.xz dexon-sol-tools-dbad7d18691e787bfc1c8e63a0e712f652486865.tar.zst dexon-sol-tools-dbad7d18691e787bfc1c8e63a0e712f652486865.zip |
Move subproviders from dev-utils to subproviders
Diffstat (limited to 'packages/dev-utils/src')
3 files changed, 1 insertions, 64 deletions
diff --git a/packages/dev-utils/src/subproviders/empty_wallet_subprovider.ts b/packages/dev-utils/src/subproviders/empty_wallet_subprovider.ts deleted file mode 100644 index 8c1fdfdb2..000000000 --- a/packages/dev-utils/src/subproviders/empty_wallet_subprovider.ts +++ /dev/null @@ -1,27 +0,0 @@ -import { JSONRPCPayload } from '@0xproject/types'; - -/* - * This class implements the web3-provider-engine subprovider interface and returns - * that the provider has no addresses when queried. - * Source: https://github.com/MetaMask/provider-engine/blob/master/subproviders/subprovider.js - */ -export class EmptyWalletSubprovider { - // This method needs to be here to satisfy the interface but linter wants it to be static. - // tslint:disable-next-line:prefer-function-over-method - public handleRequest(payload: JSONRPCPayload, next: () => void, end: (err: Error | null, result: any) => void) { - switch (payload.method) { - case 'eth_accounts': - end(null, []); - return; - - default: - next(); - return; - } - } - // Required to implement this method despite not needing it for this subprovider - // tslint:disable-next-line:prefer-function-over-method - public setEngine(engine: any) { - // noop - } -} diff --git a/packages/dev-utils/src/subproviders/fake_gas_estimate_subprovider.ts b/packages/dev-utils/src/subproviders/fake_gas_estimate_subprovider.ts deleted file mode 100644 index b455a0ed7..000000000 --- a/packages/dev-utils/src/subproviders/fake_gas_estimate_subprovider.ts +++ /dev/null @@ -1,34 +0,0 @@ -import { JSONRPCPayload } from '@0xproject/types'; - -/* - * This class implements the web3-provider-engine subprovider interface and returns - * the constant gas estimate when queried. - * HACK: We need this so that our tests don't use testrpc gas estimation which sometimes kills the node. - * Source: https://github.com/trufflesuite/ganache-cli/issues/417 - * Source: https://github.com/trufflesuite/ganache-cli/issues/437 - * Source: https://github.com/MetaMask/provider-engine/blob/master/subproviders/subprovider.js - */ -export class FakeGasEstimateSubprovider { - private _constantGasAmount: number; - constructor(constantGasAmount: number) { - this._constantGasAmount = constantGasAmount; - } - // This method needs to be here to satisfy the interface but linter wants it to be static. - // tslint:disable-next-line:prefer-function-over-method - public handleRequest(payload: JSONRPCPayload, next: () => void, end: (err: Error | null, result: any) => void) { - switch (payload.method) { - case 'eth_estimateGas': - end(null, this._constantGasAmount); - return; - - default: - next(); - return; - } - } - // Required to implement this method despite not needing it for this subprovider - // tslint:disable-next-line:prefer-function-over-method - public setEngine(engine: any) { - // noop - } -} diff --git a/packages/dev-utils/src/web3_factory.ts b/packages/dev-utils/src/web3_factory.ts index 26c26e03d..1287c9e1e 100644 --- a/packages/dev-utils/src/web3_factory.ts +++ b/packages/dev-utils/src/web3_factory.ts @@ -3,12 +3,10 @@ // we are not running in a browser env. // Filed issue: https://github.com/ethereum/web3.js/issues/844 (global as any).XMLHttpRequest = undefined; +import { EmptyWalletSubprovider, FakeGasEstimateSubprovider } from '@0xproject/subproviders'; import ProviderEngine = require('web3-provider-engine'); import RpcSubprovider = require('web3-provider-engine/subproviders/rpc'); -import { EmptyWalletSubprovider } from './subproviders/empty_wallet_subprovider'; -import { FakeGasEstimateSubprovider } from './subproviders/fake_gas_estimate_subprovider'; - import { constants } from './constants'; // HACK: web3 leaks XMLHttpRequest into the global scope and causes requests to hang |