Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Commit 744d6f9

Browse filesBrowse files
committed
test: add more coverage
1 parent 4c7cf8c commit 744d6f9
Copy full SHA for 744d6f9

File tree

Expand file treeCollapse file tree

7 files changed

+80
-24
lines changed
Filter options
Expand file treeCollapse file tree

7 files changed

+80
-24
lines changed

‎package.json

Copy file name to clipboardExpand all lines: package.json
+9-6Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -32,9 +32,12 @@
3232
"react": "16.x"
3333
},
3434
"devDependencies": {
35+
"enzyme": "^3.3.0",
36+
"enzyme-adapter-react-16": "^1.1.1",
3537
"nwb": "0.21.x",
3638
"react": "^16.2.0",
37-
"react-dom": "^16.2.0"
39+
"react-dom": "^16.2.0",
40+
"sinon": "^4.4.9"
3841
},
3942
"author": "Łukasz Holeczek",
4043
"homepage": "http://coreui.io",
@@ -47,10 +50,10 @@
4750
"url": "https://github.com/coreui/coreui-react/issues"
4851
},
4952
"keywords": [
50-
"coreui",
51-
"react",
52-
"bootstrap",
53-
"framework",
54-
"responsive"
53+
"coreui",
54+
"react",
55+
"bootstrap",
56+
"framework",
57+
"responsive"
5558
]
5659
}

‎tests/Aside.test.js

Copy file name to clipboardExpand all lines: tests/Aside.test.js
+15-3Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,23 @@ import expect from 'expect'
22
import React from 'react'
33
import {renderToStaticMarkup as render} from 'react-dom/server'
44

5+
import { configure, mount } from 'enzyme'
6+
import Adapter from 'enzyme-adapter-react-16'
7+
import { spy } from 'sinon'
8+
59
import AppAside from 'src/Aside'
610

11+
configure({ adapter: new Adapter() });
12+
713
describe('AppAside', () => {
814
it('renders aside with class="aside-menu"', () => {
9-
expect(render(<AppAside />))
10-
.toContain('<aside class="aside-menu"></aside>')
11-
})
15+
expect(render(<AppAside fixed hidden display="lg">aside</AppAside>))
16+
.toContain('<aside class="aside-menu">aside</aside>')
17+
});
18+
it('calls componentDidMount', () => {
19+
spy(AppAside.prototype, 'componentDidMount');
20+
21+
const wrapper = mount(<AppAside fixed hidden display="lg" />);
22+
expect(AppAside.prototype.componentDidMount.calledOnce).toEqual(true);
23+
});
1224
})

‎tests/Footer.test.js

Copy file name to clipboardExpand all lines: tests/Footer.test.js
+13-1Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,23 @@ import expect from 'expect'
22
import React from 'react'
33
import {renderToStaticMarkup as render} from 'react-dom/server'
44

5+
import { configure, mount } from 'enzyme'
6+
import Adapter from 'enzyme-adapter-react-16'
7+
import { spy } from 'sinon'
8+
59
import AppFooter from 'src/Footer'
610

11+
configure({ adapter: new Adapter() });
12+
713
describe('AppFooter', () => {
814
it('renders footer with class="app-footer"', () => {
915
expect(render(<AppFooter />))
1016
.toContain('<footer class="app-footer"></footer>')
11-
})
17+
});
18+
it('calls componentDidMount', () => {
19+
spy(AppFooter.prototype, 'componentDidMount');
20+
21+
const wrapper = mount(<AppFooter fixed display="lg" />);
22+
expect(AppFooter.prototype.componentDidMount.calledOnce).toEqual(true);
23+
});
1224
})

‎tests/Header.test.js

Copy file name to clipboardExpand all lines: tests/Header.test.js
+14-2Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,23 @@ import expect from 'expect'
22
import React from 'react'
33
import {renderToStaticMarkup as render} from 'react-dom/server'
44

5+
import { configure, mount } from 'enzyme'
6+
import Adapter from 'enzyme-adapter-react-16'
7+
import { spy } from 'sinon'
8+
59
import AppHeader from 'src/Header'
610

