diff --git a/lib/rules/operator-assignment.js b/lib/rules/operator-assignment.js index b19ba0d02e1..c35d23e2a92 100644 --- a/lib/rules/operator-assignment.js +++ b/lib/rules/operator-assignment.js @@ -219,7 +219,7 @@ module.exports = { if ( operatorToken.range[1] === firstRightToken.range[0] && - !astUtils.canTokensBeAdjacent(newOperator, firstRightToken) + !astUtils.canTokensBeAdjacent({ type: "Punctuator", value: newOperator }, firstRightToken) ) { rightTextPrefix = " "; // foo+=+bar -> foo= foo+ +bar } diff --git a/tests/lib/rules/operator-assignment.js b/tests/lib/rules/operator-assignment.js index 4c6819c2703..b7174b9ee72 100644 --- a/tests/lib/rules/operator-assignment.js +++ b/tests/lib/rules/operator-assignment.js @@ -358,6 +358,11 @@ ruleTester.run("operator-assignment", rule, { output: "foo= foo+-bar", // tokens can be adjacent options: ["never"], errors: UNEXPECTED_OPERATOR_ASSIGNMENT + }, { + code: "foo/=bar", + output: "foo= foo/bar", // tokens can be adjacent + options: ["never"], + errors: UNEXPECTED_OPERATOR_ASSIGNMENT }, { code: "foo+=+bar", output: "foo= foo+ +bar", // tokens cannot be adjacent, insert a space between