-
Notifications
You must be signed in to change notification settings - Fork 34
Expand file tree
/
Copy pathbutton-bar.test.js
More file actions
71 lines (61 loc) · 1.64 KB
/
Copy pathbutton-bar.test.js
File metadata and controls
71 lines (61 loc) · 1.64 KB
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
import React from 'react'
import ButtonBar from './button-bar'
import renderer from 'react-test-renderer'
import { mount } from 'enzyme'
describe('ButtonBar', () => {
test('ButtonBar component', () => {
const children = []
const component = renderer.create(<ButtonBar>{children}</ButtonBar>)
const tree = component.toJSON()
expect(tree).toMatchSnapshot()
})
test('ButtonBar component with attributes', () => {
const children = [
{
props: { id: 'mockChild' }
}
]
const component = renderer.create(
<ButtonBar altAction={jest.fn()} selectedIndex={0} isDangerous={true} disabled={true}>
{children}
</ButtonBar>
)
const tree = component.toJSON()
expect(tree).toMatchSnapshot()
})
test('ButtonBar component clicks button', () => {
const children = [
{
props: { id: 'mockChild' }
}
]
const mockClick = jest.fn()
const component = mount(<ButtonBar onClick={mockClick}>{children}</ButtonBar>)
component
.childAt(0)
.find('button')
.simulate('click')
expect(mockClick).toBeCalledTimes(1)
// default function coverage for buttonBarOnClick
const componentNoClick = mount(<ButtonBar>{children}</ButtonBar>)
componentNoClick
.childAt(0)
.find('button')
.simulate('click')
expect(mockClick).toBeCalledTimes(1)
})
test('ButtonBar component clicks button but does not fire', () => {
const children = [
{
props: { id: 'mockChild', onClick: true }
}
]
const mockClick = jest.fn()
const component = mount(<ButtonBar onClick={mockClick}>{children}</ButtonBar>)
component
.childAt(0)
.find('button')
.simulate('click')
expect(mockClick).toHaveBeenCalled()
})
})