ocean-subgraph/test/integration/ZEnding.test.ts

46 lines
1.2 KiB
TypeScript

/* eslint-disable prefer-destructuring */
import { assert, use } from 'chai'
import spies from 'chai-spies'
import Web3 from 'web3'
const fetch = require('cross-fetch')
const web3 = new Web3('http://127.0.0.1:8545')
const subgraphUrl =
'http://localhost:9000/subgraphs/name/oceanprotocol/ocean-subgraph'
function sleep(ms: number) {
return new Promise((resolve) => {
setTimeout(resolve, ms)
})
}
use(spies)
describe('Ending tests', () => {
let result: any
let lastblock
it('Get Graph status', async () => {
lastblock = await web3.eth.getBlockNumber()
await sleep(3000) // let graph ingest our last transactions
const query = {
query: `query {
_meta{hasIndexingErrors,
deployment,
block{number}
}
}`
}
const response = await fetch(subgraphUrl, {
method: 'POST',
body: JSON.stringify(query)
})
result = await response.json()
})
it('Make sure that graph has no index errors', async () => {
assert(result.data._meta.hasIndexingErrors == false)
})
it('Make sure that graph has synced to last block', async () => {
assert(result.data._meta.block.number >= lastblock)
})
})