1
0
mirror of https://github.com/oceanprotocol-archive/squid-js.git synced 2024-02-02 15:31:51 +01:00
squid-js/test/ocean/OceanCompute.test.ts

49 lines
1.3 KiB
TypeScript

import { assert, spy, use } from 'chai'
import spies from 'chai-spies'
import { Ocean } from '../../src/ocean/Ocean'
import config from '../config'
import { Account } from '../../src/squid'
import { OceanCompute } from '../../src/ocean/OceanCompute'
use(spies)
const responsify = async data => ({
ok: true,
json: () => Promise.resolve(data)
})
describe('OceanCompute', () => {
let ocean: Ocean
let account: Account
let compute: OceanCompute
before(async () => {
ocean = await Ocean.getInstance(config)
;[account] = await ocean.accounts.list()
compute = ocean.compute // eslint-disable-line prefer-destructuring
})
afterEach(() => {
spy.restore()
})
describe('#start()', () => {
it('should start a new job', async () => {
spy.on(ocean.utils.fetch, 'post', () => responsify({ jobId: 'my-job-id' }))
const response = await compute.start(account, 'xxx', 'xxx')
assert(response.jobId === 'my-job-id')
})
})
describe('#stop()', () => {
it('should stop a job', async () => {
spy.on(ocean.utils.fetch, 'put', () => responsify({ status: 6 }))
const response = await compute.stop(account, 'xxx', 'xxx')
assert(response.status === 6)
})
})
})