diff --git a/rules/assertion-arguments.js b/rules/assertion-arguments.js index 9443fced..4505f765 100644 --- a/rules/assertion-arguments.js +++ b/rules/assertion-arguments.js @@ -141,7 +141,8 @@ const schema = [{ enum: [ 'always', 'never' - ] + ], + default: null } } }]; @@ -149,6 +150,7 @@ const schema = [{ module.exports = { create, meta: { + type: 'problem', docs: { url: util.getDocsUrl(__filename) }, diff --git a/rules/assertion-message.js b/rules/assertion-message.js index e70d6a0c..761c7c3f 100644 --- a/rules/assertion-message.js +++ b/rules/assertion-message.js @@ -61,12 +61,14 @@ const schema = [{ enum: [ 'always', 'never' - ] + ], + default: 'always' }]; module.exports = { create, meta: { + type: 'suggestion', docs: { url: util.getDocsUrl(__filename, '4211212daf1bfcfff3ebc5d4efdc4ba1a87acbf1') }, diff --git a/rules/max-asserts.js b/rules/max-asserts.js index c75632c8..d86ad776 100644 --- a/rules/max-asserts.js +++ b/rules/max-asserts.js @@ -5,9 +5,11 @@ const createAvaRule = require('../create-ava-rule'); const notAssertionMethods = ['plan', 'end']; +const MAX_NUMBER_ASSERTIONS_BY_DEFAULT = 5; + const create = context => { const ava = createAvaRule(); - const maxAssertions = context.options[0] || 5; + const maxAssertions = context.options[0] || MAX_NUMBER_ASSERTIONS_BY_DEFAULT; let assertionCount = 0; let nodeToReport = null; @@ -55,16 +57,18 @@ const create = context => { }); }; -const schema = [{ - type: 'integer' -}]; - module.exports = { create, meta: { + type: 'suggestion', docs: { url: util.getDocsUrl(__filename) }, - schema + schema: [{ + title: 'Maximum number of assertions for each test', + type: 'integer', + minimum: 0, + default: MAX_NUMBER_ASSERTIONS_BY_DEFAULT + }] } }; diff --git a/rules/no-async-fn-without-await.js b/rules/no-async-fn-without-await.js index 31df349a..d02dc38a 100644 --- a/rules/no-async-fn-without-await.js +++ b/rules/no-async-fn-without-await.js @@ -51,6 +51,7 @@ const create = context => { module.exports = { create, meta: { + type: 'problem', docs: { url: util.getDocsUrl(__filename) } diff --git a/rules/no-cb-test.js b/rules/no-cb-test.js index 75ebef74..11d2de17 100644 --- a/rules/no-cb-test.js +++ b/rules/no-cb-test.js @@ -24,6 +24,7 @@ const create = context => { module.exports = { create, meta: { + type: 'suggestion', docs: { url: util.getDocsUrl(__filename) } diff --git a/rules/no-duplicate-modifiers.js b/rules/no-duplicate-modifiers.js index 844142ec..1efd2c50 100644 --- a/rules/no-duplicate-modifiers.js +++ b/rules/no-duplicate-modifiers.js @@ -45,6 +45,7 @@ const create = context => { module.exports = { create, meta: { + type: 'problem', docs: { url: util.getDocsUrl(__filename) } diff --git a/rules/no-identical-title.js b/rules/no-identical-title.js index ccfe13fc..672ea32a 100644 --- a/rules/no-identical-title.js +++ b/rules/no-identical-title.js @@ -62,6 +62,8 @@ const create = context => { module.exports = { create, meta: { + // This is actually a `problem` as AVA will not allow tests with identical titles + type: 'problem', docs: { url: util.getDocsUrl(__filename) } diff --git a/rules/no-ignored-test-files.js b/rules/no-ignored-test-files.js index b7668ca0..9eff6480 100644 --- a/rules/no-ignored-test-files.js +++ b/rules/no-ignored-test-files.js @@ -80,10 +80,21 @@ const create = context => { }; const schema = [{ + title: 'The `files` option is an array of strings representing the files glob that AVA will use to find test files.', + $comment: 'The default value of the `files` option is from `package.json` or `ava.config.js`.', type: 'object', properties: { files: { - type: 'array' + type: 'array', + minItems: 0, + uniqueItems: true, + items: { + type: 'string' + }, + examples: [ + ['lib/**/*.test.js', 'utils/**/*.test.js'] + ], + default: undefined } } }]; @@ -94,6 +105,7 @@ module.exports = { docs: { url: util.getDocsUrl(__filename) }, + type: 'problem', schema } }; diff --git a/rules/no-import-test-files.js b/rules/no-import-test-files.js index 256f4a6c..1fc37861 100644 --- a/rules/no-import-test-files.js +++ b/rules/no-import-test-files.js @@ -69,10 +69,21 @@ const create = context => { }; const schema = [{ + title: 'The `files` option is an array of strings representing the files glob that AVA will use to find test files.', + $comment: 'The default value of the `files` option is from `package.json` or `ava.config.js`.', type: 'object', properties: { files: { - type: 'array' + type: 'array', + minItems: 0, + uniqueItems: true, + items: { + type: 'string' + }, + examples: [ + ['lib/**/*.test.js', 'utils/**/*.test.js'] + ], + default: undefined } } }]; @@ -83,6 +94,7 @@ module.exports = { docs: { url: util.getDocsUrl(__filename) }, + type: 'problem', schema } }; diff --git a/rules/no-invalid-end.js b/rules/no-invalid-end.js index 887cc222..7a51be4c 100644 --- a/rules/no-invalid-end.js +++ b/rules/no-invalid-end.js @@ -28,6 +28,7 @@ const create = context => { module.exports = { create, meta: { + type: 'problem', docs: { url: util.getDocsUrl(__filename) } diff --git a/rules/no-nested-tests.js b/rules/no-nested-tests.js index f7837993..355ed372 100644 --- a/rules/no-nested-tests.js +++ b/rules/no-nested-tests.js @@ -33,6 +33,7 @@ const create = context => { module.exports = { create, meta: { + type: 'problem', docs: { url: util.getDocsUrl(__filename) } diff --git a/rules/no-only-test.js b/rules/no-only-test.js index 5ef20921..f1d1f30f 100644 --- a/rules/no-only-test.js +++ b/rules/no-only-test.js @@ -32,6 +32,7 @@ const create = context => { module.exports = { create, meta: { + type: 'problem', docs: { url: util.getDocsUrl(__filename) }, diff --git a/rules/no-skip-assert.js b/rules/no-skip-assert.js index d283b286..a7cbc80a 100644 --- a/rules/no-skip-assert.js +++ b/rules/no-skip-assert.js @@ -26,6 +26,7 @@ module.exports = { meta: { docs: { url: util.getDocsUrl(__filename) - } + }, + type: 'problem' } }; diff --git a/rules/no-skip-test.js b/rules/no-skip-test.js index 6f9f5ff9..8a0bdaf6 100644 --- a/rules/no-skip-test.js +++ b/rules/no-skip-test.js @@ -32,6 +32,7 @@ const create = context => { module.exports = { create, meta: { + type: 'problem', docs: { url: util.getDocsUrl(__filename) }, diff --git a/rules/no-statement-after-end.js b/rules/no-statement-after-end.js index f7cdc257..0084353e 100644 --- a/rules/no-statement-after-end.js +++ b/rules/no-statement-after-end.js @@ -93,6 +93,7 @@ const create = context => { module.exports = { create, meta: { + type: 'problem', docs: { url: util.getDocsUrl(__filename) } diff --git a/rules/no-todo-implementation.js b/rules/no-todo-implementation.js index fe8a0da6..a585c6f5 100644 --- a/rules/no-todo-implementation.js +++ b/rules/no-todo-implementation.js @@ -26,6 +26,7 @@ module.exports = { meta: { docs: { url: util.getDocsUrl(__filename) - } + }, + type: 'problem' } }; diff --git a/rules/no-todo-test.js b/rules/no-todo-test.js index 87bddfe1..55ef11d3 100644 --- a/rules/no-todo-test.js +++ b/rules/no-todo-test.js @@ -26,6 +26,7 @@ module.exports = { meta: { docs: { url: util.getDocsUrl(__filename) - } + }, + type: 'suggestion' } }; diff --git a/rules/no-unknown-modifiers.js b/rules/no-unknown-modifiers.js index f0ace595..f6bc6bf8 100644 --- a/rules/no-unknown-modifiers.js +++ b/rules/no-unknown-modifiers.js @@ -43,6 +43,7 @@ const create = context => { module.exports = { create, meta: { + type: 'problem', docs: { url: util.getDocsUrl(__filename) } diff --git a/rules/prefer-async-await.js b/rules/prefer-async-await.js index 82a9a2ec..b5be2943 100644 --- a/rules/prefer-async-await.js +++ b/rules/prefer-async-await.js @@ -51,6 +51,7 @@ const create = context => { module.exports = { create, meta: { + type: 'suggestion', docs: { url: util.getDocsUrl(__filename) } diff --git a/rules/prefer-power-assert.js b/rules/prefer-power-assert.js index c4c01ed1..124856f9 100644 --- a/rules/prefer-power-assert.js +++ b/rules/prefer-power-assert.js @@ -82,6 +82,7 @@ const create = context => { module.exports = { create, meta: { + type: 'suggestion', docs: { url: util.getDocsUrl(__filename) } diff --git a/rules/test-ended.js b/rules/test-ended.js index 5a262b64..b3187cee 100644 --- a/rules/test-ended.js +++ b/rules/test-ended.js @@ -43,6 +43,7 @@ const create = context => { module.exports = { create, meta: { + type: 'problem', docs: { url: util.getDocsUrl(__filename) } diff --git a/rules/test-title.js b/rules/test-title.js index 9e4617b8..08a5d489 100644 --- a/rules/test-title.js +++ b/rules/test-title.js @@ -34,6 +34,8 @@ const create = context => { }; const schema = [{ + type: 'string', + default: 'if-multiple', enum: [ 'always', 'if-multiple' @@ -43,6 +45,7 @@ const schema = [{ module.exports = { create, meta: { + type: 'suggestion', docs: { url: util.getDocsUrl(__filename) }, diff --git a/rules/use-t-well.js b/rules/use-t-well.js index 6fa1af3b..a73a04f4 100644 --- a/rules/use-t-well.js +++ b/rules/use-t-well.js @@ -105,6 +105,7 @@ const create = context => { module.exports = { create, meta: { + type: 'problem', docs: { url: util.getDocsUrl(__filename) } diff --git a/rules/use-t.js b/rules/use-t.js index 6c9138c0..a9f11a39 100644 --- a/rules/use-t.js +++ b/rules/use-t.js @@ -40,6 +40,7 @@ const create = context => { module.exports = { create, meta: { + type: 'suggestion', docs: { url: util.getDocsUrl(__filename) } diff --git a/rules/use-test.js b/rules/use-test.js index e8361794..834ddb78 100644 --- a/rules/use-test.js +++ b/rules/use-test.js @@ -40,6 +40,7 @@ const create = context => ({ module.exports = { create, meta: { + type: 'suggestion', docs: { url: util.getDocsUrl(__filename) } diff --git a/rules/use-true-false.js b/rules/use-true-false.js index 11331de4..dc242cec 100644 --- a/rules/use-true-false.js +++ b/rules/use-true-false.js @@ -87,6 +87,7 @@ const create = context => { module.exports = { create, meta: { + type: 'suggestion', docs: { url: util.getDocsUrl(__filename) }