Add parenthesis around single argument arrow if comments (#573)

Fixes #568
master
Christopher Chedeau 2017-02-03 13:14:40 -08:00 committed by James Long
parent b7103ddbf4
commit b2a8f2de56
4 changed files with 38 additions and 0 deletions

View File

@ -261,6 +261,8 @@ function genericPrintNoParens(path, options, print) {
!n.rest &&
n.params[0].type === "Identifier" &&
!n.params[0].typeAnnotation &&
!n.params[0].leadingComments &&
!n.params[0].trailingComments &&
!n.predicate &&
!n.returnType
) {

View File

@ -0,0 +1,29 @@
exports[`test arrow.js 1`] = `
"// Error
const beep = (data/*: Object*/) => {}
// OK
const beep = (data/*: Object*/, secondData/*: Object*/) => {}
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// Error
const beep = (data: Object) => {};
// OK
const beep = (data: Object, secondData: Object) => {};
"
`;
exports[`test arrow.js 2`] = `
"// Error
const beep = (data/*: Object*/) => {}
// OK
const beep = (data/*: Object*/, secondData/*: Object*/) => {}
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// Error
const beep = (data /*: Object*/) => {};
// OK
const beep = (data /*: Object*/, secondData /*: Object*/) => {};
"
`;

View File

@ -0,0 +1,5 @@
// Error
const beep = (data/*: Object*/) => {}
// OK
const beep = (data/*: Object*/, secondData/*: Object*/) => {}

View File

@ -0,0 +1,2 @@
run_spec(__dirname);
run_spec(__dirname, {parser: 'babylon'});