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 React from 'react'
import assert from 'assert'
import { shallow } from 'enzyme'
import sinon from 'sinon'
import PageContainerHeader from '../page-container-header.component'
describe('Page Container Header', () => {
let wrapper, style, onBackButtonClick, onClose
beforeEach(() => {
style = {test: 'style'}
onBackButtonClick = sinon.spy()
onClose = sinon.spy()
wrapper = shallow(<PageContainerHeader
showBackButton = {true}
onBackButtonClick = {onBackButtonClick}
backButtonStyles = {style}
title = {'Test Title'}
subtitle = {'Test Subtitle'}
tabs = {'Test Tab'}
onClose = {onClose}
/>)
})
describe('Render Header Row', () => {
it('renders back button', () => {
assert.equal(wrapper.find('.page-container__back-button').length, 1)
assert.equal(wrapper.find('.page-container__back-button').text(), 'Back')
})
it('ensures style prop', () => {
assert.equal(wrapper.find('.page-container__back-button').props().style, style)
})
it('should call back button when click is simulated', () => {
wrapper.find('.page-container__back-button').prop('onClick')()
assert.equal(onBackButtonClick.callCount, 1)
})
})
describe('Render', () => {
let header, headerRow, pageTitle, pageSubtitle, pageClose, pageTab
beforeEach(() => {
header = wrapper.find('.page-container__header--no-padding-bottom')
headerRow = wrapper.find('.page-container__header-row')
pageTitle = wrapper.find('.page-container__title')
pageSubtitle = wrapper.find('.page-container__subtitle')
pageClose = wrapper.find('.page-container__header-close')
pageTab = wrapper.find('.page-container__tabs')
})
it('renders page container', () => {
assert.equal(header.length, 1)
assert.equal(headerRow.length, 1)
assert.equal(pageTitle.length, 1)
assert.equal(pageSubtitle.length, 1)
assert.equal(pageClose.length, 1)
assert.equal(pageTab.length, 1)
})
it('renders title', () => {
assert.equal(pageTitle.text(), 'Test Title')
})
it('renders subtitle', () => {
assert.equal(pageSubtitle.text(), 'Test Subtitle')
})
it('renders tabs', () => {
assert.equal(pageTab.text(), 'Test Tab')
})
it('should call close when click is simulated', () => {
pageClose.prop('onClick')()
assert.equal(onClose.callCount, 1)
})
})
})
|