mirror of
https://github.com/microsoft/TypeScript.git
synced 2025-11-18 17:21:48 +00:00
add testcase and apply feedback from pr
This commit is contained in:
@@ -172,7 +172,7 @@ namespace ts.refactor.convertArrowFunctionOrFunctionExpression {
|
||||
const head = statements[0];
|
||||
let body: ConciseBody;
|
||||
|
||||
if (func.body.statements.length === 1 && (isReturnStatement(head) || isExpressionStatement(head))) {
|
||||
if (func.body.statements.length === 1 && ((isReturnStatement(head) && !!head.expression) || isExpressionStatement(head))) {
|
||||
body = head.expression!;
|
||||
suppressLeadingAndTrailingTrivia(body);
|
||||
copyComments(head, body, file, SyntaxKind.MultiLineCommentTrivia, /* hasTrailingNewLine */ false);
|
||||
|
||||
+1
-1
@@ -25,4 +25,4 @@ verify.not.refactorAvailable("Convert arrow function or function expression", "C
|
||||
goTo.select("r", "q");
|
||||
verify.not.refactorAvailable("Convert arrow function or function expression", "Convert to named function");
|
||||
verify.not.refactorAvailable("Convert arrow function or function expression", "Convert to anonymous function");
|
||||
verify.not.refactorAvailable("Convert arrow function or function expression", "Convert to arrow function");
|
||||
verify.not.refactorAvailable("Convert arrow function or function expression", "Convert to arrow function");
|
||||
|
||||
+1
-1
@@ -31,4 +31,4 @@ verify.refactorAvailable("Convert arrow function or function expression", "Conve
|
||||
goTo.select("p", "o");
|
||||
verify.not.refactorAvailable("Convert arrow function or function expression", "Convert to named function");
|
||||
verify.not.refactorAvailable("Convert arrow function or function expression", "Convert to anonymous function");
|
||||
verify.not.refactorAvailable("Convert arrow function or function expression", "Convert to arrow function");
|
||||
verify.not.refactorAvailable("Convert arrow function or function expression", "Convert to arrow function");
|
||||
|
||||
+1
-1
@@ -30,4 +30,4 @@ verify.not.refactorAvailable("Convert arrow function or function expression", "C
|
||||
goTo.select("p", "o");
|
||||
verify.not.refactorAvailable("Convert arrow function or function expression", "Convert to named function");
|
||||
verify.not.refactorAvailable("Convert arrow function or function expression", "Convert to anonymous function");
|
||||
verify.not.refactorAvailable("Convert arrow function or function expression", "Convert to arrow function");
|
||||
verify.not.refactorAvailable("Convert arrow function or function expression", "Convert to arrow function");
|
||||
|
||||
+1
-1
@@ -27,4 +27,4 @@ verify.not.refactorAvailable("Convert arrow function or function expression", "C
|
||||
goTo.select("r", "q");
|
||||
verify.not.refactorAvailable("Convert arrow function or function expression", "Convert to named function");
|
||||
verify.not.refactorAvailable("Convert arrow function or function expression", "Convert to anonymous function");
|
||||
verify.not.refactorAvailable("Convert arrow function or function expression", "Convert to arrow function");
|
||||
verify.not.refactorAvailable("Convert arrow function or function expression", "Convert to arrow function");
|
||||
|
||||
+1
-1
@@ -20,4 +20,4 @@ verify.not.refactorAvailable("Convert arrow function or function expression", "C
|
||||
goTo.select("t", "s");
|
||||
verify.refactorAvailable("Convert arrow function or function expression", "Convert to named function");
|
||||
verify.refactorAvailable("Convert arrow function or function expression", "Convert to anonymous function");
|
||||
verify.not.refactorAvailable("Convert arrow function or function expression", "Convert to arrow function");
|
||||
verify.not.refactorAvailable("Convert arrow function or function expression", "Convert to arrow function");
|
||||
|
||||
+15
@@ -0,0 +1,15 @@
|
||||
/// <reference path='fourslash.ts' />
|
||||
|
||||
//// const foo = /*x*/f/*y*/unction() {
|
||||
//// return;
|
||||
//// };
|
||||
|
||||
goTo.select("x", "y");
|
||||
edit.applyRefactor({
|
||||
refactorName: "Convert arrow function or function expression",
|
||||
actionName: "Convert to arrow function",
|
||||
actionDescription: "Convert to arrow function",
|
||||
newContent: `const foo = () => {
|
||||
return;
|
||||
};`,
|
||||
});
|
||||
Reference in New Issue
Block a user