Skip to content

Commit 3b14b40

Browse files
committed
Remove unreachable parseXcodebuildSwiftTestingLine dead code
The updated parseTestCaseLine regex now matches both 'Test Case' and 'Test case' with an optional 'on' clause, making it strictly more permissive than parseXcodebuildSwiftTestingLine. Since parseTestCaseLine is checked first in processLine, parseXcodebuildSwiftTestingLine became unreachable dead code.
1 parent 1631f58 commit 3b14b40

3 files changed

Lines changed: 0 additions & 72 deletions

File tree

src/utils/__tests__/swift-testing-line-parsers.test.ts

Lines changed: 0 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@ import {
44
parseSwiftTestingIssueLine,
55
parseSwiftTestingRunSummary,
66
parseSwiftTestingContinuationLine,
7-
parseXcodebuildSwiftTestingLine,
87
} from '../swift-testing-line-parsers.ts';
98

109
describe('Swift Testing line parsers', () => {
@@ -259,42 +258,4 @@ describe('Swift Testing line parsers', () => {
259258
expect(parseSwiftTestingContinuationLine('regular line')).toBeNull();
260259
});
261260
});
262-
263-
describe('parseXcodebuildSwiftTestingLine', () => {
264-
it('should parse a passed test case', () => {
265-
const result = parseXcodebuildSwiftTestingLine(
266-
"Test case 'MCPTestTests/appNameIsCorrect()' passed on 'My Mac - MCPTest (78757)' (0.000 seconds)",
267-
);
268-
expect(result).toEqual({
269-
status: 'passed',
270-
rawName: 'MCPTestTests/appNameIsCorrect()',
271-
suiteName: 'MCPTestTests',
272-
testName: 'appNameIsCorrect()',
273-
durationText: '0.000s',
274-
});
275-
});
276-
277-
it('should parse a failed test case', () => {
278-
const result = parseXcodebuildSwiftTestingLine(
279-
"Test case 'MCPTestTests/deliberateFailure()' failed on 'My Mac - MCPTest (78757)' (0.000 seconds)",
280-
);
281-
expect(result).toEqual({
282-
status: 'failed',
283-
rawName: 'MCPTestTests/deliberateFailure()',
284-
suiteName: 'MCPTestTests',
285-
testName: 'deliberateFailure()',
286-
durationText: '0.000s',
287-
});
288-
});
289-
290-
it('should return null for XCTest format lines', () => {
291-
expect(
292-
parseXcodebuildSwiftTestingLine("Test Case '-[Suite test]' passed (0.001 seconds)."),
293-
).toBeNull();
294-
});
295-
296-
it('should return null for non-matching lines', () => {
297-
expect(parseXcodebuildSwiftTestingLine('random text')).toBeNull();
298-
});
299-
});
300261
});

src/utils/swift-testing-line-parsers.ts

Lines changed: 0 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -176,29 +176,3 @@ export function parseSwiftTestingContinuationLine(line: string): string | null {
176176
const match = line.match(/^ (.+)$/u);
177177
return match ? match[1] : null;
178178
}
179-
180-
/**
181-
* Parse xcodebuild's Swift Testing format.
182-
*
183-
* Matches:
184-
* Test case 'Suite/testName()' passed on 'My Mac - App (12345)' (0.001 seconds)
185-
* Test case 'Suite/testName()' failed on 'My Mac - App (12345)' (0.001 seconds)
186-
*/
187-
export function parseXcodebuildSwiftTestingLine(line: string): ParsedTestCase | null {
188-
const match = line.match(
189-
/^Test case '(.+)' (passed|failed|skipped) on '.+' \(([^)]+) seconds?\)$/u,
190-
);
191-
if (!match) {
192-
return null;
193-
}
194-
const [, rawName, status, duration] = match;
195-
const { suiteName, testName } = parseRawTestName(rawName);
196-
197-
return {
198-
status: status as 'passed' | 'failed' | 'skipped',
199-
rawName,
200-
suiteName,
201-
testName,
202-
durationText: `${duration}s`,
203-
};
204-
}

src/utils/xcodebuild-event-parser.ts

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@ import {
1313
type ParsedTestCase,
1414
} from './xcodebuild-line-parsers.ts';
1515
import {
16-
parseXcodebuildSwiftTestingLine,
1716
parseSwiftTestingIssueLine,
1817
parseSwiftTestingResultLine,
1918
parseSwiftTestingRunSummary,
@@ -329,12 +328,6 @@ export function createXcodebuildEventParser(options: EventParserOptions): Xcodeb
329328
return;
330329
}
331330

332-
const xcodebuildST = parseXcodebuildSwiftTestingLine(line);
333-
if (xcodebuildST) {
334-
recordTestCaseResult(xcodebuildST);
335-
return;
336-
}
337-
338331
const stIssue = parseSwiftTestingIssueLine(line);
339332
if (stIssue) {
340333
queueFailureDiagnostic(stIssue);

0 commit comments

Comments
 (0)