diff --git a/.changeset/gorgeous-colts-bathe.md b/.changeset/gorgeous-colts-bathe.md
new file mode 100644
index 000000000..e5f3a14a8
--- /dev/null
+++ b/.changeset/gorgeous-colts-bathe.md
@@ -0,0 +1,5 @@
+---
+"eslint-plugin-vue": patch
+---
+
+Updates resources
diff --git a/.changeset/rich-zebras-type.md b/.changeset/rich-zebras-type.md
new file mode 100644
index 000000000..62c2438ae
--- /dev/null
+++ b/.changeset/rich-zebras-type.md
@@ -0,0 +1,5 @@
+---
+"eslint-plugin-vue": minor
+---
+
+Changed `vue/no-negated-v-if-condition` suggestion to autofix
diff --git a/.changeset/swift-spies-nail.md b/.changeset/swift-spies-nail.md
new file mode 100644
index 000000000..6d8ffe174
--- /dev/null
+++ b/.changeset/swift-spies-nail.md
@@ -0,0 +1,5 @@
+---
+"eslint-plugin-vue": minor
+---
+
+Added new `ignoreEOLComments` option to `vue/no-multi-spaces` rule
diff --git a/docs/rules/index.md b/docs/rules/index.md
index 3209c157d..5d8deaf00 100644
--- a/docs/rules/index.md
+++ b/docs/rules/index.md
@@ -238,7 +238,7 @@ For example:
| [vue/no-empty-component-block] | disallow the `` `',
@@ -71,44 +72,36 @@ tester.run('block-order', rule, {
// order
{
code: '',
- output: null,
options: [{ order: ['script', 'template', 'style'] }]
},
{
code: '',
- output: null,
options: [{ order: ['template', 'script', 'style'] }]
},
{
code: '',
- output: null,
options: [{ order: ['style', 'template', 'script'] }]
},
{
code: '',
- output: null,
options: [{ order: ['template', 'docs', 'script', 'style'] }]
},
{
code: '',
- output: null,
options: [{ order: ['template', 'script', 'style'] }]
},
{
code: 'text
',
- output: null,
options: [{ order: ['docs', 'script', 'template', 'style'] }]
},
{
code: '',
- output: null,
options: [
{ order: ['script[setup]', 'script:not([setup])', 'template', 'style'] }
]
},
{
code: '',
- output: null,
options: [
{
order: [['script[setup]', 'script:not([setup])', 'template'], 'style']
@@ -117,24 +110,20 @@ tester.run('block-order', rule, {
},
{
code: '',
- output: null,
options: [{ order: ['script', 'template', 'style'] }]
},
{
code: '',
- output: null,
options: [{ order: [['script', 'template'], 'style'] }]
},
{
code: '',
- output: null,
options: [
{ order: ['script:not([setup])', 'script[setup]', 'template', 'style'] }
]
},
{
code: '',
- output: null,
options: [
{
order: [['script:not([setup])', 'script[setup]', 'template'], 'style']
@@ -143,7 +132,6 @@ tester.run('block-order', rule, {
},
{
code: '',
- output: null,
options: [
{
order: [
@@ -158,7 +146,6 @@ tester.run('block-order', rule, {
},
{
code: '',
- output: null,
options: [
{
order: [
@@ -175,17 +162,14 @@ tester.run('block-order', rule, {
},
{
code: '',
- output: null,
options: [{ order: [['docs', 'script', 'template'], 'style'] }]
},
{
code: '',
- output: null,
options: [{ order: ['i18n[locale=en]', 'i18n[locale=ja]'] }]
},
{
code: '',
- output: null,
options: [{ order: ['style:not([scoped])', 'style[scoped]'] }]
},
diff --git a/tests/lib/rules/comment-directive.js b/tests/lib/rules/comment-directive.ts
similarity index 97%
rename from tests/lib/rules/comment-directive.js
rename to tests/lib/rules/comment-directive.ts
index b9acb1092..2a7efdab6 100644
--- a/tests/lib/rules/comment-directive.js
+++ b/tests/lib/rules/comment-directive.ts
@@ -3,10 +3,11 @@
* @author Toru Nagashima
*/
-'use strict'
-
-const assert = require('assert')
-const { ESLint } = require('../../eslint-compat')
+import assert from 'assert'
+import parserVue from 'vue-eslint-parser'
+import { ESLint } from '../../eslint-compat'
+import pluginVue from '../../../lib'
+import processor from '../../../lib/processor'
// Initialize linter.
const eslint = new ESLint({
@@ -14,21 +15,21 @@ const eslint = new ESLint({
overrideConfig: {
files: ['*.*'],
languageOptions: {
- parser: require('vue-eslint-parser'),
+ parser: parserVue,
ecmaVersion: 2015
},
- plugins: { vue: require('../../../lib/index') },
+ plugins: { vue: pluginVue },
rules: {
'no-unused-vars': 'error',
'vue/comment-directive': 'error',
'vue/no-parsing-error': 'error',
'vue/no-duplicate-attributes': 'error'
},
- processor: require('../../../lib/processor')
+ processor
}
})
-async function lintMessages(code) {
+async function lintMessages(code: string) {
const result = await eslint.lintText(code, { filePath: 'test.vue' })
return result[0].messages
}
@@ -357,10 +358,10 @@ describe('comment-directive', () => {
overrideConfig: {
files: ['**/*.vue'],
languageOptions: {
- parser: require('vue-eslint-parser'),
+ parser: parserVue,
ecmaVersion: 2015
},
- plugins: { vue: require('../../../lib/index') },
+ plugins: { vue: pluginVue },
rules: {
'no-unused-vars': 'error',
'vue/comment-directive': [
@@ -370,11 +371,11 @@ describe('comment-directive', () => {
'vue/no-parsing-error': 'error',
'vue/no-duplicate-attributes': 'error'
},
- processor: require('../../../lib/processor')
+ processor
}
})
- async function lintMessages(code) {
+ async function lintMessages(code: string) {
const result = await eslint.lintText(code, { filePath: 'test.vue' })
return result[0].messages
}
diff --git a/tests/lib/rules/component-name-in-template-casing.js b/tests/lib/rules/component-name-in-template-casing.js
index 34e3574fc..9ad24fad3 100644
--- a/tests/lib/rules/component-name-in-template-casing.js
+++ b/tests/lib/rules/component-name-in-template-casing.js
@@ -4,7 +4,6 @@
'use strict'
const rule = require('../../../lib/rules/component-name-in-template-casing')
-const semver = require('semver')
const RuleTester = require('../../eslint-compat').RuleTester
const tester = new RuleTester({
@@ -218,42 +217,36 @@ tester.run('component-name-in-template-casing', rule, {
},
// type-only imports
- ...(semver.gte(
- require('@typescript-eslint/parser/package.json').version,
- '5.0.0'
- )
- ? [
- {
- code: `
-
-
-
-
-
-
-
-
-
-
- `,
- options: ['PascalCase', { registeredComponentsOnly: true }],
- languageOptions: {
- parserOptions: {
- parser: require.resolve('@typescript-eslint/parser')
- }
- }
- }
- ]
- : [])
+ {
+ code: `
+
+
+
+
+
+
+
+
+
+
+
+ `,
+ options: ['PascalCase', { registeredComponentsOnly: true }],
+ languageOptions: {
+ parserOptions: {
+ parser: require.resolve('@typescript-eslint/parser')
+ }
+ }
+ }
],
invalid: [
{
@@ -1305,106 +1298,99 @@ tester.run('component-name-in-template-casing', rule, {
]
},
// type-only imports
- ...(semver.gte(
- require('@typescript-eslint/parser/package.json').version,
- '5.0.0'
- )
- ? [
- {
- code: `
-
+ {
+ code: `
+
-
-
-
-
-
-
-
-
-
- `,
- options: ['PascalCase', { registeredComponentsOnly: false }],
- languageOptions: {
- parserOptions: {
- parser: require.resolve('@typescript-eslint/parser')
- }
- },
- output: `
-
+
+
+
+
+
+
+
+
+
+ `,
+ output: `
+
-
-
-
-
-
-
-
-
-
- `,
- errors: [
- {
- message: 'Component name "foo" is not PascalCase.',
- line: 13,
- column: 17,
- endLine: 13,
- endColumn: 21
- },
- {
- message: 'Component name "hello-world1" is not PascalCase.',
- line: 14,
- column: 17,
- endLine: 14,
- endColumn: 30
- },
- {
- message: 'Component name "hello-world2" is not PascalCase.',
- line: 15,
- column: 17,
- endLine: 15,
- endColumn: 30
- },
- {
- message: 'Component name "hello-world3" is not PascalCase.',
- line: 16,
- column: 17,
- endLine: 16,
- endColumn: 30
- },
- {
- message: 'Component name "hello-world4" is not PascalCase.',
- line: 17,
- column: 17,
- endLine: 17,
- endColumn: 30
- },
- {
- message: 'Component name "hello-world5" is not PascalCase.',
- line: 18,
- column: 17,
- endLine: 18,
- endColumn: 30
- }
- ]
- }
- ]
- : [])
+
+
+
+
+
+
+
+
+
+ `,
+ options: ['PascalCase', { registeredComponentsOnly: false }],
+ languageOptions: {
+ parserOptions: {
+ parser: require.resolve('@typescript-eslint/parser')
+ }
+ },
+ errors: [
+ {
+ message: 'Component name "foo" is not PascalCase.',
+ line: 13,
+ column: 11,
+ endLine: 13,
+ endColumn: 15
+ },
+ {
+ message: 'Component name "hello-world1" is not PascalCase.',
+ line: 14,
+ column: 11,
+ endLine: 14,
+ endColumn: 24
+ },
+ {
+ message: 'Component name "hello-world2" is not PascalCase.',
+ line: 15,
+ column: 11,
+ endLine: 15,
+ endColumn: 24
+ },
+ {
+ message: 'Component name "hello-world3" is not PascalCase.',
+ line: 16,
+ column: 11,
+ endLine: 16,
+ endColumn: 24
+ },
+ {
+ message: 'Component name "hello-world4" is not PascalCase.',
+ line: 17,
+ column: 11,
+ endLine: 17,
+ endColumn: 24
+ },
+ {
+ message: 'Component name "hello-world5" is not PascalCase.',
+ line: 18,
+ column: 11,
+ endLine: 18,
+ endColumn: 24
+ }
+ ]
+ }
]
})
diff --git a/tests/lib/rules/html-self-closing.js b/tests/lib/rules/html-self-closing.js
index 37991580a..b115cfa1e 100644
--- a/tests/lib/rules/html-self-closing.js
+++ b/tests/lib/rules/html-self-closing.js
@@ -56,7 +56,6 @@ tester.run('html-self-closing', rule, {
// Don't error if there are comments in their content.
{
code: '',
- output: null,
options: [{ html: { normal: 'always' } }]
},
diff --git a/tests/lib/rules/no-boolean-default.js b/tests/lib/rules/no-boolean-default.js
index c3132a5fd..56e9cd1cc 100644
--- a/tests/lib/rules/no-boolean-default.js
+++ b/tests/lib/rules/no-boolean-default.js
@@ -4,7 +4,6 @@
*/
'use strict'
-const semver = require('semver')
const rule = require('../../../lib/rules/no-boolean-default')
const RuleTester = require('../../eslint-compat').RuleTester
@@ -484,15 +483,9 @@ ruleTester.run('no-boolean-default', rule, {
}
]
},
- ...(semver.lt(
- require('@typescript-eslint/parser/package.json').version,
- '4.0.0'
- )
- ? []
- : [
- {
- filename: 'test.vue',
- code: `
+ {
+ filename: 'test.vue',
+ code: `
`,
- languageOptions: {
- parser: require('vue-eslint-parser'),
- parserOptions: {
- parser: require.resolve('@typescript-eslint/parser')
- }
- },
- errors: [
- {
- message:
- 'Boolean prop should not set a default (Vue defaults it to false).',
- line: 7,
- column: 14,
- endLine: 7,
- endColumn: 19
- }
- ]
- },
- {
- filename: 'test.vue',
- code: `
+ languageOptions: {
+ parser: require('vue-eslint-parser'),
+ parserOptions: {
+ parser: require.resolve('@typescript-eslint/parser')
+ }
+ },
+ errors: [
+ {
+ message:
+ 'Boolean prop should not set a default (Vue defaults it to false).',
+ line: 7,
+ column: 14,
+ endLine: 7,
+ endColumn: 19
+ }
+ ]
+ },
+ {
+ filename: 'test.vue',
+ code: `
`,
- languageOptions: {
- parser: require('vue-eslint-parser'),
- parserOptions: {
- parser: require.resolve('@typescript-eslint/parser')
- }
- },
- options: ['default-false'],
- errors: [
- {
- message: 'Boolean prop should only be defaulted to false.',
- line: 7,
- column: 14,
- endLine: 7,
- endColumn: 18
- }
- ]
- }
- ]),
+ options: ['default-false'],
+ languageOptions: {
+ parser: require('vue-eslint-parser'),
+ parserOptions: {
+ parser: require.resolve('@typescript-eslint/parser')
+ }
+ },
+ errors: [
+ {
+ message: 'Boolean prop should only be defaulted to false.',
+ line: 7,
+ column: 14,
+ endLine: 7,
+ endColumn: 18
+ }
+ ]
+ },
{
filename: 'test.vue',
code: `
diff --git a/tests/lib/rules/no-deprecated-props-default-this.js b/tests/lib/rules/no-deprecated-props-default-this.js
index ed0b2005d..c3be42a8f 100644
--- a/tests/lib/rules/no-deprecated-props-default-this.js
+++ b/tests/lib/rules/no-deprecated-props-default-this.js
@@ -71,8 +71,7 @@ ruleTester.run('no-deprecated-props-default-this', rule, {
}
}
- `,
- errors: [{}, {}]
+ `
},
{
filename: 'test.vue',
diff --git a/tests/lib/rules/no-export-in-script-setup.js b/tests/lib/rules/no-export-in-script-setup.js
index bf24b8682..e678d5f99 100644
--- a/tests/lib/rules/no-export-in-script-setup.js
+++ b/tests/lib/rules/no-export-in-script-setup.js
@@ -42,11 +42,10 @@ ruleTester.run('no-export-in-script-setup', rule, {
`
},
- ...(semver.gte(
- require('@typescript-eslint/parser/package.json').version,
- '5.4.0'
- ) &&
- semver.satisfies(require('typescript/package.json').version, '>=4.5.0-0')
+ ...(semver.satisfies(
+ require('typescript/package.json').version,
+ '>=4.5.0-0'
+ )
? [
{
filename: 'test.vue',
diff --git a/tests/lib/rules/no-implicit-coercion.js b/tests/lib/rules/no-implicit-coercion.js
index 7a2f89359..78e8ac91e 100644
--- a/tests/lib/rules/no-implicit-coercion.js
+++ b/tests/lib/rules/no-implicit-coercion.js
@@ -49,9 +49,7 @@ tester.run('no-implicit-coercion', rule, {
]
},
``,
- ...(semver.gte(ESLint.version, '8.28.0')
- ? [``]
- : []),
+ ``,
{
filename: 'test.vue',
code: ``,
@@ -238,40 +236,35 @@ tester.run('no-implicit-coercion', rule, {
}
]
},
- ...(semver.gte(ESLint.version, '7.24.0')
- ? [
- {
- filename: 'test.vue',
- code: ``,
- output: semver.gte(ESLint.version, '9.0.0')
- ? null
- : ``,
- options: [
- {
- disallowTemplateShorthand: true
- }
- ],
- errors: [
- {
- message: getExpectedErrorMessage('String(foo)'),
- line: 1,
- column: 27,
- endLine: 1,
- endColumn: 35,
- suggestions: semver.gte(ESLint.version, '9.0.0')
- ? [
- {
- messageId: 'useRecommendation',
- data: { recommendation: 'String(foo)' },
- output:
- ''
- }
- ]
- : []
- }
- ]
- }
- ]
- : [])
+ {
+ filename: 'test.vue',
+ code: ``,
+ output: semver.gte(ESLint.version, '9.0.0')
+ ? null
+ : ``,
+ options: [
+ {
+ disallowTemplateShorthand: true
+ }
+ ],
+ errors: [
+ {
+ message: getExpectedErrorMessage('String(foo)'),
+ line: 1,
+ column: 27,
+ endLine: 1,
+ endColumn: 35,
+ suggestions: semver.gte(ESLint.version, '9.0.0')
+ ? [
+ {
+ messageId: 'useRecommendation',
+ data: { recommendation: 'String(foo)' },
+ output: ''
+ }
+ ]
+ : []
+ }
+ ]
+ }
]
})
diff --git a/tests/lib/rules/no-loss-of-precision.js b/tests/lib/rules/no-loss-of-precision.js
index a9d632862..1b60a33ca 100644
--- a/tests/lib/rules/no-loss-of-precision.js
+++ b/tests/lib/rules/no-loss-of-precision.js
@@ -4,8 +4,7 @@
*/
'use strict'
-const { RuleTester, ESLint } = require('../../eslint-compat')
-const semver = require('semver')
+const { RuleTester } = require('../../eslint-compat')
const rule = require('../../../lib/rules/no-loss-of-precision')
const tester = new RuleTester({
@@ -17,86 +16,66 @@ const tester = new RuleTester({
})
tester.run('no-loss-of-precision', rule, {
valid: [
- ...(semver.gte(ESLint.version, '7.1.0')
- ? [
- {
- filename: 'test.vue',
- code: `
-
- {{12345}}
- {{123.45}}
-
- `
- },
- {
- filename: 'test.vue',
- code: `
-
-
-
- `
- }
- ]
- : [])
+ {
+ filename: 'test.vue',
+ code: `
+
+ {{12345}}
+ {{123.45}}
+
+ `
+ },
+ {
+ filename: 'test.vue',
+ code: `
+
+
+
+ `
+ }
],
invalid: [
- ...(semver.gte(ESLint.version, '7.1.0')
- ? [
- {
- filename: 'test.vue',
- code: `
-
- {{12345678901234567890}}
- {{0.12345678901234567890}}
-
- `,
- errors: [
- {
- message: 'This number literal will lose precision at runtime.',
- line: 3,
- column: 17,
- endLine: 3,
- endColumn: 37
- },
- {
- message: 'This number literal will lose precision at runtime.',
- line: 4,
- column: 17,
- endLine: 4,
- endColumn: 39
- }
- ]
- },
- {
- filename: 'test.vue',
- code: `
-
-
-
- `,
- errors: [
- {
- message: 'This number literal will lose precision at runtime.',
- line: 3,
- column: 34,
- endLine: 3,
- endColumn: 54
- }
- ]
- }
- ]
- : [
- {
- filename: 'test.vue',
- code: `
-
-
-
- `,
- errors: [
- 'Failed to extend ESLint core rule "no-loss-of-precision". You may be able to use this rule by upgrading the version of ESLint. If you cannot upgrade it, turn off this rule.'
- ]
- }
- ])
+ {
+ filename: 'test.vue',
+ code: `
+
+ {{12345678901234567890}}
+ {{0.12345678901234567890}}
+
+ `,
+ errors: [
+ {
+ message: 'This number literal will lose precision at runtime.',
+ line: 3,
+ column: 13,
+ endLine: 3,
+ endColumn: 33
+ },
+ {
+ message: 'This number literal will lose precision at runtime.',
+ line: 4,
+ column: 13,
+ endLine: 4,
+ endColumn: 35
+ }
+ ]
+ },
+ {
+ filename: 'test.vue',
+ code: `
+
+
+
+ `,
+ errors: [
+ {
+ message: 'This number literal will lose precision at runtime.',
+ line: 3,
+ column: 30,
+ endLine: 3,
+ endColumn: 50
+ }
+ ]
+ }
]
})
diff --git a/tests/lib/rules/no-multi-spaces.js b/tests/lib/rules/no-multi-spaces.js
index 909a5063a..5f33a25e7 100644
--- a/tests/lib/rules/no-multi-spaces.js
+++ b/tests/lib/rules/no-multi-spaces.js
@@ -73,6 +73,38 @@ ruleTester.run('no-multi-spaces', rule, {
ignoreProperties: true
}
]
+ },
+ {
+ code: `
+
+
+
+ `,
+ options: [
+ {
+ ignoreEOLComments: true
+ }
+ ]
+ },
+ {
+ code: `
+
+
+
+ `,
+ options: [
+ {
+ ignoreEOLComments: true
+ }
+ ]
}
],
invalid: [
@@ -329,6 +361,132 @@ ruleTester.run('no-multi-spaces', rule, {
endColumn: 30
}
]
+ },
+ {
+ code: `
+
+
+
+ `,
+ output: `
+
+
+
+ `,
+ errors: [
+ {
+ message: "Multiple spaces found before '// comment'.",
+ line: 5,
+ column: 23,
+ endLine: 5,
+ endColumn: 25
+ }
+ ]
+ },
+ {
+ code: `
+
+
+
+ `,
+ output: `
+
+
+
+ `,
+ errors: [
+ {
+ message: "Multiple spaces found before '/* multiline comment */'.",
+ line: 5,
+ column: 23,
+ endLine: 5,
+ endColumn: 25
+ }
+ ]
+ },
+ {
+ code: `
+
+
+
+ `,
+ output: `
+
+
+
+ `,
+ options: [
+ {
+ ignoreEOLComments: false
+ }
+ ],
+ errors: [
+ {
+ message: "Multiple spaces found before '// comment'.",
+ line: 5,
+ column: 23,
+ endLine: 5,
+ endColumn: 25
+ }
+ ]
+ },
+ {
+ code: `
+
+
+
+ `,
+ output: `
+
+
+
+ `,
+ options: [
+ {
+ ignoreEOLComments: false
+ }
+ ],
+ errors: [
+ {
+ message: "Multiple spaces found before '/* multiline comment */'.",
+ line: 5,
+ column: 23,
+ endLine: 5,
+ endColumn: 25
+ }
+ ]
}
]
})
diff --git a/tests/lib/rules/no-negated-v-if-condition.js b/tests/lib/rules/no-negated-v-if-condition.js
index fc0e02d0d..0b97c7909 100644
--- a/tests/lib/rules/no-negated-v-if-condition.js
+++ b/tests/lib/rules/no-negated-v-if-condition.js
@@ -153,24 +153,19 @@ tester.run('no-negated-v-if-condition', rule, {
Alternative
`,
+ output: `
+
+ Alternative
+ Content
+
+ `,
errors: [
{
messageId: 'negatedCondition',
line: 3,
column: 20,
endLine: 3,
- endColumn: 24,
- suggestions: [
- {
- messageId: 'fixNegatedCondition',
- output: `
-
- Alternative
- Content
-
- `
- }
- ]
+ endColumn: 24
}
]
},
@@ -182,24 +177,19 @@ tester.run('no-negated-v-if-condition', rule, {
Otherwise
`,
+ output: `
+
+ Otherwise
+ Negated condition
+
+ `,
errors: [
{
messageId: 'negatedCondition',
line: 3,
column: 20,
endLine: 3,
- endColumn: 33,
- suggestions: [
- {
- messageId: 'fixNegatedCondition',
- output: `
-
- Otherwise
- Negated condition
-
- `
- }
- ]
+ endColumn: 33
}
]
},
@@ -211,24 +201,19 @@ tester.run('no-negated-v-if-condition', rule, {
Equal
`,
+ output: `
+
+ Equal
+ Not equal
+
+ `,
errors: [
{
messageId: 'negatedCondition',
line: 3,
column: 20,
endLine: 3,
- endColumn: 26,
- suggestions: [
- {
- messageId: 'fixNegatedCondition',
- output: `
-
- Equal
- Not equal
-
- `
- }
- ]
+ endColumn: 26
}
]
},
@@ -240,24 +225,19 @@ tester.run('no-negated-v-if-condition', rule, {
Strictly equal
`,
+ output: `
+
+ Strictly equal
+ Strictly not equal
+
+ `,
errors: [
{
messageId: 'negatedCondition',
line: 3,
column: 20,
endLine: 3,
- endColumn: 27,
- suggestions: [
- {
- messageId: 'fixNegatedCondition',
- output: `
-
- Strictly equal
- Strictly not equal
-
- `
- }
- ]
+ endColumn: 27
}
]
},
@@ -270,25 +250,20 @@ tester.run('no-negated-v-if-condition', rule, {
Default
`,
+ output: `
+
+ First
+ Default
+ Second
+
+ `,
errors: [
{
messageId: 'negatedCondition',
line: 4,
column: 26,
endLine: 4,
- endColumn: 30,
- suggestions: [
- {
- messageId: 'fixNegatedCondition',
- output: `
-
- First
- Default
- Second
-
- `
- }
- ]
+ endColumn: 30
}
]
},
@@ -301,25 +276,20 @@ tester.run('no-negated-v-if-condition', rule, {
Default
`,
+ output: `
+
+ First
+ Default
+ Second
+
+ `,
errors: [
{
messageId: 'negatedCondition',
line: 4,
column: 26,
endLine: 4,
- endColumn: 28,
- suggestions: [
- {
- messageId: 'fixNegatedCondition',
- output: `
-
- First
- Default
- Second
-
- `
- }
- ]
+ endColumn: 28
}
]
},
@@ -331,24 +301,19 @@ tester.run('no-negated-v-if-condition', rule, {
span contents
`,
+ output: `
+
+ span contents
+ div contents
+
+ `,
errors: [
{
messageId: 'negatedCondition',
line: 3,
column: 20,
endLine: 3,
- endColumn: 30,
- suggestions: [
- {
- messageId: 'fixNegatedCondition',
- output: `
-
- span contents
- div contents
-
- `
- }
- ]
+ endColumn: 30
}
]
},
@@ -366,17 +331,7 @@ tester.run('no-negated-v-if-condition', rule, {
`,
- errors: [
- {
- messageId: 'negatedCondition',
- line: 3,
- column: 20,
- endLine: 3,
- endColumn: 26,
- suggestions: [
- {
- messageId: 'fixNegatedCondition',
- output: `
+ output: `
Nested if content
@@ -387,57 +342,28 @@ tester.run('no-negated-v-if-condition', rule, {
Inner else content
- `
- }
- ]
+ `,
+ errors: [
+ {
+ messageId: 'negatedCondition',
+ line: 3,
+ column: 20,
+ endLine: 3,
+ endColumn: 26
},
{
messageId: 'negatedCondition',
line: 4,
column: 23,
endLine: 4,
- endColumn: 29,
- suggestions: [
- {
- messageId: 'fixNegatedCondition',
- output: `
-
-
-
Inner else content
-
Inner if content
-
-
- Nested if content
- Nested else content
-
-
- `
- }
- ]
+ endColumn: 29
},
{
messageId: 'negatedCondition',
line: 8,
column: 23,
endLine: 8,
- endColumn: 30,
- suggestions: [
- {
- messageId: 'fixNegatedCondition',
- output: `
-
-
-
Inner if content
-
Inner else content
-
-
- Nested else content
- Nested if content
-
-
- `
- }
- ]
+ endColumn: 30
}
]
}
diff --git a/tests/lib/rules/no-parsing-error.js b/tests/lib/rules/no-parsing-error.js
index 54194a7b5..9225e4bda 100644
--- a/tests/lib/rules/no-parsing-error.js
+++ b/tests/lib/rules/no-parsing-error.js
@@ -80,13 +80,11 @@ tester.run('no-parsing-error', rule, {
},
{
code: '