diff --git a/jest.config.js b/jest.config.js index 1b22f7e..4a5d23e 100644 --- a/jest.config.js +++ b/jest.config.js @@ -6,4 +6,5 @@ module.exports = { '^.+\\.vue$': 'vue-jest', }, testMatch: ['**/*.spec.js'], + snapshotSerializers: ['/node_modules/jest-serializer-vue'], } diff --git a/src/components/primitives/Button/Button.spec.js b/src/components/primitives/Button/Button.spec.js index ab81662..857df5f 100644 --- a/src/components/primitives/Button/Button.spec.js +++ b/src/components/primitives/Button/Button.spec.js @@ -1,14 +1,18 @@ import { render } from '@testing-library/vue' import Button from './Button.vue' +let wrapper + describe('Button.vue', () => { - it('renders props.label and type when passed', () => { - const type = 'primary' - const { getByText, container } = render(Button, { - props: { label: type, type: `is-${type}` }, - }) - - getByText(type) - expect(container.firstChild.classList.contains(`is-${type}`)).toBe(true) + beforeEach(() => { + wrapper = render(Button) + }) + + it('is called', () => { + wrapper.getByRole('button') + }) + + it('render correctly', () => { + expect(wrapper.html()).toMatchSnapshot() }) }) diff --git a/src/components/primitives/Button/Button.vue b/src/components/primitives/Button/Button.vue index 506182a..9a64c32 100644 --- a/src/components/primitives/Button/Button.vue +++ b/src/components/primitives/Button/Button.vue @@ -6,7 +6,7 @@ export default { props: { type: { type: String, - default: 'button' + default: 'is-primary' }, size: String, label: String, diff --git a/src/components/primitives/Button/__snapshots__/Button.spec.js.snap b/src/components/primitives/Button/__snapshots__/Button.spec.js.snap new file mode 100644 index 0000000..3aa753a --- /dev/null +++ b/src/components/primitives/Button/__snapshots__/Button.spec.js.snap @@ -0,0 +1,7 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`Button.vue render correctly 1`] = ` + +`;