Skip to content

Commit 9b47490

Browse files
committed
Improve parser assertion failure messages
1 parent 4c0886e commit 9b47490

File tree

1 file changed

+11
-14
lines changed

1 file changed

+11
-14
lines changed

Tests/SwiftParserTest/Assertions.swift

Lines changed: 11 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -118,16 +118,11 @@ func AssertDiagnostic<T: SyntaxProtocol>(
118118
let actualColumn = actualLocation.column,
119119
let expectedLine = expectedLocation.line,
120120
let expectedColumn = expectedLocation.column {
121-
XCTAssertEqual(
122-
actualLine, expectedLine,
123-
"Expected diagnostic on line \(expectedLine) but got \(actualLine)",
124-
file: file, line: line
125-
)
126-
XCTAssertEqual(
127-
actualColumn, expectedColumn,
128-
"Expected diagnostic on column \(expectedColumn) but got \(actualColumn)",
129-
file: file, line: line
130-
)
121+
if actualLine != expectedLine || actualColumn != expectedColumn {
122+
XCTFail("Expected diagnostic on \(expectedLine):\(expectedColumn) but got \(actualLine):\(actualColumn)",
123+
file: file, line: line
124+
)
125+
}
131126
} else {
132127
XCTFail("Failed to resolve diagnostic location to line/column", file: file, line: line)
133128
}
@@ -198,10 +193,12 @@ func AssertParse<Node: RawSyntaxNodeProtocol>(
198193

199194
// Diagnostics
200195
let diags = ParseDiagnosticsGenerator.diagnostics(for: tree)
201-
XCTAssertEqual(diags.count, expectedDiagnostics.count, """
202-
Expected \(expectedDiagnostics.count) diagnostics but received \(diags.count):
203-
\(diags.map(\.debugDescription).joined(separator: "\n"))
204-
""", file: file, line: line)
196+
if diags.count != expectedDiagnostics.count {
197+
XCTFail("""
198+
Expected \(expectedDiagnostics.count) diagnostics but received \(diags.count):
199+
\(diags.map(\.debugDescription).joined(separator: "\n"))
200+
""", file: file, line: line)
201+
}
205202
for (diag, expectedDiag) in zip(diags, expectedDiagnostics) {
206203
AssertDiagnostic(diag, in: tree, markerLocations: markerLocations, expected: expectedDiag, file: file, line: line)
207204
}

0 commit comments

Comments
 (0)