From 83af5076a136a45bb4adc18e7d4469eb2e96ed60 Mon Sep 17 00:00:00 2001 From: kitasuke Date: Mon, 22 Jul 2019 20:37:39 +0900 Subject: [PATCH 1/2] Do not set trivias to string --- Sources/SwiftSyntax/SyntaxFactory.swift.gyb | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/Sources/SwiftSyntax/SyntaxFactory.swift.gyb b/Sources/SwiftSyntax/SyntaxFactory.swift.gyb index 6662faa9e29..125e2bf8dd0 100644 --- a/Sources/SwiftSyntax/SyntaxFactory.swift.gyb +++ b/Sources/SwiftSyntax/SyntaxFactory.swift.gyb @@ -199,9 +199,7 @@ public enum SyntaxFactory { public static func makeStringLiteralExpr(_ text: String, leadingTrivia: Trivia = [], trailingTrivia: Trivia = []) -> StringLiteralExprSyntax { - let string = makeStringSegment(text, - leadingTrivia: leadingTrivia, - trailingTrivia: trailingTrivia) + let string = makeStringSegment(text) let segment = makeStringSegment(content: string) let segments = makeStringLiteralSegments([segment]) let openQuote = makeStringQuoteToken(leadingTrivia: leadingTrivia) From aa066cbc91887d0d8e9e33d186dd3642d8821d17 Mon Sep 17 00:00:00 2001 From: kitasuke Date: Wed, 24 Jul 2019 11:28:17 +0900 Subject: [PATCH 2/2] Add test case --- Tests/SwiftSyntaxTest/SyntaxFactory.swift | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/Tests/SwiftSyntaxTest/SyntaxFactory.swift b/Tests/SwiftSyntaxTest/SyntaxFactory.swift index 9dfbaa6a52a..2005a13ef7a 100644 --- a/Tests/SwiftSyntaxTest/SyntaxFactory.swift +++ b/Tests/SwiftSyntaxTest/SyntaxFactory.swift @@ -24,6 +24,7 @@ public class SyntaxFactoryAPITestCase: XCTestCase { ("testFunctionCallSyntaxBuilder", testFunctionCallSyntaxBuilder), ("testWithOptionalChild", testWithOptionalChild), ("testUnknownSyntax", testUnknownSyntax), + ("testMakeStringLiteralExpr", testMakeStringLiteralExpr), ] public func testGenerated() { @@ -160,4 +161,16 @@ public class SyntaxFactoryAPITestCase: XCTestCase { XCTAssertNoThrow(try SyntaxVerifier.verify(expr)) XCTAssertThrowsError(try SyntaxVerifier.verify(unknown)) } + + public func testMakeStringLiteralExpr() { + let expr = SyntaxFactory.makeStringLiteralExpr( + "Hello, world!", + leadingTrivia: .init(pieces: [.lineComment("// hello"), .newlines(1)]) + ) + let expected = """ +// hello +"Hello, world!" +""" + XCTAssertEqual(expr.description, expected) + } }