diff options
author | Patryk Niedźwiedziński <pniedzwiedzinski19@gmail.com> | 2019-08-30 22:31:54 +0200 |
---|---|---|
committer | Patryk Niedźwiedziński <pniedzwiedzinski19@gmail.com> | 2019-08-30 22:31:54 +0200 |
commit | 51b96f0c0bc9e00477e24d1d799dba0e3a519f24 (patch) | |
tree | 59fbd931207ba86976418cea57c928beee2e31cc | |
parent | f0d5b38eb23e85e993bf040f7e84c5b6b16d7566 (diff) | |
download | puszcza-51b96f0c0bc9e00477e24d1d799dba0e3a519f24.tar.gz puszcza-51b96f0c0bc9e00477e24d1d799dba0e3a519f24.zip |
Add NavBar test
-rw-r--r-- | components/NavBar.vue | 26 | ||||
-rw-r--r-- | test/NavBar.test.js | 27 | ||||
-rw-r--r-- | test/NavLink.test.js | 12 | ||||
-rw-r--r-- | test/__snapshots__/NavBar.test.js.snap | 40 | ||||
-rw-r--r-- | test/__snapshots__/NavLink.test.js.snap | 14 |
5 files changed, 104 insertions, 15 deletions
diff --git a/components/NavBar.vue b/components/NavBar.vue index e9fa1f0..e564fb0 100644 --- a/components/NavBar.vue +++ b/components/NavBar.vue @@ -2,7 +2,7 @@ <nav :class="navbarClass"> <div class="title"> <img v-if="logo" class="logo" :src="logo" alt="ZHR" /> - <router-link :class="titleClass" to="/">{{ title }}</router-link> + <nuxt-link :class="titleClass" to="/">{{ title }}</nuxt-link> </div> <div class="space"></div> <button @click="toggleMenu" class="menu-toggler">Menu</button> @@ -21,7 +21,7 @@ </template> <script> -import NavLink from "./NavLink"; +import NavLink from './NavLink' export default { components: { @@ -36,42 +36,42 @@ export default { computed: { titleClass() { if (this.logo) { - return "title-name margin"; + return 'title-name margin' } - return "title-name"; + return 'title-name' }, navbarClass() { if (this.menuCollapsed) { - return "navbar"; + return 'navbar' } - return "navbar menu-open"; + return 'navbar menu-open' }, linksClass() { if (this.menuCollapsed) { - return "links"; + return 'links' } - return "links show"; + return 'links show' } }, data: function() { return { menuCollapsed: true - }; + } }, methods: { toggleMenu() { - this.menuCollapsed = !this.menuCollapsed; + this.menuCollapsed = !this.menuCollapsed }, linksClick() { - this.toggleMenu(); + this.toggleMenu() } } -}; +} </script> <style scoped> .navbar { - font-family: "Roboto Slab", serif; + font-family: 'Roboto Slab', serif; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; color: #181818; diff --git a/test/NavBar.test.js b/test/NavBar.test.js new file mode 100644 index 0000000..88bc5db --- /dev/null +++ b/test/NavBar.test.js @@ -0,0 +1,27 @@ +import { shallowMount } from '@vue/test-utils' +import NavBar from '../components/NavBar' + +describe('NavBar', () => { + // Now mount the component and you have the wrapper + const wrapper = shallowMount(NavBar) + + wrapper.setProps({ + title: 'Title', + routes: [ + { + path: '/', + name: 'Home' + } + ] + }) + + it('check title', () => { + expect(wrapper.html()).toContain( + '<nuxt-link to="/" class="title-name">Title</nuxt-link>' + ) + }) + + it('match snapshot', () => { + expect(wrapper.element).toMatchSnapshot() + }) +}) diff --git a/test/NavLink.test.js b/test/NavLink.test.js index 8a1f144..aeb16d0 100644 --- a/test/NavLink.test.js +++ b/test/NavLink.test.js @@ -1,9 +1,9 @@ -import { mount } from '@vue/test-utils' +import { shallowMount } from '@vue/test-utils' import NavLink from '../components/NavLink' describe('NavLink', () => { // Now mount the component and you have the wrapper - const wrapper = mount(NavLink) + const wrapper = shallowMount(NavLink) wrapper.setProps({ link: '/link', name: 'Link' }) @@ -12,4 +12,12 @@ describe('NavLink', () => { `<li class="navlink"><nuxt-link class="link" to="/link">Link</nuxt-link></li>` ) }) + + it('check text', () => { + expect(wrapper.text()).toBe('Link') + }) + + it('match snapshot', () => { + expect(wrapper.element).toMatchSnapshot() + }) }) diff --git a/test/__snapshots__/NavBar.test.js.snap b/test/__snapshots__/NavBar.test.js.snap new file mode 100644 index 0000000..fb90c28 --- /dev/null +++ b/test/__snapshots__/NavBar.test.js.snap @@ -0,0 +1,40 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`NavBar match snapshot 1`] = ` +<nav + class="navbar" +> + <div + class="title" + > + <!----> + + <nuxt-link + class="title-name" + to="/" + > + Title + </nuxt-link> + </div> + + <div + class="space" + /> + + <button + class="menu-toggler" + > + Menu + </button> + + <ul + class="links" + > + <navlink-stub + link="/" + name="Home" + /> + + </ul> +</nav> +`; diff --git a/test/__snapshots__/NavLink.test.js.snap b/test/__snapshots__/NavLink.test.js.snap new file mode 100644 index 0000000..122e5c8 --- /dev/null +++ b/test/__snapshots__/NavLink.test.js.snap @@ -0,0 +1,14 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`NavLink match snapshot 1`] = ` +<li + class="navlink" +> + <nuxt-link + class="link" + to="/link" + > + Link + </nuxt-link> +</li> +`; |