pokemon-showdown/test/dev-tools/eslint/validate-conditionals.js
2016-01-01 00:20:07 +01:00

30 lines
1.5 KiB
JavaScript

"use strict";
describe("eslint-rules/validate-conditionals", function () {
const rule = require('./../../../dev-tools/eslint/validate-conditionals.js');
const RuleTester = require('eslint/lib/testers/rule-tester');
const ruleTester = new RuleTester();
ruleTester.run("validate-conditionals", rule, {
valid: [
'if (Math.random) {\nMath.random();\n}',
'if (Math.random) {\n//This is a comment\n}',
'if (Math.random) {\nMath.random();\n} else {\n0;\n}',
'if (Math.random) Math.random();',
],
invalid: [{
code: 'if (Math.random) Math.random(); else Number.isFinite();',
errors: [{message: "Nested conditional must span across multiple lines."}],
}, {
code: 'if (Math.random) Math.random();\nelse Number.isFinite();',
errors: [{message: "Nested conditional must span across multiple lines."}],
}, {
code: 'if (Math.random) Math.random();\nelse if (Number.isFinite) Number.isFinite();\nelse Number.isInteger();',
errors: [{message: "Nested conditional must span across multiple lines."}, {message: "Nested conditional must span across multiple lines."}],
}, {
code: 'if (Math.random) Math.random();\nelse if (Number.isFinite) Number.isFinite();\nelse if (Number.isInteger) Number.isInteger();\nelse Number.parseInt();',
errors: [{message: "Nested conditional must span across multiple lines."}, {message: "Nested conditional must span across multiple lines."}, {message: "Nested conditional must span across multiple lines."}],
}],
});
});