Closed dangell7 closed 5 years ago
This issue does not exists when I remove drizzle from my application.
npm test
error stack
> drizzle@1.2.5 test /Users/dorian/projects/gambit/web/drizzle
> jest --notify
FAIL test/blocks.test.js
● read from blocks › by listening through websockets › listens for block headers
Please provide an valid Web3 provider
23 | * @returns {Object} A Web3 provider sourced from `global.provider`
24 | */
> 25 | const getWeb3 = (provider = global.provider) => new Web3(provider)
| ^
26 |
27 | /**
28 | * getWeb3Assets deploys a contract on ganache provider
at ProviderResolver.resolve (node_modules/web3-providers/dist/web3-providers.cjs.js:720:13)
at Web3.AbstractWeb3Module (node_modules/web3-core/dist/web3-core.cjs.js:27:51)
at new Web3 (node_modules/web3/dist/web3.cjs.js:30:68)
at getWeb3 (test/utils/helpers.js:25:49)
at Object.<anonymous> (test/blocks.test.js:11:12)
● read from blocks › by listening through websockets › listens for block headers
TypeError: Cannot read property 'eth' of undefined
9 | export function createBlockChannel ({ drizzle, web3, syncAlways }) {
10 | return eventChannel(emit => {
> 11 | const blockEvents = web3.eth
| ^
12 | .subscribe('newBlockHeaders', (error, result) => {
13 | if (error) {
14 | emit({ type: 'BLOCKS_FAILED', error })
at eth (src/blocks/blocksSaga.js:11:30)
at eventChannel (node_modules/redux-saga/lib/internal/channel.js:165:21)
at createBlockChannel (src/blocks/blocksSaga.js:10:10)
at Object.<anonymous> (test/blocks.test.js:19:23)
● read from blocks › by listening through websockets › listens for block headers
TypeError: Cannot read property 'eth' of undefined
21 |
22 | test('listens for block headers', async () => {
> 23 | await web3.eth.sendTransaction({
| ^
24 | from: global.accounts[0],
25 | to: global.accounts[1],
26 | value: 200
at eth (test/blocks.test.js:23:18)
at tryCatch (node_modules/regenerator-runtime/runtime.js:62:40)
at Generator.invoke [as _invoke] (node_modules/regenerator-runtime/runtime.js:296:22)
at Generator.prototype.(anonymous function) [as next] (node_modules/regenerator-runtime/runtime.js:114:21)
at step (node_modules/babel-runtime/helpers/asyncToGenerator.js:17:30)
at node_modules/babel-runtime/helpers/asyncToGenerator.js:35:14
at new F (node_modules/core-js/library/modules/_export.js:36:28)
at Object.<anonymous> (node_modules/babel-runtime/helpers/asyncToGenerator.js:14:12)
● read from blocks › by listening through websockets › unsubscribes from block headers
Please provide an valid Web3 provider
23 | * @returns {Object} A Web3 provider sourced from `global.provider`
24 | */
> 25 | const getWeb3 = (provider = global.provider) => new Web3(provider)
| ^
26 |
27 | /**
28 | * getWeb3Assets deploys a contract on ganache provider
at ProviderResolver.resolve (node_modules/web3-providers/dist/web3-providers.cjs.js:720:13)
at Web3.AbstractWeb3Module (node_modules/web3-core/dist/web3-core.cjs.js:27:51)
at new Web3 (node_modules/web3/dist/web3.cjs.js:30:68)
at getWeb3 (test/utils/helpers.js:25:49)
at Object.<anonymous> (test/blocks.test.js:11:12)
● read from blocks › by listening through websockets › unsubscribes from block headers
TypeError: Cannot read property 'eth' of undefined
9 | export function createBlockChannel ({ drizzle, web3, syncAlways }) {
10 | return eventChannel(emit => {
> 11 | const blockEvents = web3.eth
| ^
12 | .subscribe('newBlockHeaders', (error, result) => {
13 | if (error) {
14 | emit({ type: 'BLOCKS_FAILED', error })
at eth (src/blocks/blocksSaga.js:11:30)
at eventChannel (node_modules/redux-saga/lib/internal/channel.js:165:21)
at createBlockChannel (src/blocks/blocksSaga.js:10:10)
at Object.<anonymous> (test/blocks.test.js:19:23)
● read from blocks › by listening through websockets › unsubscribes from block headers
TypeError: Cannot read property 'take' of undefined
33 |
34 | test('unsubscribes from block headers', () => {
> 35 | blockListener.take(event => {
| ^
36 | expect(event.type).toEqual('@@redux-saga/CHANNEL_END')
37 | })
38 |
at Object.take (test/blocks.test.js:35:21)
● read from blocks › by polling › polls for block headers
Please provide an valid Web3 provider
23 | * @returns {Object} A Web3 provider sourced from `global.provider`
24 | */
> 25 | const getWeb3 = (provider = global.provider) => new Web3(provider)
| ^
26 |
27 | /**
28 | * getWeb3Assets deploys a contract on ganache provider
at ProviderResolver.resolve (node_modules/web3-providers/dist/web3-providers.cjs.js:720:13)
at Web3.AbstractWeb3Module (node_modules/web3-core/dist/web3-core.cjs.js:27:51)
at new Web3 (node_modules/web3/dist/web3.cjs.js:30:68)
at getWeb3 (test/utils/helpers.js:25:49)
at Object.<anonymous> (test/blocks.test.js:11:12)
● read from blocks › by polling › polls for block headers
TypeError: Cannot read property 'eth' of undefined
9 | export function createBlockChannel ({ drizzle, web3, syncAlways }) {
10 | return eventChannel(emit => {
> 11 | const blockEvents = web3.eth
| ^
12 | .subscribe('newBlockHeaders', (error, result) => {
13 | if (error) {
14 | emit({ type: 'BLOCKS_FAILED', error })
at eth (src/blocks/blocksSaga.js:11:30)
at eventChannel (node_modules/redux-saga/lib/internal/channel.js:165:21)
at createBlockChannel (src/blocks/blocksSaga.js:10:10)
at Object.<anonymous> (test/blocks.test.js:47:21)
● read from blocks › by polling › polls for block headers
TypeError: Cannot read property 'eth' of undefined
49 |
50 | test('polls for block headers', async () => {
> 51 | await web3.eth.sendTransaction({
| ^
52 | from: global.accounts[0],
53 | to: global.accounts[1],
54 | value: 200
at eth (test/blocks.test.js:51:18)
at tryCatch (node_modules/regenerator-runtime/runtime.js:62:40)
at Generator.invoke [as _invoke] (node_modules/regenerator-runtime/runtime.js:296:22)
at Generator.prototype.(anonymous function) [as next] (node_modules/regenerator-runtime/runtime.js:114:21)
at step (node_modules/babel-runtime/helpers/asyncToGenerator.js:17:30)
at node_modules/babel-runtime/helpers/asyncToGenerator.js:35:14
at new F (node_modules/core-js/library/modules/_export.js:36:28)
at Object.<anonymous> (node_modules/babel-runtime/helpers/asyncToGenerator.js:14:12)
● read from blocks › by polling › terminates from block polling
Please provide an valid Web3 provider
23 | * @returns {Object} A Web3 provider sourced from `global.provider`
24 | */
> 25 | const getWeb3 = (provider = global.provider) => new Web3(provider)
| ^
26 |
27 | /**
28 | * getWeb3Assets deploys a contract on ganache provider
at ProviderResolver.resolve (node_modules/web3-providers/dist/web3-providers.cjs.js:720:13)
at Web3.AbstractWeb3Module (node_modules/web3-core/dist/web3-core.cjs.js:27:51)
at new Web3 (node_modules/web3/dist/web3.cjs.js:30:68)
at getWeb3 (test/utils/helpers.js:25:49)
at Object.<anonymous> (test/blocks.test.js:11:12)
● read from blocks › by polling › terminates from block polling
TypeError: Cannot read property 'eth' of undefined
9 | export function createBlockChannel ({ drizzle, web3, syncAlways }) {
10 | return eventChannel(emit => {
> 11 | const blockEvents = web3.eth
| ^
12 | .subscribe('newBlockHeaders', (error, result) => {
13 | if (error) {
14 | emit({ type: 'BLOCKS_FAILED', error })
at eth (src/blocks/blocksSaga.js:11:30)
at eventChannel (node_modules/redux-saga/lib/internal/channel.js:165:21)
at createBlockChannel (src/blocks/blocksSaga.js:10:10)
at Object.<anonymous> (test/blocks.test.js:47:21)
● read from blocks › by polling › terminates from block polling
TypeError: Cannot read property 'take' of undefined
61 |
62 | test('terminates from block polling', () => {
> 63 | blockPoller.take(event => {
| ^
64 | expect(event.type).toEqual('@@redux-saga/CHANNEL_END')
65 | })
66 |
at Object.take (test/blocks.test.js:63:19)
FAIL test/contracts/create.test.js
● Creates a contract › with instantiateWeb3Contract Saga
Please provide an valid Web3 provider
23 | * @returns {Object} A Web3 provider sourced from `global.provider`
24 | */
> 25 | const getWeb3 = (provider = global.provider) => new Web3(provider)
| ^
26 |
27 | /**
28 | * getWeb3Assets deploys a contract on ganache provider
at ProviderResolver.resolve (node_modules/web3-providers/dist/web3-providers.cjs.js:720:13)
at Web3.AbstractWeb3Module (node_modules/web3-core/dist/web3-core.cjs.js:27:51)
at new Web3 (node_modules/web3/dist/web3.cjs.js:30:68)
at getWeb3 (test/utils/helpers.js:25:49)
at getWeb3 (test/utils/helpers.js:36:16)
at tryCatch (node_modules/regenerator-runtime/runtime.js:62:40)
at Generator.invoke [as _invoke] (node_modules/regenerator-runtime/runtime.js:296:22)
at Generator.prototype.(anonymous function) [as next] (node_modules/regenerator-runtime/runtime.js:114:21)
at step (node_modules/babel-runtime/helpers/asyncToGenerator.js:17:30)
at node_modules/babel-runtime/helpers/asyncToGenerator.js:35:14
at new F (node_modules/core-js/library/modules/_export.js:36:28)
at node_modules/babel-runtime/helpers/asyncToGenerator.js:14:12
at getWeb3Assets (test/utils/helpers.js:32:7)
at _callee$ (test/contracts/create.test.js:17:51)
at tryCatch (node_modules/regenerator-runtime/runtime.js:62:40)
● Creates a contract › with instantiateWeb3Contract Saga
TypeError: Cannot read property 'subscribe' of undefined
35 | }
36 |
> 37 | const contractInstance = await runSaga(
| ^
38 | mockedStore,
39 | instantiateWeb3Contract,
40 | options
at runSaga (node_modules/redux-saga/lib/internal/runSaga.js:37:35)
at _callee2$ (test/contracts/create.test.js:37:36)
at tryCatch (node_modules/regenerator-runtime/runtime.js:62:40)
at Generator.invoke [as _invoke] (node_modules/regenerator-runtime/runtime.js:296:22)
at Generator.prototype.(anonymous function) [as next] (node_modules/regenerator-runtime/runtime.js:114:21)
at step (node_modules/babel-runtime/helpers/asyncToGenerator.js:17:30)
at node_modules/babel-runtime/helpers/asyncToGenerator.js:35:14
at new F (node_modules/core-js/library/modules/_export.js:36:28)
at Object.<anonymous> (node_modules/babel-runtime/helpers/asyncToGenerator.js:14:12)
● Creates a contract › with instantiateContract Saga
Please provide an valid Web3 provider
23 | * @returns {Object} A Web3 provider sourced from `global.provider`
24 | */
> 25 | const getWeb3 = (provider = global.provider) => new Web3(provider)
| ^
26 |
27 | /**
28 | * getWeb3Assets deploys a contract on ganache provider
at ProviderResolver.resolve (node_modules/web3-providers/dist/web3-providers.cjs.js:720:13)
at Web3.AbstractWeb3Module (node_modules/web3-core/dist/web3-core.cjs.js:27:51)
at new Web3 (node_modules/web3/dist/web3.cjs.js:30:68)
at getWeb3 (test/utils/helpers.js:25:49)
at getWeb3 (test/utils/helpers.js:36:16)
at tryCatch (node_modules/regenerator-runtime/runtime.js:62:40)
at Generator.invoke [as _invoke] (node_modules/regenerator-runtime/runtime.js:296:22)
at Generator.prototype.(anonymous function) [as next] (node_modules/regenerator-runtime/runtime.js:114:21)
at step (node_modules/babel-runtime/helpers/asyncToGenerator.js:17:30)
at node_modules/babel-runtime/helpers/asyncToGenerator.js:35:14
at new F (node_modules/core-js/library/modules/_export.js:36:28)
at node_modules/babel-runtime/helpers/asyncToGenerator.js:14:12
at getWeb3Assets (test/utils/helpers.js:32:7)
at _callee$ (test/contracts/create.test.js:17:51)
at tryCatch (node_modules/regenerator-runtime/runtime.js:62:40)
● Creates a contract › with instantiateContract Saga
TypeError: Cannot read property 'eth' of undefined
66 |
67 | const web3ContractCreator = jest.fn()
> 68 | web3.eth.Contract = web3ContractCreator
| ^
69 |
70 | const contractInstance = await runSaga(
71 | mockedStore,
at eth (test/contracts/create.test.js:68:10)
at tryCatch (node_modules/regenerator-runtime/runtime.js:62:40)
at Generator.invoke [as _invoke] (node_modules/regenerator-runtime/runtime.js:296:22)
at Generator.prototype.(anonymous function) [as next] (node_modules/regenerator-runtime/runtime.js:114:21)
at step (node_modules/babel-runtime/helpers/asyncToGenerator.js:17:30)
at node_modules/babel-runtime/helpers/asyncToGenerator.js:35:14
at new F (node_modules/core-js/library/modules/_export.js:36:28)
at Object.<anonymous> (node_modules/babel-runtime/helpers/asyncToGenerator.js:14:12)
FAIL test/web3.test.js
● Console
console.error src/web3/web3Saga.js:66
Error intializing web3:
console.error src/web3/web3Saga.js:67
Error: Cannot find injected web3 or valid fallback.
at initializeWeb3$ (/Users/dorian/projects/gambit/web/drizzle/src/web3/web3Saga.js:62:13)
at tryCatch (/Users/dorian/projects/gambit/web/drizzle/node_modules/regenerator-runtime/runtime.js:62:40)
at Generator.invoke [as _invoke] (/Users/dorian/projects/gambit/web/drizzle/node_modules/regenerator-runtime/runtime.js:296:22)
at Generator.prototype.(anonymous function) [as next] (/Users/dorian/projects/gambit/web/drizzle/node_modules/regenerator-runtime/runtime.js:114:21)
at next (/Users/dorian/projects/gambit/web/drizzle/node_modules/redux-saga/lib/internal/proc.js:322:27)
at proc (/Users/dorian/projects/gambit/web/drizzle/node_modules/redux-saga/lib/internal/proc.js:281:3)
at runSaga (/Users/dorian/projects/gambit/web/drizzle/node_modules/redux-saga/lib/internal/runSaga.js:59:33)
at _callee$ (/Users/dorian/projects/gambit/web/drizzle/test/web3.test.js:15:28)
at tryCatch (/Users/dorian/projects/gambit/web/drizzle/node_modules/regenerator-runtime/runtime.js:62:40)
at Generator.invoke [as _invoke] (/Users/dorian/projects/gambit/web/drizzle/node_modules/regenerator-runtime/runtime.js:296:22)
at Generator.prototype.(anonymous function) [as next] (/Users/dorian/projects/gambit/web/drizzle/node_modules/regenerator-runtime/runtime.js:114:21)
at step (/Users/dorian/projects/gambit/web/drizzle/node_modules/babel-runtime/helpers/asyncToGenerator.js:17:30)
at /Users/dorian/projects/gambit/web/drizzle/node_modules/babel-runtime/helpers/asyncToGenerator.js:35:14
at new Promise (<anonymous>)
at new F (/Users/dorian/projects/gambit/web/drizzle/node_modules/core-js/library/modules/_export.js:36:28)
at Object.<anonymous> (/Users/dorian/projects/gambit/web/drizzle/node_modules/babel-runtime/helpers/asyncToGenerator.js:14:12)
console.error src/web3/web3Saga.js:85
Error fetching network ID:
console.error src/web3/web3Saga.js:86
TypeError: Cannot read property 'eth' of undefined
at eth (/Users/dorian/projects/gambit/web/drizzle/src/web3/web3Saga.js:77:39)
at tryCatch (/Users/dorian/projects/gambit/web/drizzle/node_modules/regenerator-runtime/runtime.js:62:40)
at Generator.invoke [as _invoke] (/Users/dorian/projects/gambit/web/drizzle/node_modules/regenerator-runtime/runtime.js:296:22)
at Generator.prototype.(anonymous function) [as next] (/Users/dorian/projects/gambit/web/drizzle/node_modules/regenerator-runtime/runtime.js:114:21)
at next (/Users/dorian/projects/gambit/web/drizzle/node_modules/redux-saga/lib/internal/proc.js:322:27)
at proc (/Users/dorian/projects/gambit/web/drizzle/node_modules/redux-saga/lib/internal/proc.js:281:3)
at runSaga (/Users/dorian/projects/gambit/web/drizzle/node_modules/redux-saga/lib/internal/runSaga.js:59:33)
at _callee3$ (/Users/dorian/projects/gambit/web/drizzle/test/web3.test.js:33:13)
at tryCatch (/Users/dorian/projects/gambit/web/drizzle/node_modules/regenerator-runtime/runtime.js:62:40)
at Generator.invoke [as _invoke] (/Users/dorian/projects/gambit/web/drizzle/node_modules/regenerator-runtime/runtime.js:296:22)
at Generator.prototype.(anonymous function) [as next] (/Users/dorian/projects/gambit/web/drizzle/node_modules/regenerator-runtime/runtime.js:114:21)
at step (/Users/dorian/projects/gambit/web/drizzle/node_modules/babel-runtime/helpers/asyncToGenerator.js:17:30)
at /Users/dorian/projects/gambit/web/drizzle/node_modules/babel-runtime/helpers/asyncToGenerator.js:35:14
at new Promise (<anonymous>)
at new F (/Users/dorian/projects/gambit/web/drizzle/node_modules/core-js/library/modules/_export.js:36:28)
at Object.<anonymous> (/Users/dorian/projects/gambit/web/drizzle/node_modules/babel-runtime/helpers/asyncToGenerator.js:14:12)
console.log src/web3/web3Saga.js:21
Window Ethereum Defined
console.error src/web3/web3Saga.js:85
Error fetching network ID:
console.error src/web3/web3Saga.js:86
TypeError: Cannot read property 'eth' of undefined
at eth (/Users/dorian/projects/gambit/web/drizzle/src/web3/web3Saga.js:77:39)
at tryCatch (/Users/dorian/projects/gambit/web/drizzle/node_modules/regenerator-runtime/runtime.js:62:40)
at Generator.invoke [as _invoke] (/Users/dorian/projects/gambit/web/drizzle/node_modules/regenerator-runtime/runtime.js:296:22)
at Generator.prototype.(anonymous function) [as next] (/Users/dorian/projects/gambit/web/drizzle/node_modules/regenerator-runtime/runtime.js:114:21)
at next (/Users/dorian/projects/gambit/web/drizzle/node_modules/redux-saga/lib/internal/proc.js:322:27)
at proc (/Users/dorian/projects/gambit/web/drizzle/node_modules/redux-saga/lib/internal/proc.js:281:3)
at runSaga (/Users/dorian/projects/gambit/web/drizzle/node_modules/redux-saga/lib/internal/runSaga.js:59:33)
at _callee6$ (/Users/dorian/projects/gambit/web/drizzle/test/web3.test.js:69:13)
at tryCatch (/Users/dorian/projects/gambit/web/drizzle/node_modules/regenerator-runtime/runtime.js:62:40)
at Generator.invoke [as _invoke] (/Users/dorian/projects/gambit/web/drizzle/node_modules/regenerator-runtime/runtime.js:296:22)
at Generator.prototype.(anonymous function) [as next] (/Users/dorian/projects/gambit/web/drizzle/node_modules/regenerator-runtime/runtime.js:114:21)
at step (/Users/dorian/projects/gambit/web/drizzle/node_modules/babel-runtime/helpers/asyncToGenerator.js:17:30)
at /Users/dorian/projects/gambit/web/drizzle/node_modules/babel-runtime/helpers/asyncToGenerator.js:35:14
at new Promise (<anonymous>)
at new F (/Users/dorian/projects/gambit/web/drizzle/node_modules/core-js/library/modules/_export.js:36:28)
at Object.<anonymous> (/Users/dorian/projects/gambit/web/drizzle/node_modules/babel-runtime/helpers/asyncToGenerator.js:14:12)
console.log src/web3/web3Saga.js:36
Window Web3 Undefined
console.error src/web3/web3Saga.js:66
Error intializing web3:
console.error src/web3/web3Saga.js:67
TypeError: Cannot read property 'currentProvider' of undefined
at currentProvider (/Users/dorian/projects/gambit/web/drizzle/src/web3/web3Saga.js:39:28)
at tryCatch (/Users/dorian/projects/gambit/web/drizzle/node_modules/regenerator-runtime/runtime.js:62:40)
at Generator.invoke [as _invoke] (/Users/dorian/projects/gambit/web/drizzle/node_modules/regenerator-runtime/runtime.js:296:22)
at Generator.prototype.(anonymous function) [as next] (/Users/dorian/projects/gambit/web/drizzle/node_modules/regenerator-runtime/runtime.js:114:21)
at next (/Users/dorian/projects/gambit/web/drizzle/node_modules/redux-saga/lib/internal/proc.js:322:27)
at proc (/Users/dorian/projects/gambit/web/drizzle/node_modules/redux-saga/lib/internal/proc.js:281:3)
at runSaga (/Users/dorian/projects/gambit/web/drizzle/node_modules/redux-saga/lib/internal/runSaga.js:59:33)
at _callee7$ (/Users/dorian/projects/gambit/web/drizzle/test/web3.test.js:80:28)
at tryCatch (/Users/dorian/projects/gambit/web/drizzle/node_modules/regenerator-runtime/runtime.js:62:40)
at Generator.invoke [as _invoke] (/Users/dorian/projects/gambit/web/drizzle/node_modules/regenerator-runtime/runtime.js:296:22)
at Generator.prototype.(anonymous function) [as next] (/Users/dorian/projects/gambit/web/drizzle/node_modules/regenerator-runtime/runtime.js:114:21)
at step (/Users/dorian/projects/gambit/web/drizzle/node_modules/babel-runtime/helpers/asyncToGenerator.js:17:30)
at /Users/dorian/projects/gambit/web/drizzle/node_modules/babel-runtime/helpers/asyncToGenerator.js:35:14
at new Promise (<anonymous>)
at new F (/Users/dorian/projects/gambit/web/drizzle/node_modules/core-js/library/modules/_export.js:36:28)
at Object.<anonymous> (/Users/dorian/projects/gambit/web/drizzle/node_modules/babel-runtime/helpers/asyncToGenerator.js:14:12)
console.error src/web3/web3Saga.js:85
Error fetching network ID:
console.error src/web3/web3Saga.js:86
TypeError: Cannot read property 'eth' of undefined
at eth (/Users/dorian/projects/gambit/web/drizzle/src/web3/web3Saga.js:77:39)
at tryCatch (/Users/dorian/projects/gambit/web/drizzle/node_modules/regenerator-runtime/runtime.js:62:40)
at Generator.invoke [as _invoke] (/Users/dorian/projects/gambit/web/drizzle/node_modules/regenerator-runtime/runtime.js:296:22)
at Generator.prototype.(anonymous function) [as next] (/Users/dorian/projects/gambit/web/drizzle/node_modules/regenerator-runtime/runtime.js:114:21)
at next (/Users/dorian/projects/gambit/web/drizzle/node_modules/redux-saga/lib/internal/proc.js:322:27)
at proc (/Users/dorian/projects/gambit/web/drizzle/node_modules/redux-saga/lib/internal/proc.js:281:3)
at runSaga (/Users/dorian/projects/gambit/web/drizzle/node_modules/redux-saga/lib/internal/runSaga.js:59:33)
at _callee9$ (/Users/dorian/projects/gambit/web/drizzle/test/web3.test.js:90:13)
at tryCatch (/Users/dorian/projects/gambit/web/drizzle/node_modules/regenerator-runtime/runtime.js:62:40)
at Generator.invoke [as _invoke] (/Users/dorian/projects/gambit/web/drizzle/node_modules/regenerator-runtime/runtime.js:296:22)
at Generator.prototype.(anonymous function) [as next] (/Users/dorian/projects/gambit/web/drizzle/node_modules/regenerator-runtime/runtime.js:114:21)
at step (/Users/dorian/projects/gambit/web/drizzle/node_modules/babel-runtime/helpers/asyncToGenerator.js:17:30)
at /Users/dorian/projects/gambit/web/drizzle/node_modules/babel-runtime/helpers/asyncToGenerator.js:35:14
at new Promise (<anonymous>)
at new F (/Users/dorian/projects/gambit/web/drizzle/node_modules/core-js/library/modules/_export.js:36:28)
at Object.<anonymous> (/Users/dorian/projects/gambit/web/drizzle/node_modules/babel-runtime/helpers/asyncToGenerator.js:14:12)
console.log src/web3/web3Saga.js:44
Trying Fall Back
console.log src/web3/web3Saga.js:45
http://127.0.0.1:8545
● Loads Web3 › with customProvider › get web3
expect(received).toEqual(expected)
Expected value to equal:
"WEB3_INITIALIZED"
Received:
"WEB3_FAILED"
20 | test('get web3', async () => {
21 | // First action dispatched
> 22 | expect(dispatchedActions[0].type).toEqual(Action.WEB3_INITIALIZED)
| ^
23 |
24 | // is it a Web3 object?
25 | expect(resolvedWeb3).toHaveProperty('currentProvider')
at toEqual (test/web3.test.js:22:41)
at tryCatch (node_modules/regenerator-runtime/runtime.js:62:40)
at Generator.invoke [as _invoke] (node_modules/regenerator-runtime/runtime.js:296:22)
at Generator.prototype.(anonymous function) [as next] (node_modules/regenerator-runtime/runtime.js:114:21)
at step (node_modules/babel-runtime/helpers/asyncToGenerator.js:17:30)
at node_modules/babel-runtime/helpers/asyncToGenerator.js:35:14
at new F (node_modules/core-js/library/modules/_export.js:36:28)
at Object.<anonymous> (node_modules/babel-runtime/helpers/asyncToGenerator.js:14:12)
● Loads Web3 › with customProvider › get network ID
expect(received).toEqual(expected)
Expected value to equal:
6777
Received:
undefined
Difference:
Comparing two different types of values. Expected number but received undefined.
34 |
35 | // Second action dispatched
> 36 | expect(dispatchedActions[1].networkId).toEqual(global.defaultNetworkId)
| ^
37 | })
38 | })
39 |
at toEqual (test/web3.test.js:36:46)
at tryCatch (node_modules/regenerator-runtime/runtime.js:62:40)
at Generator.invoke [as _invoke] (node_modules/regenerator-runtime/runtime.js:296:22)
at Generator.prototype.(anonymous function) [as next] (node_modules/regenerator-runtime/runtime.js:114:21)
at step (node_modules/babel-runtime/helpers/asyncToGenerator.js:17:30)
at node_modules/babel-runtime/helpers/asyncToGenerator.js:28:13
● Loads Web3 › with ethereum › get web3
TypeError: Cannot read property 'fn' of undefined
54 |
55 | test('get web3', async () => {
> 56 | expect(gen.next().value.CALL.fn).toBe(mockedEthereumEnable)
| ^
57 | expect(gen.next().value.PUT.action.type).toBe(Action.WEB3_INITIALIZED)
58 |
59 | // is it a Web3 object?
at _callee5$ (test/web3.test.js:56:14)
at tryCatch (node_modules/regenerator-runtime/runtime.js:62:40)
at Generator.invoke [as _invoke] (node_modules/regenerator-runtime/runtime.js:296:22)
at Generator.prototype.(anonymous function) [as next] (node_modules/regenerator-runtime/runtime.js:114:21)
at step (node_modules/babel-runtime/helpers/asyncToGenerator.js:17:30)
at node_modules/babel-runtime/helpers/asyncToGenerator.js:35:14
at new F (node_modules/core-js/library/modules/_export.js:36:28)
at Object.<anonymous> (node_modules/babel-runtime/helpers/asyncToGenerator.js:14:12)
● Loads Web3 › with ethereum › get network ID
expect(received).toEqual(expected)
Expected value to equal:
6777
Received:
undefined
Difference:
Comparing two different types of values. Expected number but received undefined.
68 | test('get network ID', async () => {
69 | await runSaga(mockedStore, getNetworkId, { web3: resolvedWeb3 }).done
> 70 | expect(dispatchedActions[0].networkId).toEqual(global.defaultNetworkId)
| ^
71 | })
72 | })
73 |
at toEqual (test/web3.test.js:70:46)
at tryCatch (node_modules/regenerator-runtime/runtime.js:62:40)
at Generator.invoke [as _invoke] (node_modules/regenerator-runtime/runtime.js:296:22)
at Generator.prototype.(anonymous function) [as next] (node_modules/regenerator-runtime/runtime.js:114:21)
at step (node_modules/babel-runtime/helpers/asyncToGenerator.js:17:30)
at node_modules/babel-runtime/helpers/asyncToGenerator.js:28:13
● Loads Web3 › with injected web3 › get web3
expect(received).toEqual(expected)
Expected value to equal:
"WEB3_INITIALIZED"
Received:
"WEB3_FAILED"
84 | test('get web3', async () => {
85 | // First action dispatched
> 86 | expect(dispatchedActions[0].type).toEqual(Action.WEB3_INITIALIZED)
| ^
87 | })
88 |
89 | test('get network ID', async () => {
at toEqual (test/web3.test.js:86:41)
at tryCatch (node_modules/regenerator-runtime/runtime.js:62:40)
at Generator.invoke [as _invoke] (node_modules/regenerator-runtime/runtime.js:296:22)
at Generator.prototype.(anonymous function) [as next] (node_modules/regenerator-runtime/runtime.js:114:21)
at step (node_modules/babel-runtime/helpers/asyncToGenerator.js:17:30)
at node_modules/babel-runtime/helpers/asyncToGenerator.js:35:14
at new F (node_modules/core-js/library/modules/_export.js:36:28)
at Object.<anonymous> (node_modules/babel-runtime/helpers/asyncToGenerator.js:14:12)
● Loads Web3 › with injected web3 › get network ID
expect(received).toEqual(expected)
Expected value to equal:
6777
Received:
undefined
Difference:
Comparing two different types of values. Expected number but received undefined.
91 |
92 | // Second action dispatched
> 93 | expect(dispatchedActions[1].networkId).toEqual(global.defaultNetworkId)
| ^
94 |
95 | // is it a Web3 object?
96 | expect(resolvedWeb3).toHaveProperty('currentProvider')
at toEqual (test/web3.test.js:93:46)
at tryCatch (node_modules/regenerator-runtime/runtime.js:62:40)
at Generator.invoke [as _invoke] (node_modules/regenerator-runtime/runtime.js:296:22)
at Generator.prototype.(anonymous function) [as next] (node_modules/regenerator-runtime/runtime.js:114:21)
at step (node_modules/babel-runtime/helpers/asyncToGenerator.js:17:30)
at node_modules/babel-runtime/helpers/asyncToGenerator.js:28:13
● Loads Web3 › with websocket fallback web3 › get web3
TypeError: Duplicated method constructor. This method is defined as RPC call and as Object method.
127 |
128 | // is it a Web3 object?
> 129 | expect(resolvedWeb3).toHaveProperty('currentProvider')
| ^
130 | expect(resolvedWeb3).toHaveProperty('BatchRequest')
131 | expect(resolvedWeb3).toHaveProperty('version')
132 | expect(resolvedWeb3).toHaveProperty('utils')
at Object.get (node_modules/web3-core-method/dist/web3-core-method.cjs.js:231:17)
at Object.<anonymous>.exports.test.val [as test] (node_modules/pretty-format/build/plugins/dom_element.js:34:7)
at findPlugin (node_modules/pretty-format/build/index.js:318:22)
at printer (node_modules/pretty-format/build/index.js:330:18)
at printObjectProperties (node_modules/pretty-format/build/collections.js:170:21)
at printComplexValue (node_modules/pretty-format/build/index.js:270:48)
at prettyFormat (node_modules/pretty-format/build/index.js:499:10)
at pass (node_modules/expect/build/matchers.js:617:54)
at getMessage (node_modules/expect/build/index.js:143:15)
at processResult (node_modules/expect/build/index.js:267:25)
at Object.throwingMatcher [as toHaveProperty] (node_modules/expect/build/index.js:331:16)
at toHaveProperty (test/web3.test.js:129:28)
at tryCatch (node_modules/regenerator-runtime/runtime.js:62:40)
at Generator.invoke [as _invoke] (node_modules/regenerator-runtime/runtime.js:296:22)
FAIL test/accountBalances.test.js
● Console
console.error src/accountBalances/accountBalancesSaga.js:20
Error fetching account 0x8aDB46251E9cd45b5027501766531825C04a2E06 balance:
console.error src/accountBalances/accountBalancesSaga.js:21
TypeError: Cannot read property 'eth' of undefined
at getAccountBalances$ (/Users/dorian/projects/gambit/web/drizzle/src/accountBalances/accountBalancesSaga.js:50:42)
at tryCatch (/Users/dorian/projects/gambit/web/drizzle/node_modules/regenerator-runtime/runtime.js:62:40)
at Generator.invoke [as _invoke] (/Users/dorian/projects/gambit/web/drizzle/node_modules/regenerator-runtime/runtime.js:296:22)
at Generator.prototype.(anonymous function) [as next] (/Users/dorian/projects/gambit/web/drizzle/node_modules/regenerator-runtime/runtime.js:114:21)
at next (/Users/dorian/projects/gambit/web/drizzle/node_modules/redux-saga/lib/internal/proc.js:322:27)
at currCb (/Users/dorian/projects/gambit/web/drizzle/node_modules/redux-saga/lib/internal/proc.js:399:7)
at runSelectEffect (/Users/dorian/projects/gambit/web/drizzle/node_modules/redux-saga/lib/internal/proc.js:710:7)
at runEffect (/Users/dorian/projects/gambit/web/drizzle/node_modules/redux-saga/lib/internal/proc.js:446:761)
at next (/Users/dorian/projects/gambit/web/drizzle/node_modules/redux-saga/lib/internal/proc.js:326:9)
at proc (/Users/dorian/projects/gambit/web/drizzle/node_modules/redux-saga/lib/internal/proc.js:281:3)
at runSaga (/Users/dorian/projects/gambit/web/drizzle/node_modules/redux-saga/lib/internal/runSaga.js:59:33)
at _callee$ (/Users/dorian/projects/gambit/web/drizzle/test/accountBalances.test.js:48:43)
at tryCatch (/Users/dorian/projects/gambit/web/drizzle/node_modules/regenerator-runtime/runtime.js:62:40)
at Generator.invoke [as _invoke] (/Users/dorian/projects/gambit/web/drizzle/node_modules/regenerator-runtime/runtime.js:296:22)
at Generator.prototype.(anonymous function) [as next] (/Users/dorian/projects/gambit/web/drizzle/node_modules/regenerator-runtime/runtime.js:114:21)
at step (/Users/dorian/projects/gambit/web/drizzle/node_modules/babel-runtime/helpers/asyncToGenerator.js:17:30)
● Account Balance Saga › Retrieves account balances
Please provide an valid Web3 provider
23 | * @returns {Object} A Web3 provider sourced from `global.provider`
24 | */
> 25 | const getWeb3 = (provider = global.provider) => new Web3(provider)
| ^
26 |
27 | /**
28 | * getWeb3Assets deploys a contract on ganache provider
at ProviderResolver.resolve (node_modules/web3-providers/dist/web3-providers.cjs.js:720:13)
at Web3.AbstractWeb3Module (node_modules/web3-core/dist/web3-core.cjs.js:27:51)
at new Web3 (node_modules/web3/dist/web3.cjs.js:30:68)
at getWeb3 (test/utils/helpers.js:25:49)
at Object.<anonymous> (test/accountBalances.test.js:11:12)
● Account Balance Saga › Retrieves account balances
expect(received).toEqual(expected)
Expected value to equal:
"100000000000000000000"
Received:
undefined
Difference:
Comparing two different types of values. Expected string but received undefined.
16 |
17 | const expectedBalance = String(1e20) // 100 Eth, defaultBalance
> 18 | expect(dispatchedActions[0].accountBalance).toEqual(expectedBalance)
| ^
19 | })
20 | })
21 |
at toEqual (test/accountBalances.test.js:18:49)
at tryCatch (node_modules/regenerator-runtime/runtime.js:62:40)
at Generator.invoke [as _invoke] (node_modules/regenerator-runtime/runtime.js:296:22)
at Generator.prototype.(anonymous function) [as next] (node_modules/regenerator-runtime/runtime.js:114:21)
at step (node_modules/babel-runtime/helpers/asyncToGenerator.js:17:30)
at node_modules/babel-runtime/helpers/asyncToGenerator.js:28:13
FAIL test/accounts.test.js
● Console
console.error src/accounts/accountsSaga.js:22
Error fetching accounts:
console.error src/accounts/accountsSaga.js:23
TypeError: Cannot read property 'eth' of undefined
at getAccounts$ (/Users/dorian/projects/gambit/web/drizzle/src/accounts/accountsSaga.js:39:42)
at tryCatch (/Users/dorian/projects/gambit/web/drizzle/node_modules/regenerator-runtime/runtime.js:62:40)
at Generator.invoke [as _invoke] (/Users/dorian/projects/gambit/web/drizzle/node_modules/regenerator-runtime/runtime.js:296:22)
at Generator.prototype.(anonymous function) [as next] (/Users/dorian/projects/gambit/web/drizzle/node_modules/regenerator-runtime/runtime.js:114:21)
at next (/Users/dorian/projects/gambit/web/drizzle/node_modules/redux-saga/lib/internal/proc.js:322:27)
at proc (/Users/dorian/projects/gambit/web/drizzle/node_modules/redux-saga/lib/internal/proc.js:281:3)
at runSaga (/Users/dorian/projects/gambit/web/drizzle/node_modules/redux-saga/lib/internal/runSaga.js:59:33)
at _callee$ (/Users/dorian/projects/gambit/web/drizzle/test/accounts.test.js:46:43)
at tryCatch (/Users/dorian/projects/gambit/web/drizzle/node_modules/regenerator-runtime/runtime.js:62:40)
at Generator.invoke [as _invoke] (/Users/dorian/projects/gambit/web/drizzle/node_modules/regenerator-runtime/runtime.js:296:22)
at Generator.prototype.(anonymous function) [as next] (/Users/dorian/projects/gambit/web/drizzle/node_modules/regenerator-runtime/runtime.js:114:21)
at step (/Users/dorian/projects/gambit/web/drizzle/node_modules/babel-runtime/helpers/asyncToGenerator.js:17:30)
at /Users/dorian/projects/gambit/web/drizzle/node_modules/babel-runtime/helpers/asyncToGenerator.js:35:14
at new Promise (<anonymous>)
at new F (/Users/dorian/projects/gambit/web/drizzle/node_modules/core-js/library/modules/_export.js:36:28)
at Object.<anonymous> (/Users/dorian/projects/gambit/web/drizzle/node_modules/babel-runtime/helpers/asyncToGenerator.js:14:12)
● Accounts Saga › retrieves Metamask accounts
Please provide an valid Web3 provider
23 | * @returns {Object} A Web3 provider sourced from `global.provider`
24 | */
> 25 | const getWeb3 = (provider = global.provider) => new Web3(provider)
| ^
26 |
27 | /**
28 | * getWeb3Assets deploys a contract on ganache provider
at ProviderResolver.resolve (node_modules/web3-providers/dist/web3-providers.cjs.js:720:13)
at Web3.AbstractWeb3Module (node_modules/web3-core/dist/web3-core.cjs.js:27:51)
at new Web3 (node_modules/web3/dist/web3.cjs.js:30:68)
at getWeb3 (test/utils/helpers.js:25:49)
at Object.<anonymous> (test/accounts.test.js:10:12)
● Accounts Saga › retrieves Metamask accounts
expect(received)[.not].toHaveLength(length)
Expected value to have a 'length' property that is a number. Received:
undefined
13 | test('retrieves Metamask accounts', async () => {
14 | await runSaga(mockedStore, getAccounts, { web3 }).done
> 15 | expect(dispatchedActions[0]['accounts']).toHaveLength(
| ^
16 | global.accounts.length
17 | )
18 | })
at toHaveLength (test/accounts.test.js:15:46)
at tryCatch (node_modules/regenerator-runtime/runtime.js:62:40)
at Generator.invoke [as _invoke] (node_modules/regenerator-runtime/runtime.js:296:22)
at Generator.prototype.(anonymous function) [as next] (node_modules/regenerator-runtime/runtime.js:114:21)
at step (node_modules/babel-runtime/helpers/asyncToGenerator.js:17:30)
at node_modules/babel-runtime/helpers/asyncToGenerator.js:28:13
Test Suites: 5 failed, 5 total
Tests: 15 failed, 1 passed, 16 total
Snapshots: 0 total
Time: 4.956s
Ran all test suites.
npm ERR! Test failed. See above for more details.
deniss-mbp-2:drizzle dorian$
This should be fixed in v1.3.3 (locked the web3 version to beta.35)--can you confirm?
The problem is that web3 35 doesn’t give transaction receipts when deploying. This issue was fixed in 41. Hence why you need to upgrade to 41. Or maybe I’m the only one with this issue?
It was my error from upgrading my repo on accident.
I was updating the repo to the current version of web3-beta-41 and 15 out of 16 jest tests fail.
To reproduce the issue, clone repo on run
npm install web3
Then run npm test.