Skip to content

Commit 65f208b

Browse files
committed
refactor: use recommendedConfig instead of recommended in meta docs
1 parent 682fd59 commit 65f208b

31 files changed

+100
-32
lines changed

lib/configs/angular.ts

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,20 @@
22
// DO NOT EDIT THIS CODE BY HAND
33
// YOU CAN REGENERATE IT USING yarn generate:configs
44

5-
export = { plugins: ['testing-library'], rules: {} };
5+
export = {
6+
plugins: ['testing-library'],
7+
rules: {
8+
'await-async-query': 'error',
9+
'await-async-utils': 'error',
10+
'no-await-sync-query': 'error',
11+
'no-container': 'error',
12+
'no-debug': 'error',
13+
'no-dom-import': ['error', 'angular'],
14+
'no-node-access': 'error',
15+
'no-promise-in-fire-event': 'error',
16+
'no-wait-for-empty-callback': 'error',
17+
'prefer-find-by': 'error',
18+
'prefer-screen-queries': 'error',
19+
'render-result-naming-convention': 'error',
20+
},
21+
};

lib/configs/dom.ts

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,15 @@
22
// DO NOT EDIT THIS CODE BY HAND
33
// YOU CAN REGENERATE IT USING yarn generate:configs
44

5-
export = { plugins: ['testing-library'], rules: {} };
5+
export = {
6+
plugins: ['testing-library'],
7+
rules: {
8+
'await-async-query': 'error',
9+
'await-async-utils': 'error',
10+
'no-await-sync-query': 'error',
11+
'no-promise-in-fire-event': 'error',
12+
'no-wait-for-empty-callback': 'error',
13+
'prefer-find-by': 'error',
14+
'prefer-screen-queries': 'error',
15+
},
16+
};

lib/configs/react.ts

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,20 @@
22
// DO NOT EDIT THIS CODE BY HAND
33
// YOU CAN REGENERATE IT USING yarn generate:configs
44

5-
export = { plugins: ['testing-library'], rules: {} };
5+
export = {
6+
plugins: ['testing-library'],
7+
rules: {
8+
'await-async-query': 'error',
9+
'await-async-utils': 'error',
10+
'no-await-sync-query': 'error',
11+
'no-container': 'error',
12+
'no-debug': 'error',
13+
'no-dom-import': ['error', 'react'],
14+
'no-node-access': 'error',
15+
'no-promise-in-fire-event': 'error',
16+
'no-wait-for-empty-callback': 'error',
17+
'prefer-find-by': 'error',
18+
'prefer-screen-queries': 'error',
19+
'render-result-naming-convention': 'error',
20+
},
21+
};

lib/configs/vue.ts

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,21 @@
22
// DO NOT EDIT THIS CODE BY HAND
33
// YOU CAN REGENERATE IT USING yarn generate:configs
44

5-
export = { plugins: ['testing-library'], rules: {} };
5+
export = {
6+
plugins: ['testing-library'],
7+
rules: {
8+
'await-async-query': 'error',
9+
'await-async-utils': 'error',
10+
'await-fire-event': 'error',
11+
'no-await-sync-query': 'error',
12+
'no-container': 'error',
13+
'no-debug': 'error',
14+
'no-dom-import': ['error', 'vue'],
15+
'no-node-access': 'error',
16+
'no-promise-in-fire-event': 'error',
17+
'no-wait-for-empty-callback': 'error',
18+
'prefer-find-by': 'error',
19+
'prefer-screen-queries': 'error',
20+
'render-result-naming-convention': 'error',
21+
},
22+
};

