Skip to content

Commit

Permalink
fix(api): tests and remove mainnet priceFeed
Browse files Browse the repository at this point in the history
  • Loading branch information
gabaldon committed Aug 27, 2021
1 parent f322c2d commit 05f863c
Show file tree
Hide file tree
Showing 4 changed files with 12 additions and 38 deletions.
18 changes: 0 additions & 18 deletions packages/api/src/dataFeeds.json
Original file line number Diff line number Diff line change
@@ -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",
Expand Down
5 changes: 1 addition & 4 deletions packages/api/test/feeds.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
1 change: 1 addition & 0 deletions packages/api/test/web3Middleware/dataFeeds.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
[
{
"abi": [],
"address": "0xF2712e7114A237625EFC8bBA6a6ed1Bb8b6029c9",
"network": "mainnet",
"name": "btc/usd",
Expand Down
26 changes: 10 additions & 16 deletions packages/api/test/web3Middleware/index.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -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(() => {
Expand All @@ -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<FeedInfo> = [dataFeeds[0]]
it('should read the state of each datafeed provided', async () => {
const feedInfos: Array<FeedInfo> = [dataFeeds[0] as FeedInfo]
const resultRequestRepository = new ResultRequestRepository(
('' as unknown) as Db,
feedInfos
Expand Down Expand Up @@ -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<FeedInfo> = [dataFeeds[0]]
const feedInfos: Array<FeedInfo> = [dataFeeds[0] as FeedInfo]
const resultRequestRepository = new ResultRequestRepository(
('' as unknown) as Db,
feedInfos
Expand Down Expand Up @@ -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<FeedInfo> = [dataFeeds[0]].map(feed => {
const feedInfos: Array<FeedInfo> = [dataFeeds[0] as FeedInfo].map(feed => {
return {
...feed,
pollingPeriod: 500
Expand Down Expand Up @@ -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<FeedInfo> = dataFeeds
const feedInfos: Array<FeedInfo> = dataFeeds as Array<FeedInfo>
const resultRequestRepository = new ResultRequestRepository(
('' as unknown) as Db,
feedInfos
Expand Down Expand Up @@ -242,7 +236,7 @@ describe('web3Middleware', () => {
})

it('should not initialize data feed if exists', async () => {
const feedInfos: Array<FeedInfo> = dataFeeds
const feedInfos: Array<FeedInfo> = dataFeeds as Array<FeedInfo>
const resultRequestRepository = new ResultRequestRepository(
('' as unknown) as Db,
feedInfos
Expand Down

0 comments on commit 05f863c

Please sign in to comment.