diff --git a/lib/rules/max-empty-lines/__tests__/index.js b/lib/rules/max-empty-lines/__tests__/index.js index 50efa8ee46..dafd1ed002 100644 --- a/lib/rules/max-empty-lines/__tests__/index.js +++ b/lib/rules/max-empty-lines/__tests__/index.js @@ -478,6 +478,50 @@ testRule({ ], }); +testRule({ + ruleName, + config: [2], + skipBasicChecks: true, + syntax: 'sugarss', + fix: true, + + accept: [ + { + code: '\n\n// one', + }, + { + code: '// one\n\n', + }, + { + code: '// one\n\n\n// two\n', + }, + ], + + reject: [ + { + code: '\n\n\n// one', + fixed: '\n\n// one', + message: messages.expected(2), + line: 3, + column: 1, + }, + { + code: '// one\n\n\n', + fixed: '// one\n\n', + message: messages.expected(2), + line: 4, + column: 1, + }, + { + code: '// one\n\n\n\n// two\n', + fixed: '// one\n\n\n// two\n', + message: messages.expected(2), + line: 4, + column: 1, + }, + ], +}); + testRule({ ruleName, config: [2, { ignore: 'comments' }], diff --git a/lib/rules/max-empty-lines/index.js b/lib/rules/max-empty-lines/index.js index cd0ffe9450..4f7985db1d 100644 --- a/lib/rules/max-empty-lines/index.js +++ b/lib/rules/max-empty-lines/index.js @@ -154,7 +154,7 @@ function rule(max, options, context) { function replaceEmptyLines(max, str, isSpecialCase = false) { const repeatTimes = isSpecialCase ? max : max + 1; - if (repeatTimes === 0) { + if (repeatTimes === 0 || typeof str !== 'string') { return ''; }