123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- /**
- * @fileoverview disallow `setTimeout/setInterval` in `asyncData/fetch`
- * @author Xin Du <clark.duxin@gmail.com>
- */
- 'use strict'
- // ------------------------------------------------------------------------------
- // Requirements
- // ------------------------------------------------------------------------------
- const rule = require('../require-func-head')
- const RuleTester = require('eslint').RuleTester
- const parserOptions = {
- ecmaVersion: 2018,
- sourceType: 'module'
- }
- // ------------------------------------------------------------------------------
- // Tests
- // ------------------------------------------------------------------------------
- const ruleTester = new RuleTester()
- ruleTester.run('require-func-head', rule, {
- valid: [
- {
- filename: 'test.vue',
- code: `
- export default {
- head() {
- return {
- title: "My page"
- }
- }
- }
- `,
- parserOptions
- }
- ],
- invalid: [
- {
- filename: 'test.vue',
- code: `
- export default {
- head: {
- title: "My page"
- }
- }
- `,
- errors: [{
- message: '`head` property in component must be a function.',
- type: 'Property'
- }],
- output: `
- export default {
- head: function() {
- return {
- title: "My page"
- };
- }
- }
- `,
- parserOptions
- }
- ]
- })
|