Skip to content

Commit

Permalink
test api 0.0.3
Browse files Browse the repository at this point in the history
  • Loading branch information
dennishendriksen committed Jun 16, 2020
1 parent 9d11611 commit 6d740df
Show file tree
Hide file tree
Showing 4 changed files with 44 additions and 68 deletions.
5 changes: 4 additions & 1 deletion jest.config.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,7 @@
module.exports = {
preset: '@vue/cli-plugin-unit-jest/presets/typescript-and-babel',
collectCoverage: true
collectCoverage: true,
"transformIgnorePatterns": [
"node_modules/(?!(@molgenis)/)"
]
}
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
"i18n:report": "vue-cli-service i18n:report --src './src/**/*.?(js|vue)' --locales './src/locales/**/*.json'"
},
"dependencies": {
"@molgenis/vip-report-api": "file:../vip-report-api/molgenis-vip-report-api-0.0.3.tgz",
"@molgenis/vip-report-api": "0.0.3",
"bootstrap-vue": "^2.1.0",
"core-js": "^3.6.4",
"html-webpack-plugin": "latest",
Expand Down
7 changes: 1 addition & 6 deletions src/store/actions.ts
Original file line number Diff line number Diff line change
@@ -1,11 +1,6 @@
import Api, {Sample} from '@molgenis/vip-report-api'

declare global {
interface Window {
api: any
}
}

// @ts-ignore
let api = new Api(window.api)

export default {
Expand Down
98 changes: 38 additions & 60 deletions tests/unit/store/getters.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,48 +3,32 @@ import getters from '@/store/getters'
import {State} from '@/types/State'
import {GenomeBrowserDb} from '@/types/GenomeBrowserDb'
import {mock} from 'ts-mockito'
import {HtsFileMetadata, Metadata, Sample} from '@molgenis/vip-report-api'
import {HtsFileMetadata, Items, Metadata, Person, Sample} from '@molgenis/vip-report-api'

test('samples returns empty array in case of no samples', () => {
const testState: State = {...initialState}
expect(getters.samples(testState)).toStrictEqual([])
})

test('samples returns array sorted by sample id', () => {
const sample0: Sample = {
person: {
familyId: 'MyFamilyId',
individualId: 'personC',
paternalId: '0',
maternalId: '0',
sex: 'MALE',
affectedStatus: 'AFFECTED'
},
index: -1
}
const sample1: Sample = {
person: {
familyId: 'MyFamilyId',
individualId: 'personA',
paternalId: '0',
maternalId: '0',
sex: 'MALE',
affectedStatus: 'AFFECTED'
},
index: -1
}
const sample2: Sample = {
person: {
familyId: 'MyFamilyId',
individualId: 'personB',
paternalId: '0',
maternalId: '0',
sex: 'MALE',
affectedStatus: 'AFFECTED'
},
index: -1
}
const testState: State = {...initialState, samples: {items: [sample2, sample0, sample1, sample2], total: 4}}
expect(getters.samples(testState)).toStrictEqual([sample1, sample2, sample2, sample0])
const person0: Person = mock<Person>()
person0.individualId = 'personC'
const sample0: Sample = mock<Sample>()
sample0.person = person0
const person1: Person = mock<Person>()
person1.individualId = 'personA'
const sample1: Sample = mock<Sample>()
sample1.person = person1
const person2: Person = mock<Person>()
person2.individualId = 'personB'
const sample2: Sample = mock<Sample>()
sample2.person = person2

const samples: Items<Sample> = mock<Items<Sample>>()
samples.items = [sample2, sample0, sample1, sample2]

const testState: State = {...initialState, samples}
expect(getters.samples(testState).map(sample => sample.person.individualId)).toEqual(['personA', 'personB', 'personB', 'personC'])
})

test('get sample by id returns null in case of no samples', () => {
Expand All @@ -53,34 +37,28 @@ test('get sample by id returns null in case of no samples', () => {
})

test('get sample by id returns null in case of unknown sample', () => {
const sample0: Sample = {
person: {
familyId: 'MyFamilyId',
individualId: 'MySampleId',
paternalId: '0',
maternalId: '0',
sex: 'MALE',
affectedStatus: 'AFFECTED'
},
index: -1
}
const testState: State = {...initialState, samples: {items: [sample0], total: 1}}
const person0: Person = mock<Person>()
person0.individualId = 'MySampleId'
const sample0: Sample = mock<Sample>()
sample0.person = person0

const samples: Items<Sample> = mock<Items<Sample>>()
samples.items = [sample0]

const testState: State = {...initialState, samples}
expect(getters.getSampleById(testState)('UnknownSampleId')).toBe(null)
})

test('get sample by id returns sample in case of known sample', () => {
const sample0: Sample = {
person: {
familyId: 'MyFamilyId',
individualId: 'MySampleId',
paternalId: '0',
maternalId: '0',
sex: 'MALE',
affectedStatus: 'AFFECTED'
},
index: -1
}
const testState: State = {...initialState, samples: {items: [sample0], total: 1}}
const person0: Person = mock<Person>()
person0.individualId = 'MySampleId'
const sample0: Sample = mock<Sample>()
sample0.person = person0

const samples: Items<Sample> = mock<Items<Sample>>()
samples.items = [sample0]

const testState: State = {...initialState, samples}
expect(getters.getSampleById(testState)('MySampleId')).toBe(sample0)
})

Expand Down

0 comments on commit 6d740df

Please sign in to comment.