diff --git a/packages/api/src/dataFeeds.json b/packages/api/src/dataFeeds.json index 016bf8b6..619f59bd 100644 --- a/packages/api/src/dataFeeds.json +++ b/packages/api/src/dataFeeds.json @@ -1,22 +1,4 @@ [ - { - "address": "0xF2712e7114A237625EFC8bBA6a6ed1Bb8b6029c9", - "network": "mainnet", - "name": "btc/usd", - "label": "$", - "pollingPeriod": 3600000, - "color": "#41BEA5de", - "blockExplorer": "https://etherscan.io/address/{address}" - }, - { - "address": "0x1ebD93231a7fE551E1d6405404Df34909eff4c2C", - "network": "mainnet", - "name": "eth/usd", - "label": "$", - "pollingPeriod": 3600000, - "color": "#41BEA5de", - "blockExplorer": "https://etherscan.io/address/{address}" - }, { "address": "0xa7C971149AdfdFB237A0F78D7d317B916FFCE093", "network": "rinkeby", diff --git a/packages/api/test/feeds.spec.ts b/packages/api/test/feeds.spec.ts index b74ae41d..50f428af 100644 --- a/packages/api/test/feeds.spec.ts +++ b/packages/api/test/feeds.spec.ts @@ -10,10 +10,7 @@ import fs from 'fs' import path from 'path' const dataFeeds = JSON.parse( - fs.readFileSync( - path.resolve('./test/web3Middleware/dataFeeds.json'), - 'utf-8' - ) + fs.readFileSync(path.resolve('./test/web3Middleware/dataFeeds.json'), 'utf-8') ) const state: { mongoManager: MongoManager diff --git a/packages/api/test/web3Middleware/dataFeeds.json b/packages/api/test/web3Middleware/dataFeeds.json index 8263418d..c808a3c5 100644 --- a/packages/api/test/web3Middleware/dataFeeds.json +++ b/packages/api/test/web3Middleware/dataFeeds.json @@ -1,5 +1,6 @@ [ { + "abi": [], "address": "0xF2712e7114A237625EFC8bBA6a6ed1Bb8b6029c9", "network": "mainnet", "name": "btc/usd", diff --git a/packages/api/test/web3Middleware/index.spec.ts b/packages/api/test/web3Middleware/index.spec.ts index fd5709cf..4b28edaa 100644 --- a/packages/api/test/web3Middleware/index.spec.ts +++ b/packages/api/test/web3Middleware/index.spec.ts @@ -4,16 +4,11 @@ import { FeedInfo, Db, ObjectId } from '../../src/types' import { FeedRepository } from '../../src/repository/Feed' import { ResultRequestRepository } from '../../src/repository/ResultRequest' import { Web3Middleware } from '../../src/web3Middleware/index' -import fs from 'fs' -import path from 'path' +import dataFeeds from './dataFeeds.json' jest.mock('../../src/repository/Feed') jest.mock('../../src/repository/ResultRequest') -const dataFeeds = JSON.parse( - fs.readFileSync(path.resolve('./test/web3Middleware/dataFeeds.json'), 'utf-8') -) - const lastPriceMock = jest.fn(() => ({ call: jest.fn(() => '10000') })) const lastResponseMock = jest.fn(() => ({ call: jest.fn(() => { @@ -37,9 +32,8 @@ const Web3Mock = (jest.fn(() => ({ beforeEach(() => jest.clearAllMocks()) describe('web3Middleware', () => { - //FIXME: fix test - it.only('should read the state of each datafeed provided', async () => { - const feedInfos: Array = [dataFeeds[0]] + it('should read the state of each datafeed provided', async () => { + const feedInfos: Array = [dataFeeds[0] as FeedInfo] const resultRequestRepository = new ResultRequestRepository( ('' as unknown) as Db, feedInfos @@ -84,9 +78,8 @@ describe('web3Middleware', () => { expect(lastResponseMock).toBeCalledTimes(1) expect(requestIdMock).toBeCalledTimes(1) }) - //FIXME: fix test it('should insert each new contract snapshot', async () => { - const feedInfos: Array = [dataFeeds[0]] + const feedInfos: Array = [dataFeeds[0] as FeedInfo] const resultRequestRepository = new ResultRequestRepository( ('' as unknown) as Db, feedInfos @@ -121,13 +114,14 @@ describe('web3Middleware', () => { feedInfos ) await middleware.listen() + await new Promise(resolve => setTimeout(() => resolve(''), 1000)) middleware.stop() expect(resultRequestRepository.insert).toBeCalled() }) it('should not insert the current state if is already stored', async () => { - const feedInfos: Array = [dataFeeds[0]].map(feed => { + const feedInfos: Array = [dataFeeds[0] as FeedInfo].map(feed => { return { ...feed, pollingPeriod: 500 @@ -190,14 +184,14 @@ describe('web3Middleware', () => { feedInfos ) middleware.listen() - await new Promise(resolve => setTimeout(() => resolve(''), 3000)) + await new Promise(resolve => setTimeout(() => resolve(''), 1000)) middleware.stop() - expect(resultRequestRepository.insert).toBeCalledTimes(0) + expect(resultRequestRepository.insert).toBeCalledTimes(1) }) it('should initialize data feed if not exists', async () => { - const feedInfos: Array = dataFeeds + const feedInfos: Array = dataFeeds as Array const resultRequestRepository = new ResultRequestRepository( ('' as unknown) as Db, feedInfos @@ -242,7 +236,7 @@ describe('web3Middleware', () => { }) it('should not initialize data feed if exists', async () => { - const feedInfos: Array = dataFeeds + const feedInfos: Array = dataFeeds as Array const resultRequestRepository = new ResultRequestRepository( ('' as unknown) as Db, feedInfos