115 lines
1.9 KiB
JavaScript
115 lines
1.9 KiB
JavaScript
/* Any copyright is dedicated to the Public Domain.
|
|
* http://creativecommons.org/publicdomain/zero/1.0/ */
|
|
|
|
"use strict";
|
|
|
|
// ------------------------------------------------------------------------------
|
|
// Requirements
|
|
// ------------------------------------------------------------------------------
|
|
|
|
var rule = require("../lib/rules/no-useless-run-test");
|
|
var RuleTester = require("eslint/lib/testers/rule-tester");
|
|
|
|
const ruleTester = new RuleTester({ parserOptions: { ecmaVersion: 6 } });
|
|
|
|
// ------------------------------------------------------------------------------
|
|
// Tests
|
|
// ------------------------------------------------------------------------------
|
|
|
|
function invalidCode(code, output) {
|
|
let message =
|
|
"Useless run_test function - only contains run_next_test; whole function can be removed";
|
|
return {code, output, errors: [{message, type: "FunctionDeclaration"}]};
|
|
}
|
|
|
|
ruleTester.run("no-useless-run-test", rule, {
|
|
valid: [
|
|
"function run_test() {}",
|
|
"function run_test() {let args = 1; run_next_test();}",
|
|
"function run_test() {fakeCall(); run_next_test();}"
|
|
],
|
|
invalid: [
|
|
// Single-line case.
|
|
invalidCode(
|
|
"function run_test() { run_next_test(); }",
|
|
""),
|
|
// Multiple-line cases
|
|
invalidCode(`
|
|
function run_test() {
|
|
run_next_test();
|
|
}`,
|
|
``),
|
|
invalidCode(`
|
|
foo();
|
|
function run_test() {
|
|
run_next_test();
|
|
}
|
|
`,
|
|
`
|
|
foo();
|
|
`),
|
|
invalidCode(`
|
|
foo();
|
|
function run_test() {
|
|
run_next_test();
|
|
}
|
|
bar();
|
|
`,
|
|
`
|
|
foo();
|
|
bar();
|
|
`),
|
|
invalidCode(`
|
|
foo();
|
|
|
|
function run_test() {
|
|
run_next_test();
|
|
}
|
|
|
|
bar();`,
|
|
`
|
|
foo();
|
|
|
|
bar();`),
|
|
invalidCode(`
|
|
foo();
|
|
|
|
function run_test() {
|
|
run_next_test();
|
|
}
|
|
|
|
// A comment
|
|
bar();
|
|
`,
|
|
`
|
|
foo();
|
|
|
|
// A comment
|
|
bar();
|
|
`),
|
|
invalidCode(`
|
|
foo();
|
|
|
|
/**
|
|
* A useful comment.
|
|
*/
|
|
function run_test() {
|
|
run_next_test();
|
|
}
|
|
|
|
// A comment
|
|
bar();
|
|
`,
|
|
`
|
|
foo();
|
|
|
|
/**
|
|
* A useful comment.
|
|
*/
|
|
|
|
// A comment
|
|
bar();
|
|
`)
|
|
]
|
|
});
|