diff --git a/tests/fixtures.js b/tests/fixtures.js index 06c214e..2e25417 100644 --- a/tests/fixtures.js +++ b/tests/fixtures.js @@ -691,32 +691,6 @@ require(['path/to/a.js'], function (a) { }); `; -exports.ASSIGN_TO_FOO_REQUIRE = ` -foo.require = { - bar: 'bar' -}; -`; - -exports.ASSIGN_TO_REQUIRE = ` -require = { - deps: ['path/to/a', 'path/to/b'], - callback: function (a, b) { - a.foo(); - b.bar(); - } -}; -`; - -exports.ASSIGN_TO_WINDOW_REQUIRE = ` -window.require = { - deps: ['path/to/a', 'path/to/b'], - callback: function (a, b) { - a.foo(); - b.bar(); - } -}; -`; - exports.BAD_DEFINE = ` define('foo', 'bar', false); `; @@ -960,16 +934,6 @@ define(function (require) { }); `; -exports.DECLARE_REQUIRE = ` -var require = { - deps: ['path/to/a', 'path/to/b'], - callback: function (a, b) { - a.foo(); - b.bar(); - } -}; -`; - exports.DYNAMIC_AMD_REQUIREJS_WITH_ERRBACK = ` requirejs( [someCondition ? 'path/to/a' : 'path/to/b'], diff --git a/tests/lib/rules/no-assign-require.js b/tests/lib/rules/no-assign-require.js index 0ec00dc..d8e0ad8 100644 --- a/tests/lib/rules/no-assign-require.js +++ b/tests/lib/rules/no-assign-require.js @@ -6,21 +6,84 @@ "use strict"; const testRule = require("../../rule-tester"); -const fixtures = require("../../fixtures"); const rule = require("../../../lib/rules/no-assign-require"); -const MESSAGE = "Invalid assignment to `require`."; +// ----------------------------------------------------------------------------- +// Fixtures +// ----------------------------------------------------------------------------- + +const OK_PROPERTY_ASSIGNMENT = ` + foo.require = { + bar: 'bar' + }; +`; + +const OK_SIMILAR_VARIABLE = ` + var required = true; +`; + +const BAD_DECLARE_REQUIRE = ` + var require = { + deps: ['path/to/a', 'path/to/b'], + callback: function (a, b) { + a.foo(); + b.bar(); + } + }; +`; + +const BAD_ASSIGN_TO_REQUIRE = ` + require = { + deps: ['path/to/a', 'path/to/b'], + callback: function (a, b) { + a.foo(); + b.bar(); + } + }; +`; + +const BAD_ASSIGN_TO_WINDOW_REQUIRE = ` + window.require = { + deps: ['path/to/a', 'path/to/b'], + callback: function (a, b) { + a.foo(); + b.bar(); + } + }; +`; + +// ----------------------------------------------------------------------------- +// Tests +// ----------------------------------------------------------------------------- + +const ERROR_MSG = "Invalid assignment to `require`."; testRule("no-assign-require", rule, { valid: [ - fixtures.ASSIGN_TO_FOO_REQUIRE + OK_PROPERTY_ASSIGNMENT, + OK_SIMILAR_VARIABLE ], invalid: [ - { code: fixtures.DECLARE_REQUIRE, errors: [{ message: MESSAGE, type: "VariableDeclarator" }] }, - { code: fixtures.ASSIGN_TO_REQUIRE, errors: [{ message: MESSAGE, type: "AssignmentExpression" }] }, - { code: fixtures.ASSIGN_TO_WINDOW_REQUIRE, errors: [{ message: MESSAGE, type: "AssignmentExpression" }] } + { + code: BAD_DECLARE_REQUIRE, + errors: [ + { message: ERROR_MSG, type: "VariableDeclarator" } + ] + }, + { + code: BAD_ASSIGN_TO_REQUIRE, + errors: [ + { message: ERROR_MSG, type: "AssignmentExpression" } + ] + }, + { + code: BAD_ASSIGN_TO_WINDOW_REQUIRE, + errors: [ + { message: ERROR_MSG, type: "AssignmentExpression" } + ] + } ] });