From cd2ad1c1a39fff5370725754d7f2552524d4828a Mon Sep 17 00:00:00 2001 From: Yosuke Ota Date: Tue, 6 Jul 2021 18:23:00 +0900 Subject: [PATCH] Update `vue/no-boolean-default` rule to support ` + `, + parser: require.resolve('vue-eslint-parser') + }, + { + filename: 'test.vue', + code: ` + + `, + parser: require.resolve('vue-eslint-parser'), + options: ['default-false'] + }, + { + filename: 'test.vue', + code: ` + + `, + parser: require.resolve('vue-eslint-parser'), + parserOptions: { + parser: require.resolve('@typescript-eslint/parser') + } + }, + { + filename: 'test.vue', + code: ` + + `, + parser: require.resolve('vue-eslint-parser'), + parserOptions: { + parser: require.resolve('@typescript-eslint/parser') + }, + options: ['default-false'] + }, + { + filename: 'test.vue', + code: ` + + `, + parser: require.resolve('vue-eslint-parser'), + parserOptions: { + parser: require.resolve('@typescript-eslint/parser') + } + }, + { + filename: 'test.vue', + code: ` + + `, + parser: require.resolve('vue-eslint-parser'), + parserOptions: { + parser: require.resolve('@typescript-eslint/parser') + } } ], @@ -314,6 +411,103 @@ ruleTester.run('no-boolean-default', rule, { line: 6 } ] - } + }, + { + filename: 'test.vue', + code: ` + + `, + parser: require.resolve('vue-eslint-parser'), + errors: [ + { + message: + 'Boolean prop should not set a default (Vue defaults it to false).', + line: 6 + } + ] + }, + { + filename: 'test.vue', + code: ` + + `, + parser: require.resolve('vue-eslint-parser'), + options: ['default-false'], + errors: [ + { + message: 'Boolean prop should only be defaulted to false.', + line: 6 + } + ] + }, + ...(semver.lt( + require('@typescript-eslint/parser/package.json').version, + '4.0.0' + ) + ? [] + : [ + { + filename: 'test.vue', + code: ` + + `, + parser: require.resolve('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 + } + ] + }, + { + filename: 'test.vue', + code: ` + + `, + parser: require.resolve('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 + } + ] + } + ]) ] })