diff options
author | Thomas Huang <tmashuang@users.noreply.github.com> | 2018-01-19 02:07:41 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-01-19 02:07:41 +0800 |
commit | d8d11ec764ed11d16e5f1f5fb740363b976fe71c (patch) | |
tree | 2d9343662e90ac03bb799ed9802f233eb6cf1b00 /test/stub | |
parent | b259c293745d94f257a0c309e331fea9f5ffaafe (diff) | |
parent | ab3423d00d01f529ce615b31923a70d7d7248d86 (diff) | |
download | tangerine-wallet-browser-d8d11ec764ed11d16e5f1f5fb740363b976fe71c.tar tangerine-wallet-browser-d8d11ec764ed11d16e5f1f5fb740363b976fe71c.tar.gz tangerine-wallet-browser-d8d11ec764ed11d16e5f1f5fb740363b976fe71c.tar.bz2 tangerine-wallet-browser-d8d11ec764ed11d16e5f1f5fb740363b976fe71c.tar.lz tangerine-wallet-browser-d8d11ec764ed11d16e5f1f5fb740363b976fe71c.tar.xz tangerine-wallet-browser-d8d11ec764ed11d16e5f1f5fb740363b976fe71c.tar.zst tangerine-wallet-browser-d8d11ec764ed11d16e5f1f5fb740363b976fe71c.zip |
Merge pull request #3029 from MetaMask/test-provider-stub
Tests - Improved provider stubbing with test-block-middleware
Diffstat (limited to 'test/stub')
-rw-r--r-- | test/stub/provider.js | 29 |
1 files changed, 11 insertions, 18 deletions
diff --git a/test/stub/provider.js b/test/stub/provider.js index 85e1da707..e77db4e28 100644 --- a/test/stub/provider.js +++ b/test/stub/provider.js @@ -1,12 +1,12 @@ const JsonRpcEngine = require('json-rpc-engine') const scaffoldMiddleware = require('eth-json-rpc-middleware/scaffold') +const TestBlockchain = require('eth-block-tracker/test/util/testBlockMiddleware') module.exports = { createEngineForTestData, providerFromEngine, scaffoldMiddleware, - createEthJsQueryStub, - createStubedProvider, + createTestProviderTools, } @@ -19,20 +19,13 @@ function providerFromEngine (engine) { return provider } -function createEthJsQueryStub (stubProvider) { - return new Proxy({}, { - get: (obj, method) => { - return (...params) => { - return new Promise((resolve, reject) => { - stubProvider.sendAsync({ method: `eth_${method}`, params }, (err, ress) => resolve(ress.result)) - }) - } - }, - }) -} - -function createStubedProvider (resultStub) { +function createTestProviderTools (opts = {}) { const engine = createEngineForTestData() - engine.push(scaffoldMiddleware(resultStub)) - return providerFromEngine(engine) -}
\ No newline at end of file + const testBlockchain = new TestBlockchain() + // handle provided hooks + engine.push(scaffoldMiddleware(opts.scaffold || {})) + // handle block tracker methods + engine.push(testBlockchain.createMiddleware()) + const provider = providerFromEngine(engine) + return { provider, engine, testBlockchain } +} |