| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- import Vue from 'vue'
- import testObjectOption from '../../../helpers/test-object-option'
- describe('Options methods', () => {
- testObjectOption('methods')
- it('should have correct context', () => {
- const vm = new Vue({
- data: {
- a: 1
- },
- methods: {
- plus() {
- this.a++
- }
- }
- })
- vm.plus()
- expect(vm.a).toBe(2)
- })
- it('should warn methods of not function type', () => {
- new Vue({
- methods: {
- hello: {}
- }
- })
- expect(
- 'Method "hello" has type "object" in the component definition'
- ).toHaveBeenWarned()
- })
- it('should warn methods conflicting with data', () => {
- new Vue({
- data: {
- foo: 1
- },
- methods: {
- foo() {}
- }
- })
- expect(
- `Method "foo" has already been defined as a data property`
- ).toHaveBeenWarned()
- })
- it('should warn methods conflicting with internal methods', () => {
- new Vue({
- methods: {
- _update() {}
- }
- })
- expect(
- `Method "_update" conflicts with an existing Vue instance method`
- ).toHaveBeenWarned()
- })
- })
|