eslint.test.js 774 B

1234567891011121314151617
  1. const { ESLint } = require('eslint');
  2. const { restrictedSyntax } = require('@/../scripts/webpack-util');
  3. test('eslint no-restricted-syntax', async () => {
  4. const linter = new ESLint();
  5. const code = restrictedSyntax.map(r => r.code + ';').join('');
  6. const expected = restrictedSyntax.map(r => (delete r.code, r.message));
  7. for (const path of ['', '/content', '/web']) {
  8. const filePath = require.resolve(`../../src/injected${path}/index.js`);
  9. const res = await linter.lintText(code, { filePath });
  10. const found = res[0].messages;
  11. const unexpected = found.filter(m => !expected.includes(m.message));
  12. const missed = expected.filter(msg => !found.some(f => msg === f.message));
  13. expect(unexpected).toEqual([]);
  14. expect(missed).toEqual([]);
  15. }
  16. });