@@ -42,7 +42,69 @@ final class FunctionTests: XCTestCase {
4242 }
4343 AssertBuildResult ( buildable, " test(value1, p2: value2, value3, p4: value4, value5) " )
4444 }
45-
45+
46+ func testFunctionDeclBuilder( ) {
47+ let builder = FunctionDecl ( """
48+ func test(_ p1: Int, p2: Int, _ p3: Int, p4: Int, _ p5: Int) -> Int {
49+ return p1 + p2 + p3 + p4 + p5
50+ }
51+ """ )
52+
53+ AssertBuildResult ( builder, """
54+ func test(_ p1: Int, p2: Int, _ p3: Int, p4: Int, _ p5: Int) -> Int {
55+ return p1 + p2 + p3 + p4 + p5
56+ }
57+ """ )
58+ }
59+
60+ func testMultilineFunctionParameterList( ) {
61+ let builder = FunctionDecl ( """
62+ func test(
63+ _ p1: Int,
64+ p2: Int,
65+ _ p3: Int,
66+ p4: Int,
67+ _ p5: Int
68+ ) -> Int {
69+ return p1 + p2 + p3 + p4 + p5
70+ }
71+ """ )
72+
73+ AssertBuildResult ( builder, """
74+ func test(
75+ _ p1: Int,
76+ p2: Int,
77+ _ p3: Int,
78+ p4: Int,
79+ _ p5: Int
80+ ) -> Int {
81+ return p1 + p2 + p3 + p4 + p5
82+ }
83+ """ )
84+ }
85+
86+ func testMultilineFunctionCallExpr( ) {
87+ let builder = FunctionCallExpr ( """
88+ test(
89+ p1: value1,
90+ p2: value2,
91+ p3: value3,
92+ p4: value4,
93+ p5: value5
94+ )
95+ """ )
96+
97+ AssertBuildResult ( builder, """
98+ test(
99+ p1: value1,
100+ p2: value2,
101+ p3: value3,
102+ p4: value4,
103+ p5: value5
104+ )
105+ """ )
106+ }
107+
46108 func testParensEmittedForNoArgumentsAndNoTrailingClosure( ) {
47109 let buildable = FunctionCallExpr ( callee: ExprSyntax ( " test " ) )
48110 AssertBuildResult ( buildable, " test() " )
0 commit comments