aboutsummaryrefslogtreecommitdiffstats
path: root/test/stub
diff options
context:
space:
mode:
authorThomas Huang <tmashuang@users.noreply.github.com>2018-01-19 02:07:41 +0800
committerGitHub <noreply@github.com>2018-01-19 02:07:41 +0800
commitd8d11ec764ed11d16e5f1f5fb740363b976fe71c (patch)
tree2d9343662e90ac03bb799ed9802f233eb6cf1b00 /test/stub
parentb259c293745d94f257a0c309e331fea9f5ffaafe (diff)
parentab3423d00d01f529ce615b31923a70d7d7248d86 (diff)
downloadtangerine-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.js29
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 }
+}