Skip to content

Commit

Permalink
Merge pull request #29 from purvikaul/Hacktober-Added-Tests
Browse files Browse the repository at this point in the history
Added unit tests for packages/extension/src/components/dashboard/DashboardBottom.jsx
  • Loading branch information
Celeo authored Oct 24, 2019
2 parents 666026c + 4c6bb0a commit c60ab8c
Showing 1 changed file with 114 additions and 0 deletions.
114 changes: 114 additions & 0 deletions packages/extension/test/components/dashboard/DashboardBottom.test.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import React from 'react'
import { cleanup, render } from '@testing-library/react'
import { shallow } from 'enzyme'
import DashboardBottom from '../../../src/components/dashboard/DashboardBottom.jsx'

afterEach(() => {
Expand All @@ -20,13 +21,126 @@ const getComponent = (props = {}) => {
)
}


describe('DashboardBottom', () => {
it('renders', () => {
const { getByText } = render(getComponent())
getByText('Logs')
getByText('Screenshots')
getByText('Clear')
})
it('componentWillReceiveProps - logs size is equal', () => {
const props = {
logs: [{
type: 'info',
text: 'test-name'
}]
}
const component = shallow(getComponent(props))
const logs = [
{
type: 'error',
text: 'test-name'
}]
component.setProps({logs})
})
it('componentWillReceiveProps - logs size increased', () => {
const props = {
logs: [{
type: 'info',
text: 'test-name'
}]
}
const component = shallow(getComponent(props))
const logs = [{
type: 'info',
text: 'test-name'
},
{
type: 'error',
text: 'test-name'
}]
component.setProps({logs})
})
it('Clear screenshots', () => {
const mockClick = jest.fn()
const props = {
screenshots: [{
url: 'test.com',
createTime: '1571879106',
name: 'test-name'
}],
clearScreenshots: mockClick

}
const wrapper = shallow(getComponent(props))
wrapper.setState({activeTabForLogScreenshot: 'Screenshots'})
expect(wrapper.find('li').length).toBe(1)
wrapper.find('Button').simulate('click')
expect(mockClick.mock.calls.length).toBe(1)
})
it('Clear logs', () => {
const mockClick = jest.fn()
const props = {
logs: [{
type: 'info',
text: 'test-name'
}],
clearLogs: mockClick

}
const wrapper = shallow(getComponent(props))
expect(wrapper.find('li').length).toBe(1)
wrapper.find('Button').simulate('click')
expect(mockClick.mock.calls.length).toBe(1)
})
it('Select tab', () => {
const props = {
screenshots: [{
url: 'test.com',
createTime: '1571879106',
name: 'test-name'
}]
}
const wrapper = shallow(getComponent(props))
wrapper.find('Tabs').simulate('change','Screenshots')
expect(wrapper.state('activeTabForLogScreenshot')).toBe('Screenshots')

})

it('Select option Info', () => {
const props = {
logs: [{
type: 'info',
text: 'test-name'
},
{
type: 'error',
text: 'test-name'
}]

}
const wrapper = shallow(getComponent(props))
wrapper.find('Select').simulate('change','Info')
expect(wrapper.find('Select').props().value).toBe('Info')
})

it('Select option Error', () => {
const props = {
logs: [{
type: 'info',
text: 'test-name'
},
{
type: 'error',
text: 'test-name'
}]

}
const wrapper = shallow(getComponent(props))
wrapper.find('Select').simulate('change','Error')
expect(wrapper.find('Select').props().value).toBe('Error')
})

// TODO more tests ...
})

0 comments on commit c60ab8c

Please sign in to comment.