1) rules/require-padding-newlines-before-keywords true value should not report when returning a function:
Expected not to have errors, but "internalError: Error running rule requirePaddingNewlinesBeforeKeywords: This is an issue with JSCS and not your codebase.
Please file an issue (with the stack trace below) at: https://github.com/jscs-dev/node-jscs/issues/new
Error: Expected end of node list but "FunctionExpression" found
at ElementAssert.assertEnd (/Users/hzhu/dev/node-jscs/node_modules/cst/lib/elements/ElementAssert.js:208:23)
at ReturnStatement._acceptChildren (/Users/hzhu/dev/node-jscs/node_modules/cst/lib/elements/types/ReturnStatement.js:49:22)
at ReturnStatement._setChildren (/Users/hzhu/dev/node-jscs/node_modules/cst/lib/elements/Element.js:415:18)
at ReturnStatement.replaceChildren (/Users/hzhu/dev/node-jscs/node_modules/cst/lib/elements/Element.js:267:18)
at ReturnStatement.replaceChild (/Users/hzhu/dev/node-jscs/node_modules/cst/lib/elements/Element.js:340:18)
at Object.JsFile.setWhitespaceBefore (/Users/hzhu/dev/node-jscs/lib/js-file.js:143:37)
at TokenAssert._updateWhitespaceByLine (/Users/hzhu/dev/node-jscs/lib/token-assert.js:182:16)
at TokenAssert._augmentLineCount (/Users/hzhu/dev/node-jscs/lib/token-assert.js:399:10)
at TokenAssert.<anonymous> (/Users/hzhu/dev/node-jscs/lib/token-assert.js:319:18)
at TokenAssert.linesBetween (/Users/hzhu/dev/node-jscs/lib/token-assert.js:331:9)
at /Users/hzhu/dev/node-jscs/lib/rules/require-padding-newlines-before-keywords.js:157:31
at /Users/hzhu/dev/node-jscs/lib/js-file.js:494:17
at Array.forEach (native)
at Object.JsFile.iterateTokensByType (/Users/hzhu/dev/node-jscs/lib/js-file.js:474:16)
at Object.JsFile.iterateTokensByTypeAndValue (/Users/hzhu/dev/node-jscs/lib/js-file.js:492:14)
at Object.module.exports.check (/Users/hzhu/dev/node-jscs/lib/rules/require-padding-newlines-before-keywords.js:129:14)
at null.<anonymous> (/Users/hzhu/dev/node-jscs/lib/string-checker.js:154:22)
at Array.forEach (native)
at StringChecker._checkJsFile (/Users/hzhu/dev/node-jscs/lib/string-checker.js:150:31)
at StringChecker.checkString (/Users/hzhu/dev/node-jscs/lib/string-checker.js:92:14)
at Context.<anonymous> (/Users/hzhu/dev/node-jscs/test/specs/rules/require-padding-newlines-before-keywords.js:144:28)
at callFn (/Users/hzhu/dev/node-jscs/node_modules/mocha/lib/runnable.js:315:21)
at Test.Runnable.run (/Users/hzhu/dev/node-jscs/node_modules/mocha/lib/runnable.js:308:7)
at Runner.runTest (/Users/hzhu/dev/node-jscs/node_modules/mocha/lib/runner.js:422:10)
at /Users/hzhu/dev/node-jscs/node_modules/mocha/lib/runner.js:533:12
at next (/Users/hzhu/dev/node-jscs/node_modules/mocha/lib/runner.js:342:14)
at /Users/hzhu/dev/node-jscs/node_modules/mocha/lib/runner.js:352:7
at next (/Users/hzhu/dev/node-jscs/node_modules/mocha/lib/runner.js:284:14)
at /Users/hzhu/dev/node-jscs/node_modules/mocha/lib/runner.js:315:7
at done (/Users/hzhu/dev/node-jscs/node_modules/mocha/lib/runnable.js:276:5)
at callFn (/Users/hzhu/dev/node-jscs/node_modules/mocha/lib/runnable.js:333:7)
at Hook.Runnable.run (/Users/hzhu/dev/node-jscs/node_modules/mocha/lib/runnable.js:308:7)
at next (/Users/hzhu/dev/node-jscs/node_modules/mocha/lib/runner.js:298:10)
at Immediate._onImmediate (/Users/hzhu/dev/node-jscs/node_modules/mocha/lib/runner.js:320:5)
at processImmediate [as _immediateCallback] (timers.js:383:17)" found
All errors:
- internalError: internalError: Error running rule requirePaddingNewlinesBeforeKeywords: This is an issue with JSCS and not your codebase.
Please file an issue (with the stack trace below) at: https://github.com/jscs-dev/node-jscs/issues/new
Error: Expected end of node list but "FunctionExpression" found
at ElementAssert.assertEnd (/Users/hzhu/dev/node-jscs/node_modules/cst/lib/elements/ElementAssert.js:208:23)
at ReturnStatement._acceptChildren (/Users/hzhu/dev/node-jscs/node_modules/cst/lib/elements/types/ReturnStatement.js:49:22)
at ReturnStatement._setChildren (/Users/hzhu/dev/node-jscs/node_modules/cst/lib/elements/Element.js:415:18)
at ReturnStatement.replaceChildren (/Users/hzhu/dev/node-jscs/node_modules/cst/lib/elements/Element.js:267:18)
at ReturnStatement.replaceChild (/Users/hzhu/dev/node-jscs/node_modules/cst/lib/elements/Element.js:340:18)
at Object.JsFile.setWhitespaceBefore (/Users/hzhu/dev/node-jscs/lib/js-file.js:143:37)
at TokenAssert._updateWhitespaceByLine (/Users/hzhu/dev/node-jscs/lib/token-assert.js:182:16)
at TokenAssert._augmentLineCount (/Users/hzhu/dev/node-jscs/lib/token-assert.js:399:10)
at TokenAssert.<anonymous> (/Users/hzhu/dev/node-jscs/lib/token-assert.js:319:18)
at TokenAssert.linesBetween (/Users/hzhu/dev/node-jscs/lib/token-assert.js:331:9)
at /Users/hzhu/dev/node-jscs/lib/rules/require-padding-newlines-before-keywords.js:157:31
at /Users/hzhu/dev/node-jscs/lib/js-file.js:494:17
at Array.forEach (native)
at Object.JsFile.iterateTokensByType (/Users/hzhu/dev/node-jscs/lib/js-file.js:474:16)
at Object.JsFile.iterateTokensByTypeAndValue (/Users/hzhu/dev/node-jscs/lib/js-file.js:492:14)
at Object.module.exports.check (/Users/hzhu/dev/node-jscs/lib/rules/require-padding-newlines-before-keywords.js:129:14)
at null.<anonymous> (/Users/hzhu/dev/node-jscs/lib/string-checker.js:154:22)
at Array.forEach (native)
at StringChecker._checkJsFile (/Users/hzhu/dev/node-jscs/lib/string-checker.js:150:31)
at StringChecker.checkString (/Users/hzhu/dev/node-jscs/lib/string-checker.js:92:14)
at Context.<anonymous> (/Users/hzhu/dev/node-jscs/test/specs/rules/require-padding-newlines-before-keywords.js:144:28)
at callFn (/Users/hzhu/dev/node-jscs/node_modules/mocha/lib/runnable.js:315:21)
at Test.Runnable.run (/Users/hzhu/dev/node-jscs/node_modules/mocha/lib/runnable.js:308:7)
at Runner.runTest (/Users/hzhu/dev/node-jscs/node_modules/mocha/lib/runner.js:422:10)
at /Users/hzhu/dev/node-jscs/node_modules/mocha/lib/runner.js:533:12
at next (/Users/hzhu/dev/node-jscs/node_modules/mocha/lib/runner.js:342:14)
at /Users/hzhu/dev/node-jscs/node_modules/mocha/lib/runner.js:352:7
at next (/Users/hzhu/dev/node-jscs/node_modules/mocha/lib/runner.js:284:14)
at /Users/hzhu/dev/node-jscs/node_modules/mocha/lib/runner.js:315:7
at done (/Users/hzhu/dev/node-jscs/node_modules/mocha/lib/runnable.js:276:5)
at callFn (/Users/hzhu/dev/node-jscs/node_modules/mocha/lib/runnable.js:333:7)
at Hook.Runnable.run (/Users/hzhu/dev/node-jscs/node_modules/mocha/lib/runnable.js:308:7)
at next (/Users/hzhu/dev/node-jscs/node_modules/mocha/lib/runner.js:298:10)
at Immediate._onImmediate (/Users/hzhu/dev/node-jscs/node_modules/mocha/lib/runner.js:320:5)
at processImmediate [as _immediateCallback] (timers.js:383:17)
AssertionError: Expected not to have errors, but "internalError: Error running rule requirePaddingNewlinesBeforeKeywords: This is an issue with JSCS and not your codebase.
Please file an issue (with the stack trace below) at: https://github.com/jscs-dev/node-jscs/issues/new
Error: Expected end of node list but "FunctionExpression" found
at ElementAssert.assertEnd (node_modules/cst/lib/elements/ElementAssert.js:208:23)
at ReturnStatement._acceptChildren (node_modules/cst/lib/elements/types/ReturnStatement.js:49:22)
at ReturnStatement._setChildren (node_modules/cst/lib/elements/Element.js:415:18)
at ReturnStatement.replaceChildren (node_modules/cst/lib/elements/Element.js:267:18)
at ReturnStatement.replaceChild (node_modules/cst/lib/elements/Element.js:340:18)
at Object.JsFile.setWhitespaceBefore (lib/js-file.js:143:37)
at TokenAssert._updateWhitespaceByLine (lib/token-assert.js:182:16)
at TokenAssert._augmentLineCount (lib/token-assert.js:399:10)
at TokenAssert.<anonymous> (lib/token-assert.js:319:18)
at TokenAssert.linesBetween (lib/token-assert.js:331:9)
at lib/rules/require-padding-newlines-before-keywords.js:157:31
at lib/js-file.js:494:17
at Array.forEach (native)
at Object.JsFile.iterateTokensByType (lib/js-file.js:474:16)
at Object.JsFile.iterateTokensByTypeAndValue (lib/js-file.js:492:14)
at Object.module.exports.check (lib/rules/require-padding-newlines-before-keywords.js:129:14)
at null.<anonymous> (lib/string-checker.js:154:22)
at Array.forEach (native)
at StringChecker._checkJsFile (lib/string-checker.js:150:31)
at StringChecker.checkString (lib/string-checker.js:92:14)
at Context.<anonymous> (test/specs/rules/require-padding-newlines-before-keywords.js:144:28)
All errors:
- internalError: internalError: Error running rule requirePaddingNewlinesBeforeKeywords: This is an issue with JSCS and not your codebase.
Please file an issue (with the stack trace below) at: https://github.com/jscs-dev/node-jscs/issues/new
Error: Expected end of node list but "FunctionExpression" found
at ElementAssert.assertEnd (node_modules/cst/lib/elements/ElementAssert.js:208:23)
at ReturnStatement._acceptChildren (node_modules/cst/lib/elements/types/ReturnStatement.js:49:22)
at ReturnStatement._setChildren (node_modules/cst/lib/elements/Element.js:415:18)
at ReturnStatement.replaceChildren (node_modules/cst/lib/elements/Element.js:267:18)
at ReturnStatement.replaceChild (node_modules/cst/lib/elements/Element.js:340:18)
at Object.JsFile.setWhitespaceBefore (lib/js-file.js:143:37)
at TokenAssert._updateWhitespaceByLine (lib/token-assert.js:182:16)
at TokenAssert._augmentLineCount (lib/token-assert.js:399:10)
at TokenAssert.<anonymous> (lib/token-assert.js:319:18)
at TokenAssert.linesBetween (lib/token-assert.js:331:9)
at lib/rules/require-padding-newlines-before-keywords.js:157:31
at lib/js-file.js:494:17
at Array.forEach (native)
at Object.JsFile.iterateTokensByType (lib/js-file.js:474:16)
at Object.JsFile.iterateTokensByTypeAndValue (lib/js-file.js:492:14)
at Object.module.exports.check (lib/rules/require-padding-newlines-before-keywords.js:129:14)
at null.<anonymous> (lib/string-checker.js:154:22)
at Array.forEach (native)
at StringChecker._checkJsFile (lib/string-checker.js:150:31)
at StringChecker.checkString (lib/string-checker.js:92:14)
at Context.<anonymous> (test/specs/rules/require-padding-newlines-before-keywords.js:144:28)
at Context.<anonymous> (test/specs/rules/require-padding-newlines-before-keywords.js:150:31)
We should shorten this since it's repeated a lot