MCPcopy Index your code
hub / github.com/getsentry/XcodeBuildMCP / parseTestSelectorArgs

Function parseTestSelectorArgs

src/utils/simulator-test-execution.ts:4–50  ·  view source on GitHub ↗
(extraArgs: string[] | undefined)

Source from the content-addressed store, hash-verified

2import type { TestPreflightResult } from './test-preflight.ts';
3
4function parseTestSelectorArgs(extraArgs: string[] | undefined): {
5 remainingArgs: string[];
6 selectorArgs: string[];
7 resultBundlePath?: string;
8} {
9 const parsedResultBundleArgs = parseResultBundlePathArgs(extraArgs);
10 if (parsedResultBundleArgs.remainingArgs.length === 0) {
11 return {
12 remainingArgs: [],
13 selectorArgs: [],
14 ...(parsedResultBundleArgs.resultBundlePath
15 ? { resultBundlePath: parsedResultBundleArgs.resultBundlePath }
16 : {}),
17 };
18 }
19
20 const remainingArgs: string[] = [];
21 const selectorArgs: string[] = [];
22
23 for (let index = 0; index < parsedResultBundleArgs.remainingArgs.length; index += 1) {
24 const argument = parsedResultBundleArgs.remainingArgs[index]!;
25
26 if (argument === '-only-testing' || argument === '-skip-testing') {
27 const value = parsedResultBundleArgs.remainingArgs[index + 1];
28 if (value) {
29 selectorArgs.push(argument, value);
30 index += 1;
31 }
32 continue;
33 }
34
35 if (argument.startsWith('-only-testing:') || argument.startsWith('-skip-testing:')) {
36 selectorArgs.push(argument);
37 continue;
38 }
39
40 remainingArgs.push(argument);
41 }
42
43 return {
44 remainingArgs,
45 selectorArgs,
46 ...(parsedResultBundleArgs.resultBundlePath
47 ? { resultBundlePath: parsedResultBundleArgs.resultBundlePath }
48 : {}),
49 };
50}
51
52export function createSimulatorTwoPhaseExecutionPlan(params: {
53 extraArgs?: string[];

Callers 1

Calls 2

pushMethod · 0.80

Tested by

no test coverage detected