mirror of
https://github.com/oceanprotocol/ocean.js.git
synced 2024-11-26 20:39:05 +01:00
more test fixes
This commit is contained in:
parent
47d1f4d010
commit
f8c1cfff7b
20
test/unit/helpers.ts
Normal file
20
test/unit/helpers.ts
Normal file
@ -0,0 +1,20 @@
|
||||
import { DDO } from '../../src/lib'
|
||||
|
||||
const responsify = async (data) => ({
|
||||
ok: true,
|
||||
json: () => Promise.resolve(data)
|
||||
})
|
||||
|
||||
const getSearchResults = (
|
||||
results: DDO[],
|
||||
page = 0,
|
||||
total_pages = 1,
|
||||
total_results = 1
|
||||
): any => ({
|
||||
results,
|
||||
page,
|
||||
total_pages,
|
||||
total_results
|
||||
})
|
||||
|
||||
export { responsify, getSearchResults }
|
@ -6,25 +6,14 @@ import { DDO } from '../../../src/ddo/DDO'
|
||||
import DID from '../../../src/ocean/DID'
|
||||
import config from '../config'
|
||||
import { LoggerInstance } from '../../../src/utils'
|
||||
import { responsify, getSearchResults } from '../helpers'
|
||||
|
||||
use(spies)
|
||||
|
||||
const reponsify = async (data) => ({
|
||||
ok: true,
|
||||
json: () => Promise.resolve(data)
|
||||
})
|
||||
|
||||
describe('MetadataStore', () => {
|
||||
let ocean: Ocean
|
||||
let metadataStore: MetadataStore
|
||||
|
||||
const getResults = (results: DDO[], page = 0, total_pages = 1, total_results = 1) => ({
|
||||
results,
|
||||
page,
|
||||
total_pages,
|
||||
total_results
|
||||
})
|
||||
|
||||
beforeEach(async () => {
|
||||
ocean = await Ocean.getInstance(config)
|
||||
metadataStore = ocean.metadatastore // eslint-disable-line prefer-destructuring
|
||||
@ -48,7 +37,7 @@ describe('MetadataStore', () => {
|
||||
} as SearchQuery
|
||||
|
||||
it('should query metadata', async () => {
|
||||
spy.on(metadataStore.fetch, 'post', () => reponsify(getResults([new DDO()])))
|
||||
spy.on(metadataStore.fetch, 'post', () => responsify(getSearchResults([new DDO()])))
|
||||
|
||||
const result = await metadataStore.queryMetadata(query)
|
||||
assert.typeOf(result.results, 'array')
|
||||
@ -60,7 +49,9 @@ describe('MetadataStore', () => {
|
||||
|
||||
it('should query metadata with a new instance', async () => {
|
||||
const metadatastoreNew = new MetadataStore(config.metadataStoreUri, LoggerInstance)
|
||||
spy.on(metadatastoreNew.fetch, 'post', () => reponsify(getResults([new DDO()])))
|
||||
spy.on(metadatastoreNew.fetch, 'post', () =>
|
||||
responsify(getSearchResults([new DDO()]))
|
||||
)
|
||||
|
||||
const result = await metadatastoreNew.queryMetadata(query)
|
||||
assert.typeOf(result.results, 'array')
|
||||
@ -71,7 +62,7 @@ describe('MetadataStore', () => {
|
||||
})
|
||||
|
||||
it('should query metadata and return real ddo', async () => {
|
||||
spy.on(metadataStore.fetch, 'post', () => reponsify(getResults([new DDO()])))
|
||||
spy.on(metadataStore.fetch, 'post', () => responsify(getSearchResults([new DDO()])))
|
||||
|
||||
const result = await metadataStore.queryMetadata(query)
|
||||
assert.typeOf(result.results, 'array')
|
||||
@ -87,7 +78,7 @@ describe('MetadataStore', () => {
|
||||
id: did.getId()
|
||||
})
|
||||
|
||||
spy.on(metadataStore.fetch, 'post', () => reponsify(ddo))
|
||||
spy.on(metadataStore.fetch, 'post', () => responsify(ddo))
|
||||
|
||||
const result: DDO = await metadataStore.storeDDO(ddo)
|
||||
assert(result)
|
||||
@ -102,8 +93,8 @@ describe('MetadataStore', () => {
|
||||
id: did.getId()
|
||||
})
|
||||
|
||||
spy.on(metadataStore.fetch, 'post', () => reponsify(ddo))
|
||||
spy.on(metadataStore.fetch, 'get', () => reponsify(ddo))
|
||||
spy.on(metadataStore.fetch, 'post', () => responsify(ddo))
|
||||
spy.on(metadataStore.fetch, 'get', () => responsify(ddo))
|
||||
|
||||
const storageResult: DDO = await metadataStore.storeDDO(ddo)
|
||||
assert(storageResult)
|
||||
|
@ -1,17 +1,21 @@
|
||||
import { assert, spy, use } from 'chai'
|
||||
import spies from 'chai-spies'
|
||||
|
||||
import { SearchQuery } from '../../../src/metadatastore/MetadataStore'
|
||||
import { SearchQuery, MetadataStore } from '../../../src/metadatastore/MetadataStore'
|
||||
import { Ocean } from '../../../src/ocean/Ocean'
|
||||
import config from '../config'
|
||||
import { DDO } from '../../../src/lib'
|
||||
import { responsify, getSearchResults } from '../helpers'
|
||||
|
||||
use(spies)
|
||||
|
||||
let ocean: Ocean
|
||||
|
||||
describe('Assets', () => {
|
||||
before(async () => {
|
||||
let ocean: Ocean
|
||||
let metadataStore: MetadataStore
|
||||
|
||||
beforeEach(async () => {
|
||||
ocean = await Ocean.getInstance(config)
|
||||
metadataStore = ocean.metadatastore // eslint-disable-line prefer-destructuring
|
||||
})
|
||||
|
||||
afterEach(() => {
|
||||
@ -31,18 +35,24 @@ describe('Assets', () => {
|
||||
}
|
||||
} as SearchQuery
|
||||
|
||||
spy.on(metadataStore.fetch, 'post', () => responsify(getSearchResults([new DDO()])))
|
||||
const assets = await ocean.assets.query(query)
|
||||
|
||||
assert(assets)
|
||||
assert.typeOf(assets.results, 'array')
|
||||
assert.lengthOf(assets.results, 1)
|
||||
assert.isDefined(assets.results[0].findServiceById)
|
||||
})
|
||||
})
|
||||
|
||||
describe('#search()', () => {
|
||||
it('should search for assets', async () => {
|
||||
const text = 'office'
|
||||
spy.on(metadataStore.fetch, 'post', () => responsify(getSearchResults([new DDO()])))
|
||||
const assets = await ocean.assets.search(text)
|
||||
|
||||
assert(assets)
|
||||
assert.typeOf(assets.results, 'array')
|
||||
assert.lengthOf(assets.results, 1)
|
||||
assert.isDefined(assets.results[0].findServiceById)
|
||||
})
|
||||
})
|
||||
})
|
||||
|
Loading…
x
Reference in New Issue
Block a user