forked from vuejs/eslint-plugin-vue
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathno-multiple-objects-in-class.js
38 lines (33 loc) · 1.14 KB
/
no-multiple-objects-in-class.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
/**
* @author tyankatsu <https://github.com/tyankatsu0105>
*/
'use strict'
// ------------------------------------------------------------------------------
// Requirements
// ------------------------------------------------------------------------------
const rule = require('../../../lib/rules/no-multiple-objects-in-class')
const RuleTester = require('eslint').RuleTester
// ------------------------------------------------------------------------------
// Tests
// ------------------------------------------------------------------------------
const ruleTester = new RuleTester({
parser: require.resolve('vue-eslint-parser'),
parserOptions: { ecmaVersion: 2015, sourceType: 'module' }
})
ruleTester.run('no-multiple-objects-in-class', rule, {
valid: [
`<template><div :class="[{'foo': isFoo}]" /></template>`,
`<template><div :class="[{'foo': isFoo, 'bar': isBar}]" /></template>`
],
invalid: [
{
code: `<template><div :class="[{'foo': isFoo}, {'bar': isBar}]" /></template>`,
errors: [
{
message: 'Unexpected multiple objects. Merge objects.',
type: 'VAttribute'
}
]
}
]
})