lib/rules/await-async-query.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ export default createTestingLibraryRule<Options, MessageIds>({
1919
docs: {
2020
description: 'Enforce promises from async queries to be handled',
2121
category: 'Best Practices',
22-
recommended: {
22+
recommendedConfig: {
2323
dom: 'error',
2424
angular: 'error',
2525
react: 'error',

lib/rules/await-async-utils.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ export default createTestingLibraryRule<Options, MessageIds>({
1919
docs: {
2020
description: 'Enforce promises from async utils to be handled',
2121
category: 'Best Practices',
22-
recommended: {
22+
recommendedConfig: {
2323
dom: 'error',
2424
angular: 'error',
2525
react: 'error',

lib/rules/await-fire-event.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ export default createTestingLibraryRule<Options, MessageIds>({
1919
docs: {
2020
description: 'Enforce promises from fire event methods to be handled',
2121
category: 'Best Practices',
22-
recommended: {
22+
recommendedConfig: {
2323
dom: false,
2424
angular: false,
2525
react: false,

lib/rules/consistent-data-testid.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ export default createTestingLibraryRule<Options, MessageIds>({
1919
docs: {
2020
description: 'Ensures consistent usage of `data-testid`',
2121
category: 'Best Practices',
22-
recommended: {
22+
recommendedConfig: {
2323
dom: false,
2424
angular: false,
2525
react: false,

lib/rules/index.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,9 @@ import { TSESLint } from '@typescript-eslint/experimental-utils';
66
import { importDefault, TestingLibraryRuleMeta } from '../utils';
77

88
type RuleModule = TSESLint.RuleModule<string, unknown[]> & {
9-
meta: TestingLibraryRuleMeta<string, unknown[]>;
9+
meta: TestingLibraryRuleMeta<string, unknown[]> & {
10+
recommended: false;
11+
};
1012
};
1113

1214
const rulesDir = __dirname;

lib/rules/no-await-sync-events.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ export default createTestingLibraryRule<Options, MessageIds>({
2121
docs: {
2222
description: 'Disallow unnecessary `await` for sync events',
2323
category: 'Best Practices',
24-
recommended: {
24+
recommendedConfig: {
2525
dom: false,
2626
angular: false,
2727
react: false,

lib/rules/no-await-sync-query.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ export default createTestingLibraryRule<Options, MessageIds>({
1313
docs: {
1414
description: 'Disallow unnecessary `await` for sync queries',
1515
category: 'Best Practices',
16-
recommended: {
16+
recommendedConfig: {
1717
dom: 'error',
1818
angular: 'error',
1919
react: 'error',

lib/rules/no-container.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ export default createTestingLibraryRule<Options, MessageIds>({
2020
docs: {
2121
description: 'Disallow the use of container methods',
2222
category: 'Best Practices',
23-
recommended: {
23+
recommendedConfig: {
2424
dom: false,
2525
angular: 'error',
2626
react: 'error',

lib/rules/no-debug.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ export default createTestingLibraryRule<Options, MessageIds>({
2222
docs: {
2323
description: 'Disallow unnecessary debug usages in the tests',
2424
category: 'Best Practices',
25-
recommended: {
25+
recommendedConfig: {
2626
dom: false,
2727
angular: 'error',
2828
react: 'error',

lib/rules/no-dom-import.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ export default createTestingLibraryRule<Options, MessageIds>({
1818
docs: {
1919
description: 'Disallow importing from DOM Testing Library',
2020
category: 'Best Practices',
21-
recommended: {
21+
recommendedConfig: {
2222
dom: false,
2323
angular: ['error', 'angular'],
2424
react: ['error', 'react'],

lib/rules/no-manual-cleanup.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ export default createTestingLibraryRule<Options, MessageIds>({
2828
docs: {
2929
description: 'Disallow the use of `cleanup`',
3030
category: 'Best Practices',
31-
recommended: {
31+
recommendedConfig: {
3232
dom: false,
3333
angular: false,
3434
react: false,

lib/rules/no-node-access.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ export default createTestingLibraryRule<Options, MessageIds>({
1313
docs: {
1414
description: 'Disallow direct Node access',
1515
category: 'Best Practices',
16-
recommended: {
16+
recommendedConfig: {
1717
dom: false,
1818
angular: 'error',
1919
react: 'error',

lib/rules/no-promise-in-fire-event.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ export default createTestingLibraryRule<Options, MessageIds>({
2020
description:
2121
'Disallow the use of promises passed to a `fireEvent` method',
2222
category: 'Best Practices',
23-
recommended: {
23+
recommendedConfig: {
2424
dom: 'error',
2525
angular: 'error',
2626
react: 'error',

lib/rules/no-render-in-setup.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ export default createTestingLibraryRule<Options, MessageIds>({
5050
description:
5151
'Disallow the use of `render` in testing frameworks setup functions',
5252
category: 'Best Practices',
53-
recommended: {
53+
recommendedConfig: {
5454
dom: false,
5555
angular: false,
5656
react: false,

lib/rules/no-wait-for-empty-callback.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ export default createTestingLibraryRule<Options, MessageIds>({
1818
description:
1919
"It's preferred to avoid empty callbacks in `waitFor` and `waitForElementToBeRemoved`",
2020
category: 'Best Practices',
21-
recommended: {
21+
recommendedConfig: {
2222
dom: 'error',
2323
angular: 'error',
2424
react: 'error',

lib/rules/no-wait-for-multiple-assertions.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ export default createTestingLibraryRule<Options, MessageIds>({
1616
docs: {
1717
description: "It's preferred to avoid multiple assertions in `waitFor`",
1818
category: 'Best Practices',
19-
recommended: {
19+
recommendedConfig: {
2020
dom: false,
2121
angular: false,
2222
react: false,

lib/rules/no-wait-for-side-effects.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ export default createTestingLibraryRule<Options, MessageIds>({
1616
docs: {
1717
description: "It's preferred to avoid side effects in `waitFor`",
1818
category: 'Best Practices',
19-
recommended: {
19+
recommendedConfig: {
2020
dom: false,
2121
angular: false,
2222
react: false,

lib/rules/no-wait-for-snapshot.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ export default createTestingLibraryRule<Options, MessageIds>({
1919
description:
2020
'Ensures no snapshot is generated inside of a `waitFor` call',
2121
category: 'Best Practices',
22-
recommended: {
22+
recommendedConfig: {
2323
dom: false,
2424
angular: false,
2525
react: false,

lib/rules/prefer-explicit-assert.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ export default createTestingLibraryRule<Options, MessageIds>({
2525
description:
2626
'Suggest using explicit assertions rather than just `getBy*` queries',
2727
category: 'Best Practices',
28-
recommended: {
28+
recommendedConfig: {
2929
dom: false,
3030
angular: false,
3131
react: false,

lib/rules/prefer-find-by.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ export default createTestingLibraryRule<Options, MessageIds>({
5656
description:
5757
'Suggest using `find*` query instead of `waitFor` + `get*` to wait for elements',
5858
category: 'Best Practices',
59-
recommended: {
59+
recommendedConfig: {
6060
dom: 'error',
6161
angular: 'error',
6262
react: 'error',

lib/rules/prefer-presence-queries.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ export default createTestingLibraryRule<Options, MessageIds>({
1313
category: 'Best Practices',
1414
description:
1515
'Ensure appropriate get*/query* queries are used with their respective matchers',
16-
recommended: {
16+
recommendedConfig: {
1717
dom: false,
1818
angular: false,
1919
react: false,

lib/rules/prefer-screen-queries.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ export default createTestingLibraryRule<Options, MessageIds>({
3737
docs: {
3838
description: 'Suggest using screen while querying',
3939
category: 'Best Practices',
40-
recommended: {
40+
recommendedConfig: {
4141
dom: 'error',
4242
angular: 'error',
4343
react: 'error',

lib/rules/prefer-user-event.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ export default createTestingLibraryRule<Options, MessageIds>({
6666
docs: {
6767
description: 'Suggest using userEvent over fireEvent',
6868
category: 'Best Practices',
69-
recommended: {
69+
recommendedConfig: {
7070
dom: false,
7171
angular: false,
7272
react: false,

lib/rules/prefer-wait-for.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ export default createTestingLibraryRule<Options, MessageIds>({
2626
docs: {
2727
description: 'Use `waitFor` instead of deprecated wait methods',
2828
category: 'Best Practices',
29-
recommended: {
29+
recommendedConfig: {
3030
dom: false,
3131
angular: false,
3232
react: false,

lib/rules/render-result-naming-convention.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ export default createTestingLibraryRule<Options, MessageIds>({
2424
docs: {
2525
description: 'Enforce a valid naming for return value from `render`',
2626
category: 'Best Practices',
27-
recommended: {
27+
recommendedConfig: {
2828
dom: false,
2929
angular: 'error',
3030
react: 'error',

lib/utils/types.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,10 @@ type TestingLibraryRuleMetaDocs<TOptions extends readonly unknown[]> = Omit<
1010
TSESLint.RuleMetaDataDocs,
1111
'recommended' | 'url'
1212
> & {
13-
recommended: Record<SupportedTestingFramework, RecommendedConfig<TOptions>>;
13+
recommendedConfig: Record<
14+
SupportedTestingFramework,
15+
RecommendedConfig<TOptions>
16+
>;
1417
};
1518
export type TestingLibraryRuleMeta<
1619
TMessageIds extends string,

tools/generate-configs/index.ts

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,11 +14,14 @@ const getRecommendedRulesForTestingFramework = (
1414
): LinterConfigRules =>
1515
Object.entries(rules)
1616
// eslint-disable-next-line @typescript-eslint/no-unused-vars
17-
.filter(([_, { meta: { docs } }]) => Boolean(docs.recommended[framework]))
17+
.filter(([_, { meta: { docs } }]) =>
18+
Boolean(docs.recommendedConfig[framework])
19+
)
1820
.reduce(
1921
(allRules, [ruleName, { meta }]) => ({
2022
...allRules,
21-
[ruleName.split(RULE_NAME_PREFIX)[0]]: meta.docs.recommended[framework],
23+
[ruleName.split(RULE_NAME_PREFIX)[0]]:
24+
meta.docs.recommendedConfig[framework],
2225
}),
2326
{}
2427
);

0 commit comments

Comments
 (0)