UNPKG

@alza54/eslint-config-vue

Version:

Strict shareable config for ESLint and TypeScript that I use for my projects

42 lines (33 loc) 1.03 kB
import fs from 'fs'; import path from 'path'; import eslint from 'eslint'; const defaultConfig = require('..'); const packagePath = path.resolve(__dirname, '..'); const readFixtureFile = fixtureName => { const fixturePath = `${packagePath}/tests/fixtures/${fixtureName}`; return String(fs.readFileSync(fixturePath)); }; function eslintConfigTester (fixtureName) { // noinspection JSCheckFunctionSignatures const cli = new eslint.CLIEngine({ 'cwd': packagePath, 'baseConfig': { ...defaultConfig, 'root': true, }, 'useEslintrc': false, }); return cli.executeOnText(readFixtureFile(fixtureName)); } describe('correct fixture', () => { test('correct fixture', () => { expect.hasAssertions(); const lintResult = eslintConfigTester('Correct.vue'); expect(lintResult.errorCount).toBe(0); }); test('incorrect fixture', () => { expect.hasAssertions(); const lintResult = eslintConfigTester('Incorrect.vue'); expect(lintResult.errorCount).toBe(2); }); });