Skip to content

Commit

Permalink
test: add eslint-remote-tester
Browse files Browse the repository at this point in the history
  • Loading branch information
bmish committed Jan 3, 2023
1 parent 9e2c99a commit 3d9713f
Show file tree
Hide file tree
Showing 4 changed files with 323 additions and 6 deletions.
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -11,3 +11,7 @@ coverage
npm-debug.log
*.swp
.vscode

# eslint-remote-tester
.cache-eslint-remote-tester
eslint-remote-tester-results
63 changes: 63 additions & 0 deletions eslint-remote-tester.config.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
/* eslint filenames/match-regex:off */
const { getPathIgnorePattern } = require('eslint-remote-tester-repositories');
const fs = require('fs');

module.exports = {
/** Repositories to scan */
repositories: [
// TODO: Add more Ember apps, addons, and engines here.
// Ideally, we can add some of the most popular repos (dependents) using eslint-plugin-ember.
'DockYard/ember-composable-helpers',
'adopted-ember-addons/ember-cli-flash',
'adopted-ember-addons/ember-cli-sass',
'adopted-ember-addons/ember-cp-validations',
'adopted-ember-addons/ember-data-model-fragments',
'adopted-ember-addons/ember-electron',
'adopted-ember-addons/ember-moment',
'babel/ember-cli-babel',
'cibernox/ember-power-select',
'ef4/ember-auto-import',
'ember-cli/ember-cli',
'ember-cli/ember-cli-htmlbars',
'ember-decorators/ember-decorators',
'emberjs/data',
'emberjs/ember-qunit',
'emberjs/ember.js',
'jmurphyau/ember-truth-helpers',
'machty/ember-concurrency',
'miragejs/ember-cli-mirage',
'typed-ember/ember-cli-typescript',
],

/** Optional pattern used to exclude paths */
pathIgnorePattern: getPathIgnorePattern(),

/** Extensions of files under scanning */
extensions: ['js', 'ts'],

/** Optional boolean flag used to enable caching of cloned repositories. For CIs it's ideal to disable caching. Defaults to true. */
cache: false,

/** ESLint configuration */
eslintrc: {
plugins: ['ember'],
// Enable all of our rules.
rules: Object.fromEntries(
fs
.readdirSync(`${__dirname}/lib/rules`)
.map((filename) => `ember/${filename.replace(/\.js$/, '')}`)
.map((ruleName) => {
let value;
// A few rules require additional configuration.
if (ruleName === 'ember/no-restricted-property-modifications') {
value = ['error', { properties: ['myProp'] }];
} else if (ruleName === 'ember/no-restricted-service-injections') {
value = ['error', { services: ['my-service'] }];
} else {
value = 'error';
}
return [ruleName, value];
})
),
},
};
3 changes: 3 additions & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@
"lint:package-json": "npmPkgJsonLint .",
"lint:package-json-sorting": "sort-package-json --check",
"lint:package-json-sorting:fix": "sort-package-json package.json",
"lint:remote": "eslint-remote-tester",
"release": "release-it",
"start": "yarn run test:watch",
"test": "jest",
Expand Down Expand Up @@ -94,6 +95,8 @@
"eslint-plugin-node": "^11.1.0",
"eslint-plugin-prettier": "^4.0.0",
"eslint-plugin-unicorn": "^45.0.1",
"eslint-remote-tester": "^3.0.0",
"eslint-remote-tester-repositories": "^1.0.0",
"jest": "^29.1.2",
"jquery": "^3.5.1",
"jsdom": "^20.0.0",
Expand Down
Loading

0 comments on commit 3d9713f

Please sign in to comment.