项目作者: 14nrv

项目描述 :
Additional jest matchers for vue
高级语言: JavaScript
项目地址: git://github.com/14nrv/jest-vue-matcher.git
创建时间: 2018-10-19T13:13:00Z
项目社区:https://github.com/14nrv/jest-vue-matcher

开源协议:MIT License

下载


NPM Version
Build Status
Test Coverage
Maintainability
License: MIT
semantic-release
PRs Welcome

jest-vue-matcher

Additional jest matchers for vue

Install

  1. yarn add jest-vue-matcher -D

Setup

  1. import { mount } from '@vue/test-utils'
  2. import matchers from 'jest-vue-matcher'
  3. import MyComponent from '@/components/MyComponent.vue'
  4. let wrapper
  5. describe('MyComponent', () => {
  6. beforeEach(() => {
  7. wrapper = mount(MyComponent)
  8. expect.extend(matchers(wrapper))
  9. })
  10. // ...
  11. })

Matchers available

  • toHaveText(text)
    1. expect('h1').toHaveText('My title')
    2. expect('h1').not.toHaveText('Not my title')
  • toBeADomElement()
    1. expect('h1').toBeADomElement()
    2. expect('notH1').not.toBeADomElement()
  • toHaveClass(className)
    1. expect('h1').toHaveClass('title')
    2. expect('h1').not.toHaveClass('not-title')
  • toHaveAttribute(attributeName, attributeValue)
    1. expect('h1').toHaveAttribute('class', 'title')
    2. expect('h1').not.toHaveAClass('class', 'not-title')
  • toHaveValue(value)
    1. expect('input[type=text]').toHaveValue('plop')
    2. expect('input[type=text]').not.toHaveValue('not plop')
  • toHaveProp(propName)
    1. expect(wrapper).toHaveProp('propName')
    2. expect(wrapper).not.toHaveProp('not-propName')
  • toEmit(eventName)
    1. expect(wrapper).toEmit('eventName')
    2. expect(wrapper).not.toEmit('not eventName')
  • toEmitWith(eventName, eventValue)
    1. expect(wrapper).toEmitWith('eventName', 'eventValue')
    2. expect(wrapper).not.toEmitWith('not eventName', { data: 'eventValue' })

Inspiration

Inspirated by mwangaben-vthelpers