-
-
Notifications
You must be signed in to change notification settings - Fork 163
/
Copy pathFirstStep.spec.js
82 lines (65 loc) · 1.9 KB
/
FirstStep.spec.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
import { createLocalVue, mount } from '@vue/test-utils'
import Buefy from 'buefy'
import FirstStep from '@/components/FirstStep.vue'
const localVue = createLocalVue()
localVue.use(Buefy)
describe('FirstStep Component', () => {
let wrapper
beforeEach(() => {
wrapper = mount(FirstStep, {
localVue,
mocks: {
$t: key => key
}
})
})
afterEach(() => {
wrapper.destroy()
})
it('Mark up is correctly rendered', () => {
wrapper.setProps({
selected: undefined,
stepId: 0,
status: 'current'
})
expect(wrapper.element).toMatchSnapshot()
})
it('Radio Input value is YES', () => {
wrapper.setProps({
selected: undefined,
stepId: 0,
status: 'current'
})
const radio = wrapper.findAll('input[type="radio"]').at(0)
radio.trigger('change')
expect(wrapper.emitted().change[0]).toEqual(['FS', 0, true])
})
it('Radio Input value is NO', () => {
wrapper.setProps({
selected: undefined,
stepId: 0,
status: 'current'
})
const radio = wrapper.findAll('input[type="radio"]').at(1)
radio.trigger('change')
expect(wrapper.emitted().change[0]).toEqual(['FS', 0, false])
})
it('props:selected false', () => {
wrapper.setProps({
selected: false,
stepId: 0,
status: 'current'
})
expect(wrapper.vm.radio).toBe('no')
expect(wrapper.vm.cardText).toBe('stepper.FS.not-selected')
})
it('props:selected true', () => {
wrapper.setProps({
selected: true,
stepId: 0,
status: 'current'
})
expect(wrapper.vm.radio).toBe('yes')
expect(wrapper.vm.cardText).toBe('stepper.FS.selected')
})
})