11+
configure({ adapter: new Adapter() });
12+
713
describe('AppHeader', () => {
814
it('renders header with class="app-header"', () => {
9-
expect(render(<AppHeader />))
15+
expect(render(<AppHeader fixed />))
1016
.toContain('<header class="app-header navbar"></header>')
11-
})
17+
});
18+
it('calls componentDidMount', () => {
19+
spy(AppHeader.prototype, 'componentDidMount');
20+
21+
const wrapper = mount(<AppHeader fixed/>);
22+
expect(AppHeader.prototype.componentDidMount.calledOnce).toEqual(true);
23+
});
1224
})

‎tests/NavbarBrand.test.js

Copy file name to clipboard
+13-8Lines changed: 13 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,17 @@
1-
import expect from 'expect'
2-
import React from 'react'
3-
import {renderToStaticMarkup as render} from 'react-dom/server'
1+
import expect from 'expect';
2+
import React from 'react';
3+
import { renderToStaticMarkup as render } from 'react-dom/server';
44

5-
import AppNavbarBrand from 'src/NavbarBrand'
5+
import logo from '../demo/src/assets/img/brand/logo.svg'
6+
import sygnet from '../demo/src/assets/img/brand/sygnet.svg'
7+
8+
import AppNavbarBrand from 'src/NavbarBrand';
69

710
describe('AppNavbarBrand', () => {
811
it('renders anchor with class="navbar-brand"', () => {
9-
expect(render(<AppNavbarBrand />))
10-
.toContain('<a class="navbar-brand"></a>')
11-
})
12-
})
12+
expect(render(<AppNavbarBrand
13+
full={{ src: logo, width: 89, height: 25, alt: 'CoreUI Logo' }}
14+
minimized={{ src: sygnet, width: 30, height: 30, alt: 'CoreUI Logo' }}
15+
/>)).toContain('class="navbar-brand"');
16+
});
17+
});

‎tests/Sidebar.test.js

Copy file name to clipboardExpand all lines: tests/Sidebar.test.js
+14-2Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,23 @@ import expect from 'expect'
22
import React from 'react'
33
import {renderToStaticMarkup as render} from 'react-dom/server'
44

5+
import { configure, mount } from 'enzyme'
6+
import Adapter from 'enzyme-adapter-react-16'
7+
import { spy } from 'sinon'
8+
59
import AppSidebar from 'src/Sidebar'
610

11+
configure({ adapter: new Adapter() });
12+
713
describe('AppSidebar', () => {
814
it('renders sidebar with class="sidebar"', () => {
9-
expect(render(<AppSidebar />))
15+
expect(render(<AppSidebar fixed display="lg" />))
1016
.toContain('<div class="sidebar"></div>')
11-
})
17+
});
18+
it('calls componentDidMount', () => {
19+
spy(AppSidebar.prototype, 'componentDidMount');
20+
21+
const wrapper = mount(<AppSidebar fixed display="lg" />);
22+
expect(AppSidebar.prototype.componentDidMount.calledOnce).toEqual(true);
23+
});
1224
})

‎tests/SidebarToggler.test.js

Copy file name to clipboardExpand all lines: tests/SidebarToggler.test.js
+2-2Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ import AppSidebarToggler from 'src/SidebarToggler';
66

77
describe('AppSidebarToggler', () => {
88
it('renders button with class="navbar-toggler"', () => {
9-
expect(render(<AppSidebarToggler />))
10-
.toContain('<button type="button" class="navbar-toggler"><span class="navbar-toggler-icon"></span></button>')
9+
expect(render(<AppSidebarToggler className="d-lg-none" display="md" mobile />))
10+
.toContain('<button type="button" class="d-lg-none navbar-toggler"><span class="navbar-toggler-icon"></span></button>')
1111
})
1212
})

0 commit comments

Comments
0 (0)
Morty Proxy This is a proxified and sanitized view of the page, visit original site.