Skip to content

Commit 0c397bc

Browse files
committed
Added one more test and fixed behavior when curly braces are aligned next to each other
1 parent 42d38b2 commit 0c397bc

File tree

4 files changed

+34
-6
lines changed

4 files changed

+34
-6
lines changed

lib/IDE/Refactoring.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1943,14 +1943,14 @@ bool RefactoringActionExpandSwitchCases::performChange() {
19431943
InsertRange = CharSourceRange(SM, RBraceLoc, RBraceLoc);
19441944
}
19451945
EditorConsumerInsertStream OS(EditConsumer, SM, InsertRange);
1946+
if (SM.getLineNumber(SwitchS->getLBraceLoc()) ==
1947+
SM.getLineNumber(SwitchS->getRBraceLoc())) {
1948+
OS << "\n";
1949+
}
19461950
auto Result = performCasesExpansionInSwitchStmt(SwitchS,
19471951
DiagEngine,
19481952
SwitchS->getStartLoc(),
19491953
OS);
1950-
if (SM.getLineNumber(SwitchS->getLBraceLoc()) ==
1951-
SM.getLineNumber(SwitchS->getRBraceLoc())) {
1952-
EditConsumer.insertAfter(SM, SwitchS->getLBraceLoc(), "\n");
1953-
}
19541954
return Result;
19551955
}
19561956

test/refactoring/ExpandSwitchCases/Outputs/basic/L10.swift.expected

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@ enum E {
66
}
77

88
func foo(e: E) -> Int {
9-
switch e {
10-
case .e1: <#code#>
9+
switch e {
10+
case .e1: <#code#>
1111
case .e2: <#code#>
1212
case .e3: <#code#>
1313
case .e4: <#code#>
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
enum E {
2+
case e1
3+
case e2
4+
case e3
5+
case e4
6+
}
7+
8+
func foo(e: E) -> Int {
9+
switch e {
10+
case .e1: <#code#>
11+
case .e2: <#code#>
12+
case .e3: <#code#>
13+
case .e4: <#code#>
14+
}
15+
}
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
enum E {
2+
case e1
3+
case e2
4+
case e3
5+
case e4
6+
}
7+
8+
func foo(e: E) -> Int {
9+
switch e {}
10+
}
11+
// RUN: rm -rf %t.result && mkdir -p %t.result
12+
// RUN: %refactor -expand-switch-cases -source-filename %s -pos=9:8 >> %t.result/L10.swift
13+
// RUN: diff -u %S/Outputs/no_space_between_braces/L10.swift.expected %t.result/L10.swift

0 commit comments

Comments
 (0)