@limrun/api 0.48.1 → 0.48.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +8 -0
- package/exec-client.d.mts +67 -1
- package/exec-client.d.mts.map +1 -1
- package/exec-client.d.ts +67 -1
- package/exec-client.d.ts.map +1 -1
- package/exec-client.js +67 -1
- package/exec-client.js.map +1 -1
- package/exec-client.mjs +67 -1
- package/exec-client.mjs.map +1 -1
- package/index.d.mts +1 -1
- package/index.d.mts.map +1 -1
- package/index.d.ts +1 -1
- package/index.d.ts.map +1 -1
- package/index.js.map +1 -1
- package/index.mjs.map +1 -1
- package/instance-client.d.mts +4 -1
- package/instance-client.d.mts.map +1 -1
- package/instance-client.d.ts +4 -1
- package/instance-client.d.ts.map +1 -1
- package/instance-client.js +2 -2
- package/instance-client.js.map +1 -1
- package/instance-client.mjs +2 -2
- package/instance-client.mjs.map +1 -1
- package/package.json +1 -1
- package/resources/xcode-instances-helpers.d.mts +37 -2
- package/resources/xcode-instances-helpers.d.mts.map +1 -1
- package/resources/xcode-instances-helpers.d.ts +37 -2
- package/resources/xcode-instances-helpers.d.ts.map +1 -1
- package/resources/xcode-instances-helpers.js +27 -2
- package/resources/xcode-instances-helpers.js.map +1 -1
- package/resources/xcode-instances-helpers.mjs +27 -2
- package/resources/xcode-instances-helpers.mjs.map +1 -1
- package/src/exec-client.ts +127 -2
- package/src/index.ts +3 -0
- package/src/instance-client.ts +12 -4
- package/src/resources/xcode-instances-helpers.ts +69 -3
- package/src/version.ts +1 -1
- package/version.d.mts +1 -1
- package/version.d.ts +1 -1
- package/version.js +1 -1
- package/version.mjs +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.48.3 (2026-08-26)
|
|
4
|
+
|
|
5
|
+
Full Changelog: [v0.48.2...v0.48.3](https://github.com/limrun-inc/typescript-sdk/compare/v0.48.2...v0.48.3)
|
|
6
|
+
|
|
7
|
+
## 0.48.2 (2026-08-25)
|
|
8
|
+
|
|
9
|
+
Full Changelog: [v0.48.1...v0.48.2](https://github.com/limrun-inc/typescript-sdk/compare/v0.48.1...v0.48.2)
|
|
10
|
+
|
|
3
11
|
## 0.48.1 (2026-08-24)
|
|
4
12
|
|
|
5
13
|
Full Changelog: [v0.48.0...v0.48.1](https://github.com/limrun-inc/typescript-sdk/compare/v0.48.0...v0.48.1)
|
package/exec-client.d.mts
CHANGED
|
@@ -36,9 +36,31 @@ export type XcodeBuildExecRequest = {
|
|
|
36
36
|
workspace?: string;
|
|
37
37
|
project?: string;
|
|
38
38
|
scheme?: string;
|
|
39
|
-
sdk?: 'iphonesimulator' | 'iphoneos' | 'watchsimulator' | 'watchos';
|
|
39
|
+
sdk?: 'iphonesimulator' | 'iphoneos' | 'watchsimulator' | 'watchos' | 'appletvos' | 'xros';
|
|
40
40
|
configuration?: 'Debug' | 'Release';
|
|
41
41
|
artifactName?: string;
|
|
42
|
+
/**
|
|
43
|
+
* xcodebuild action. 'build' (default) produces one .app; with a
|
|
44
|
+
* simulator attached it is installed there. 'build-for-testing' compiles
|
|
45
|
+
* the scheme's test targets and, with a simulator attached, runs them
|
|
46
|
+
* there, streaming per-case results as 'xctest' events; the exec exits
|
|
47
|
+
* non-zero when tests fail. Requires the iphonesimulator sdk.
|
|
48
|
+
*/
|
|
49
|
+
action?: 'build' | 'build-for-testing';
|
|
50
|
+
/**
|
|
51
|
+
* Run only these tests, in xcodebuild's -only-testing format:
|
|
52
|
+
* Target[/Class[/method]]. Mutually exclusive with skipTesting; only
|
|
53
|
+
* valid with action 'build-for-testing'.
|
|
54
|
+
*/
|
|
55
|
+
onlyTesting?: string[];
|
|
56
|
+
/** Skip these tests, in xcodebuild's -skip-testing format. */
|
|
57
|
+
skipTesting?: string[];
|
|
58
|
+
/**
|
|
59
|
+
* When false, 'build-for-testing' compiles the test targets but does not
|
|
60
|
+
* run them even when a simulator is attached. Servers without support
|
|
61
|
+
* ignore the field and still run the tests.
|
|
62
|
+
*/
|
|
63
|
+
runTests?: boolean;
|
|
42
64
|
};
|
|
43
65
|
xcodegen?: {
|
|
44
66
|
spec?: string;
|
|
@@ -73,6 +95,8 @@ export type XcodeBuildExecRequest = {
|
|
|
73
95
|
*/
|
|
74
96
|
env?: string[];
|
|
75
97
|
gitInit?: boolean;
|
|
98
|
+
/** How xcodebuild stdout is processed before streaming. Defaults to 'xcbeautify'. */
|
|
99
|
+
logProcessor?: 'xcbeautify' | 'none';
|
|
76
100
|
signedUploadUrl?: string;
|
|
77
101
|
/**
|
|
78
102
|
* ID of the Limrun asset signedUploadUrl targets, when it was minted from
|
|
@@ -214,6 +238,12 @@ export type ExecOptions = {
|
|
|
214
238
|
apiUrl: string;
|
|
215
239
|
token: string;
|
|
216
240
|
log?: (level: 'debug' | 'info' | 'warn' | 'error', msg: string) => void;
|
|
241
|
+
/**
|
|
242
|
+
* Called for each XCTest event as it streams from a build-for-testing run:
|
|
243
|
+
* one per finished test case, then the terminal summary. The same data
|
|
244
|
+
* lands accumulated on ExecResult.xctest.
|
|
245
|
+
*/
|
|
246
|
+
onXctestEvent?: (event: XctestEvent) => void;
|
|
217
247
|
};
|
|
218
248
|
export type ExecResult = {
|
|
219
249
|
exitCode: number;
|
|
@@ -231,6 +261,16 @@ export type ExecResult = {
|
|
|
231
261
|
* without a playstore request, or when the server predates the feature.
|
|
232
262
|
*/
|
|
233
263
|
playstore?: PlaystoreEvent;
|
|
264
|
+
/**
|
|
265
|
+
* XCTest results streamed by a build-for-testing run: every finished case
|
|
266
|
+
* plus the terminal summary. Absent for plain builds and servers that
|
|
267
|
+
* predate the feature. A missing summary means the run died partway; the
|
|
268
|
+
* cases already streamed still stand.
|
|
269
|
+
*/
|
|
270
|
+
xctest?: {
|
|
271
|
+
cases: XctestCaseEvent[];
|
|
272
|
+
summary?: XctestSummaryEvent;
|
|
273
|
+
};
|
|
234
274
|
/**
|
|
235
275
|
* True when the client gave up waiting for the build's event stream. The
|
|
236
276
|
* exit code is fabricated in that case; the remote build may still be
|
|
@@ -249,6 +289,29 @@ export type ExecResult = {
|
|
|
249
289
|
message: string;
|
|
250
290
|
};
|
|
251
291
|
};
|
|
292
|
+
export type XctestCaseEvent = {
|
|
293
|
+
type: 'case';
|
|
294
|
+
/**
|
|
295
|
+
* The test class as XCTest reports it: module-qualified for Swift
|
|
296
|
+
* ('AppTests.LoginTests'), bare for Objective-C.
|
|
297
|
+
*/
|
|
298
|
+
testClass: string;
|
|
299
|
+
method: string;
|
|
300
|
+
passed: boolean;
|
|
301
|
+
durationMs: number;
|
|
302
|
+
/** First failure message of a failed case. */
|
|
303
|
+
failureMessage?: string;
|
|
304
|
+
};
|
|
305
|
+
export type XctestSummaryEvent = {
|
|
306
|
+
type: 'summary';
|
|
307
|
+
passed: number;
|
|
308
|
+
failed: number;
|
|
309
|
+
/** True only once every test in scope ran to completion. */
|
|
310
|
+
planFinished: boolean;
|
|
311
|
+
/** Crash or per-target failure detail when the run degraded. */
|
|
312
|
+
error?: string;
|
|
313
|
+
};
|
|
314
|
+
export type XctestEvent = XctestCaseEvent | XctestSummaryEvent;
|
|
252
315
|
export type AppStoreEvent = {
|
|
253
316
|
/** 'unknown' means an App Store upload event arrived but its payload was unreadable. */
|
|
254
317
|
state: 'uploading' | 'processing' | 'accepted' | 'failed' | 'unknown';
|
|
@@ -340,6 +403,9 @@ export declare class ExecChildProcess implements PromiseLike<ExecResult> {
|
|
|
340
403
|
private detached;
|
|
341
404
|
private appStoreEvent;
|
|
342
405
|
private playstoreEvent;
|
|
406
|
+
private xctestCases;
|
|
407
|
+
private xctestSummary;
|
|
408
|
+
private lastSeenEventId;
|
|
343
409
|
private readonly options;
|
|
344
410
|
private readonly log;
|
|
345
411
|
constructor(request: ExecRequest | Promise<ExecRequest>, options: ExecOptions);
|
package/exec-client.d.mts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"exec-client.d.mts","sourceRoot":"","sources":["src/exec-client.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,eAAe;;;CAG3B,CAAC;AAEF,mFAAmF;AACnF,qBAAa,mBAAoB,SAAQ,KAAK;CAAG;AAEjD,8DAA8D;AAC9D,qBAAa,qBAAsB,SAAQ,KAAK;CAAG;AAMnD,MAAM,MAAM,WAAW,GAAG,qBAAqB,GAAG,sBAAsB,GAAG,cAAc,CAAC;AAE1F,MAAM,MAAM,qBAAqB,GAAG;IAClC,OAAO,EAAE,YAAY,CAAC;IACtB,UAAU,CAAC,EAAE;QACX,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,GAAG,CAAC,EAAE,iBAAiB,GAAG,UAAU,GAAG,gBAAgB,GAAG,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"exec-client.d.mts","sourceRoot":"","sources":["src/exec-client.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,eAAe;;;CAG3B,CAAC;AAEF,mFAAmF;AACnF,qBAAa,mBAAoB,SAAQ,KAAK;CAAG;AAEjD,8DAA8D;AAC9D,qBAAa,qBAAsB,SAAQ,KAAK;CAAG;AAMnD,MAAM,MAAM,WAAW,GAAG,qBAAqB,GAAG,sBAAsB,GAAG,cAAc,CAAC;AAE1F,MAAM,MAAM,qBAAqB,GAAG;IAClC,OAAO,EAAE,YAAY,CAAC;IACtB,UAAU,CAAC,EAAE;QACX,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,GAAG,CAAC,EAAE,iBAAiB,GAAG,UAAU,GAAG,gBAAgB,GAAG,SAAS,GAAG,WAAW,GAAG,MAAM,CAAC;QAC3F,aAAa,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;QACpC,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB;;;;;;WAMG;QACH,MAAM,CAAC,EAAE,OAAO,GAAG,mBAAmB,CAAC;QACvC;;;;WAIG;QACH,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;QACvB,8DAA8D;QAC9D,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;QACvB;;;;WAIG;QACH,QAAQ,CAAC,EAAE,OAAO,CAAC;KACpB,CAAC;IACF,QAAQ,CAAC,EAAE;QACT,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;IACF,WAAW,CAAC,EAAE;QACZ,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,iBAAiB,CAAC,EAAE,OAAO,CAAC;KAC7B,CAAC;IACF,OAAO,CAAC,EAAE;QACR,oBAAoB,CAAC,EAAE,MAAM,CAAC;QAC9B,mBAAmB,CAAC,EAAE,MAAM,CAAC;QAC7B,uCAAuC;QACvC,0BAA0B,CAAC,EAAE,MAAM,EAAE,CAAC;KACvC,CAAC;IACF,YAAY,CAAC,EAAE;QACb,MAAM,EAAE,mBAAmB,GAAG,iBAAiB,GAAG,WAAW,CAAC;QAC9D,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,MAAM,CAAC;QACjB,WAAW,EAAE,MAAM,CAAC;QACpB,mBAAmB,EAAE,MAAM,CAAC;KAC7B,CAAC;IACF,uEAAuE;IACvE,UAAU,CAAC,EAAE,oBAAoB,CAAC;IAClC,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACvC;;;;OAIG;IACH,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,qFAAqF;IACrF,YAAY,CAAC,EAAE,YAAY,GAAG,MAAM,CAAC;IACrC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,kBAAkB,CAAC,EAAE;QACnB,iBAAiB,CAAC,EAAE,MAAM,CAAC;KAC5B,CAAC;CACH,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,MAAM,aAAa,GAAG;IAC1B;;;;OAIG;IACH,GAAG,EAAE,MAAM,CAAC;IACZ;;;;;OAKG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC,CAAC;AAEF,2FAA2F;AAC3F,MAAM,MAAM,gBAAgB,GAAG,aAAa,GAAG,WAAW,GAAG,KAAK,GAAG,QAAQ,GAAG,KAAK,CAAC;AAEtF;;;;;;GAMG;AACH,MAAM,MAAM,uBAAuB,GAAG;IACpC,kFAAkF;IAClF,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;;OAKG;IACH,aAAa,CAAC,EAAE,gBAAgB,EAAE,CAAC;CACpC,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAChC,oDAAoD;IACpD,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,EAAE,MAAM,CAAC;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,OAAO,EAAE,aAAa,CAAC;IACvB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,yEAAyE;IACzE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,uBAAuB,CAAC;IACtC,OAAO,CAAC,EAAE,mBAAmB,CAAC;IAC9B,SAAS,CAAC,EAAE,qBAAqB,CAAC;IAClC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,kBAAkB,CAAC,EAAE;QACnB,iBAAiB,CAAC,EAAE,MAAM,CAAC;KAC5B,CAAC;CACH,CAAC;AAEF;;;;;GAKG;AACH,MAAM,MAAM,qBAAqB,GAAG;IAClC,8DAA8D;IAC9D,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,uEAAuE;IACvE,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC;;;;;OAKG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;OAIG;IACH,aAAa,CAAC,EAAE,OAAO,GAAG,WAAW,CAAC;IACtC,yEAAyE;IACzE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;;;;;;OASG;IACH,wBAAwB,CAAC,EAAE,OAAO,CAAC;CACpC,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,OAAO,EAAE,KAAK,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC;IACf,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IACxE;;;;OAIG;IACH,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,CAAC;CAC9C,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,WAAW,GAAG,QAAQ,GAAG,WAAW,CAAC;IAC7C,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;;;OAIG;IACH,QAAQ,CAAC,EAAE,aAAa,CAAC;IACzB;;;OAGG;IACH,SAAS,CAAC,EAAE,cAAc,CAAC;IAC3B;;;;;OAKG;IACH,MAAM,CAAC,EAAE;QAAE,KAAK,EAAE,eAAe,EAAE,CAAC;QAAC,OAAO,CAAC,EAAE,kBAAkB,CAAA;KAAE,CAAC;IACpE;;;;OAIG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;;;OAMG;IACH,UAAU,CAAC,EAAE;QAAE,MAAM,EAAE,SAAS,GAAG,aAAa,GAAG,eAAe,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;CACvF,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,OAAO,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,8CAA8C;IAC9C,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,EAAE,SAAS,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,4DAA4D;IAC5D,YAAY,EAAE,OAAO,CAAC;IACtB,gEAAgE;IAChE,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG,eAAe,GAAG,kBAAkB,CAAC;AAE/D,MAAM,MAAM,aAAa,GAAG;IAC1B,wFAAwF;IACxF,KAAK,EAAE,WAAW,GAAG,YAAY,GAAG,UAAU,GAAG,QAAQ,GAAG,SAAS,CAAC;IACtE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,gFAAgF;IAChF,KAAK,EAAE,WAAW,GAAG,UAAU,GAAG,QAAQ,GAAG,SAAS,CAAC;IACvD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,6DAA6D;IAC7D,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,qDAAqD;IACrD,QAAQ,EAAE,MAAM,CAAC;IACjB,iEAAiE;IACjE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,0DAA0D;IAC1D,mBAAmB,EAAE,MAAM,CAAC;IAC5B;;;;;;;OAOG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;;OAGG;IACH,wBAAwB,CAAC,EAAE,OAAO,CAAC;CACpC,CAAC;AAEF,KAAK,YAAY,GAAG,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;AAC5C,KAAK,aAAa,GAAG,MAAM,IAAI,CAAC;AAChC,KAAK,YAAY,GAAG,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;AAE3C;;;GAGG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,aAAa,CAAsB;IAC3C,OAAO,CAAC,cAAc,CAAuB;IAC7C,OAAO,CAAC,MAAM,CAAS;IAEvB,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,GAAG,IAAI;IAC/C,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,aAAa,GAAG,IAAI;IAUjD,gBAAgB;IAChB,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IACxC,IAAI,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI;CAS3B;AAED;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,gBAAiB,YAAW,WAAW,CAAC,UAAU,CAAC;IAC9D,kEAAkE;IAClE,QAAQ,CAAC,OAAO,iBAAwB;IAExC,sDAAsD;IACtD,QAAQ,CAAC,MAAM,iBAAwB;IAEvC,sDAAsD;IACtD,QAAQ,CAAC,MAAM,iBAAwB;IAEvC,sEAAsE;IACtE,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IAE3B,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAsB;IACpD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAkB;IACjD,OAAO,CAAC,cAAc,CAA4B;IAClD,OAAO,CAAC,aAAa,CAA6B;IAClD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAsB;IACpD,OAAO,CAAC,eAAe,CAAyB;IAChD,OAAO,CAAC,aAAa,CAAkC;IACvD,OAAO,CAAC,MAAM,CAAS;IAIvB,OAAO,CAAC,eAAe,CAAK;IAC5B,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,aAAa,CAA8B;IACnD,OAAO,CAAC,cAAc,CAA+B;IACrD,OAAO,CAAC,WAAW,CAAyB;IAC5C,OAAO,CAAC,aAAa,CAAmC;IAKxD,OAAO,CAAC,eAAe,CAAM;IAC7B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAc;IACtC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAoE;gBAE5E,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,EAAE,OAAO,EAAE,WAAW;IAmB7E,0DAA0D;IAC1D,IAAI,CAAC,QAAQ,GAAG,UAAU,EAAE,QAAQ,GAAG,KAAK,EAC1C,WAAW,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,UAAU,KAAK,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC,GAAG,IAAI,EAC9E,UAAU,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,OAAO,KAAK,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC,GAAG,IAAI,GAC1E,OAAO,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAI/B,mBAAmB;IACnB,KAAK,CAAC,OAAO,GAAG,KAAK,EACnB,UAAU,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,OAAO,KAAK,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC,GAAG,IAAI,GACxE,OAAO,CAAC,UAAU,GAAG,OAAO,CAAC;IAIhC,sBAAsB;IACtB,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,GAAG,OAAO,CAAC,UAAU,CAAC;IAI7D,gCAAgC;IAChC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,GAAG,IAAI;IAO/C;;;;;OAKG;IACH,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC;IASzB,6CAA6C;IACvC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;YAwBb,GAAG;IAiLjB;;;;;OAKG;IACH,OAAO,CAAC,UAAU;CA2MnB;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,IAAI,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,EAAE,OAAO,EAAE,WAAW,GAAG,gBAAgB,CAExG"}
|
package/exec-client.d.ts
CHANGED
|
@@ -36,9 +36,31 @@ export type XcodeBuildExecRequest = {
|
|
|
36
36
|
workspace?: string;
|
|
37
37
|
project?: string;
|
|
38
38
|
scheme?: string;
|
|
39
|
-
sdk?: 'iphonesimulator' | 'iphoneos' | 'watchsimulator' | 'watchos';
|
|
39
|
+
sdk?: 'iphonesimulator' | 'iphoneos' | 'watchsimulator' | 'watchos' | 'appletvos' | 'xros';
|
|
40
40
|
configuration?: 'Debug' | 'Release';
|
|
41
41
|
artifactName?: string;
|
|
42
|
+
/**
|
|
43
|
+
* xcodebuild action. 'build' (default) produces one .app; with a
|
|
44
|
+
* simulator attached it is installed there. 'build-for-testing' compiles
|
|
45
|
+
* the scheme's test targets and, with a simulator attached, runs them
|
|
46
|
+
* there, streaming per-case results as 'xctest' events; the exec exits
|
|
47
|
+
* non-zero when tests fail. Requires the iphonesimulator sdk.
|
|
48
|
+
*/
|
|
49
|
+
action?: 'build' | 'build-for-testing';
|
|
50
|
+
/**
|
|
51
|
+
* Run only these tests, in xcodebuild's -only-testing format:
|
|
52
|
+
* Target[/Class[/method]]. Mutually exclusive with skipTesting; only
|
|
53
|
+
* valid with action 'build-for-testing'.
|
|
54
|
+
*/
|
|
55
|
+
onlyTesting?: string[];
|
|
56
|
+
/** Skip these tests, in xcodebuild's -skip-testing format. */
|
|
57
|
+
skipTesting?: string[];
|
|
58
|
+
/**
|
|
59
|
+
* When false, 'build-for-testing' compiles the test targets but does not
|
|
60
|
+
* run them even when a simulator is attached. Servers without support
|
|
61
|
+
* ignore the field and still run the tests.
|
|
62
|
+
*/
|
|
63
|
+
runTests?: boolean;
|
|
42
64
|
};
|
|
43
65
|
xcodegen?: {
|
|
44
66
|
spec?: string;
|
|
@@ -73,6 +95,8 @@ export type XcodeBuildExecRequest = {
|
|
|
73
95
|
*/
|
|
74
96
|
env?: string[];
|
|
75
97
|
gitInit?: boolean;
|
|
98
|
+
/** How xcodebuild stdout is processed before streaming. Defaults to 'xcbeautify'. */
|
|
99
|
+
logProcessor?: 'xcbeautify' | 'none';
|
|
76
100
|
signedUploadUrl?: string;
|
|
77
101
|
/**
|
|
78
102
|
* ID of the Limrun asset signedUploadUrl targets, when it was minted from
|
|
@@ -214,6 +238,12 @@ export type ExecOptions = {
|
|
|
214
238
|
apiUrl: string;
|
|
215
239
|
token: string;
|
|
216
240
|
log?: (level: 'debug' | 'info' | 'warn' | 'error', msg: string) => void;
|
|
241
|
+
/**
|
|
242
|
+
* Called for each XCTest event as it streams from a build-for-testing run:
|
|
243
|
+
* one per finished test case, then the terminal summary. The same data
|
|
244
|
+
* lands accumulated on ExecResult.xctest.
|
|
245
|
+
*/
|
|
246
|
+
onXctestEvent?: (event: XctestEvent) => void;
|
|
217
247
|
};
|
|
218
248
|
export type ExecResult = {
|
|
219
249
|
exitCode: number;
|
|
@@ -231,6 +261,16 @@ export type ExecResult = {
|
|
|
231
261
|
* without a playstore request, or when the server predates the feature.
|
|
232
262
|
*/
|
|
233
263
|
playstore?: PlaystoreEvent;
|
|
264
|
+
/**
|
|
265
|
+
* XCTest results streamed by a build-for-testing run: every finished case
|
|
266
|
+
* plus the terminal summary. Absent for plain builds and servers that
|
|
267
|
+
* predate the feature. A missing summary means the run died partway; the
|
|
268
|
+
* cases already streamed still stand.
|
|
269
|
+
*/
|
|
270
|
+
xctest?: {
|
|
271
|
+
cases: XctestCaseEvent[];
|
|
272
|
+
summary?: XctestSummaryEvent;
|
|
273
|
+
};
|
|
234
274
|
/**
|
|
235
275
|
* True when the client gave up waiting for the build's event stream. The
|
|
236
276
|
* exit code is fabricated in that case; the remote build may still be
|
|
@@ -249,6 +289,29 @@ export type ExecResult = {
|
|
|
249
289
|
message: string;
|
|
250
290
|
};
|
|
251
291
|
};
|
|
292
|
+
export type XctestCaseEvent = {
|
|
293
|
+
type: 'case';
|
|
294
|
+
/**
|
|
295
|
+
* The test class as XCTest reports it: module-qualified for Swift
|
|
296
|
+
* ('AppTests.LoginTests'), bare for Objective-C.
|
|
297
|
+
*/
|
|
298
|
+
testClass: string;
|
|
299
|
+
method: string;
|
|
300
|
+
passed: boolean;
|
|
301
|
+
durationMs: number;
|
|
302
|
+
/** First failure message of a failed case. */
|
|
303
|
+
failureMessage?: string;
|
|
304
|
+
};
|
|
305
|
+
export type XctestSummaryEvent = {
|
|
306
|
+
type: 'summary';
|
|
307
|
+
passed: number;
|
|
308
|
+
failed: number;
|
|
309
|
+
/** True only once every test in scope ran to completion. */
|
|
310
|
+
planFinished: boolean;
|
|
311
|
+
/** Crash or per-target failure detail when the run degraded. */
|
|
312
|
+
error?: string;
|
|
313
|
+
};
|
|
314
|
+
export type XctestEvent = XctestCaseEvent | XctestSummaryEvent;
|
|
252
315
|
export type AppStoreEvent = {
|
|
253
316
|
/** 'unknown' means an App Store upload event arrived but its payload was unreadable. */
|
|
254
317
|
state: 'uploading' | 'processing' | 'accepted' | 'failed' | 'unknown';
|
|
@@ -340,6 +403,9 @@ export declare class ExecChildProcess implements PromiseLike<ExecResult> {
|
|
|
340
403
|
private detached;
|
|
341
404
|
private appStoreEvent;
|
|
342
405
|
private playstoreEvent;
|
|
406
|
+
private xctestCases;
|
|
407
|
+
private xctestSummary;
|
|
408
|
+
private lastSeenEventId;
|
|
343
409
|
private readonly options;
|
|
344
410
|
private readonly log;
|
|
345
411
|
constructor(request: ExecRequest | Promise<ExecRequest>, options: ExecOptions);
|
package/exec-client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"exec-client.d.ts","sourceRoot":"","sources":["src/exec-client.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,eAAe;;;CAG3B,CAAC;AAEF,mFAAmF;AACnF,qBAAa,mBAAoB,SAAQ,KAAK;CAAG;AAEjD,8DAA8D;AAC9D,qBAAa,qBAAsB,SAAQ,KAAK;CAAG;AAMnD,MAAM,MAAM,WAAW,GAAG,qBAAqB,GAAG,sBAAsB,GAAG,cAAc,CAAC;AAE1F,MAAM,MAAM,qBAAqB,GAAG;IAClC,OAAO,EAAE,YAAY,CAAC;IACtB,UAAU,CAAC,EAAE;QACX,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,GAAG,CAAC,EAAE,iBAAiB,GAAG,UAAU,GAAG,gBAAgB,GAAG,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"exec-client.d.ts","sourceRoot":"","sources":["src/exec-client.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,eAAe;;;CAG3B,CAAC;AAEF,mFAAmF;AACnF,qBAAa,mBAAoB,SAAQ,KAAK;CAAG;AAEjD,8DAA8D;AAC9D,qBAAa,qBAAsB,SAAQ,KAAK;CAAG;AAMnD,MAAM,MAAM,WAAW,GAAG,qBAAqB,GAAG,sBAAsB,GAAG,cAAc,CAAC;AAE1F,MAAM,MAAM,qBAAqB,GAAG;IAClC,OAAO,EAAE,YAAY,CAAC;IACtB,UAAU,CAAC,EAAE;QACX,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,GAAG,CAAC,EAAE,iBAAiB,GAAG,UAAU,GAAG,gBAAgB,GAAG,SAAS,GAAG,WAAW,GAAG,MAAM,CAAC;QAC3F,aAAa,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;QACpC,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB;;;;;;WAMG;QACH,MAAM,CAAC,EAAE,OAAO,GAAG,mBAAmB,CAAC;QACvC;;;;WAIG;QACH,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;QACvB,8DAA8D;QAC9D,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;QACvB;;;;WAIG;QACH,QAAQ,CAAC,EAAE,OAAO,CAAC;KACpB,CAAC;IACF,QAAQ,CAAC,EAAE;QACT,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;IACF,WAAW,CAAC,EAAE;QACZ,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,iBAAiB,CAAC,EAAE,OAAO,CAAC;KAC7B,CAAC;IACF,OAAO,CAAC,EAAE;QACR,oBAAoB,CAAC,EAAE,MAAM,CAAC;QAC9B,mBAAmB,CAAC,EAAE,MAAM,CAAC;QAC7B,uCAAuC;QACvC,0BAA0B,CAAC,EAAE,MAAM,EAAE,CAAC;KACvC,CAAC;IACF,YAAY,CAAC,EAAE;QACb,MAAM,EAAE,mBAAmB,GAAG,iBAAiB,GAAG,WAAW,CAAC;QAC9D,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,MAAM,CAAC;QACjB,WAAW,EAAE,MAAM,CAAC;QACpB,mBAAmB,EAAE,MAAM,CAAC;KAC7B,CAAC;IACF,uEAAuE;IACvE,UAAU,CAAC,EAAE,oBAAoB,CAAC;IAClC,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACvC;;;;OAIG;IACH,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,qFAAqF;IACrF,YAAY,CAAC,EAAE,YAAY,GAAG,MAAM,CAAC;IACrC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,kBAAkB,CAAC,EAAE;QACnB,iBAAiB,CAAC,EAAE,MAAM,CAAC;KAC5B,CAAC;CACH,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,MAAM,aAAa,GAAG;IAC1B;;;;OAIG;IACH,GAAG,EAAE,MAAM,CAAC;IACZ;;;;;OAKG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC,CAAC;AAEF,2FAA2F;AAC3F,MAAM,MAAM,gBAAgB,GAAG,aAAa,GAAG,WAAW,GAAG,KAAK,GAAG,QAAQ,GAAG,KAAK,CAAC;AAEtF;;;;;;GAMG;AACH,MAAM,MAAM,uBAAuB,GAAG;IACpC,kFAAkF;IAClF,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;;OAKG;IACH,aAAa,CAAC,EAAE,gBAAgB,EAAE,CAAC;CACpC,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAChC,oDAAoD;IACpD,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,EAAE,MAAM,CAAC;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG;IACnC,OAAO,EAAE,aAAa,CAAC;IACvB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,yEAAyE;IACzE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,uBAAuB,CAAC;IACtC,OAAO,CAAC,EAAE,mBAAmB,CAAC;IAC9B,SAAS,CAAC,EAAE,qBAAqB,CAAC;IAClC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,kBAAkB,CAAC,EAAE;QACnB,iBAAiB,CAAC,EAAE,MAAM,CAAC;KAC5B,CAAC;CACH,CAAC;AAEF;;;;;GAKG;AACH,MAAM,MAAM,qBAAqB,GAAG;IAClC,8DAA8D;IAC9D,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,uEAAuE;IACvE,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC;;;;;OAKG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;OAIG;IACH,aAAa,CAAC,EAAE,OAAO,GAAG,WAAW,CAAC;IACtC,yEAAyE;IACzE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;;;;;;OASG;IACH,wBAAwB,CAAC,EAAE,OAAO,CAAC;CACpC,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,OAAO,EAAE,KAAK,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC;IACf,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IACxE;;;;OAIG;IACH,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,IAAI,CAAC;CAC9C,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,WAAW,GAAG,QAAQ,GAAG,WAAW,CAAC;IAC7C,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;;;OAIG;IACH,QAAQ,CAAC,EAAE,aAAa,CAAC;IACzB;;;OAGG;IACH,SAAS,CAAC,EAAE,cAAc,CAAC;IAC3B;;;;;OAKG;IACH,MAAM,CAAC,EAAE;QAAE,KAAK,EAAE,eAAe,EAAE,CAAC;QAAC,OAAO,CAAC,EAAE,kBAAkB,CAAA;KAAE,CAAC;IACpE;;;;OAIG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;;;OAMG;IACH,UAAU,CAAC,EAAE;QAAE,MAAM,EAAE,SAAS,GAAG,aAAa,GAAG,eAAe,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;CACvF,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,OAAO,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,8CAA8C;IAC9C,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,IAAI,EAAE,SAAS,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,4DAA4D;IAC5D,YAAY,EAAE,OAAO,CAAC;IACtB,gEAAgE;IAChE,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG,eAAe,GAAG,kBAAkB,CAAC;AAE/D,MAAM,MAAM,aAAa,GAAG;IAC1B,wFAAwF;IACxF,KAAK,EAAE,WAAW,GAAG,YAAY,GAAG,UAAU,GAAG,QAAQ,GAAG,SAAS,CAAC;IACtE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,gFAAgF;IAChF,KAAK,EAAE,WAAW,GAAG,UAAU,GAAG,QAAQ,GAAG,SAAS,CAAC;IACvD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,6DAA6D;IAC7D,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,qDAAqD;IACrD,QAAQ,EAAE,MAAM,CAAC;IACjB,iEAAiE;IACjE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,0DAA0D;IAC1D,mBAAmB,EAAE,MAAM,CAAC;IAC5B;;;;;;;OAOG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;;OAGG;IACH,wBAAwB,CAAC,EAAE,OAAO,CAAC;CACpC,CAAC;AAEF,KAAK,YAAY,GAAG,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;AAC5C,KAAK,aAAa,GAAG,MAAM,IAAI,CAAC;AAChC,KAAK,YAAY,GAAG,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;AAE3C;;;GAGG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,aAAa,CAAsB;IAC3C,OAAO,CAAC,cAAc,CAAuB;IAC7C,OAAO,CAAC,MAAM,CAAS;IAEvB,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,GAAG,IAAI;IAC/C,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,aAAa,GAAG,IAAI;IAUjD,gBAAgB;IAChB,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IACxC,IAAI,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI;CAS3B;AAED;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,gBAAiB,YAAW,WAAW,CAAC,UAAU,CAAC;IAC9D,kEAAkE;IAClE,QAAQ,CAAC,OAAO,iBAAwB;IAExC,sDAAsD;IACtD,QAAQ,CAAC,MAAM,iBAAwB;IAEvC,sDAAsD;IACtD,QAAQ,CAAC,MAAM,iBAAwB;IAEvC,sEAAsE;IACtE,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IAE3B,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAsB;IACpD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAkB;IACjD,OAAO,CAAC,cAAc,CAA4B;IAClD,OAAO,CAAC,aAAa,CAA6B;IAClD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAsB;IACpD,OAAO,CAAC,eAAe,CAAyB;IAChD,OAAO,CAAC,aAAa,CAAkC;IACvD,OAAO,CAAC,MAAM,CAAS;IAIvB,OAAO,CAAC,eAAe,CAAK;IAC5B,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,aAAa,CAA8B;IACnD,OAAO,CAAC,cAAc,CAA+B;IACrD,OAAO,CAAC,WAAW,CAAyB;IAC5C,OAAO,CAAC,aAAa,CAAmC;IAKxD,OAAO,CAAC,eAAe,CAAM;IAC7B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAc;IACtC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAoE;gBAE5E,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,EAAE,OAAO,EAAE,WAAW;IAmB7E,0DAA0D;IAC1D,IAAI,CAAC,QAAQ,GAAG,UAAU,EAAE,QAAQ,GAAG,KAAK,EAC1C,WAAW,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,UAAU,KAAK,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC,GAAG,IAAI,EAC9E,UAAU,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,OAAO,KAAK,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC,GAAG,IAAI,GAC1E,OAAO,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAI/B,mBAAmB;IACnB,KAAK,CAAC,OAAO,GAAG,KAAK,EACnB,UAAU,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,OAAO,KAAK,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC,GAAG,IAAI,GACxE,OAAO,CAAC,UAAU,GAAG,OAAO,CAAC;IAIhC,sBAAsB;IACtB,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,GAAG,OAAO,CAAC,UAAU,CAAC;IAI7D,gCAAgC;IAChC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,GAAG,IAAI;IAO/C;;;;;OAKG;IACH,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC;IASzB,6CAA6C;IACvC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;YAwBb,GAAG;IAiLjB;;;;;OAKG;IACH,OAAO,CAAC,UAAU;CA2MnB;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,IAAI,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,EAAE,OAAO,EAAE,WAAW,GAAG,gBAAgB,CAExG"}
|
package/exec-client.js
CHANGED
|
@@ -105,6 +105,13 @@ class ExecChildProcess {
|
|
|
105
105
|
this.detached = false;
|
|
106
106
|
this.appStoreEvent = null;
|
|
107
107
|
this.playstoreEvent = null;
|
|
108
|
+
this.xctestCases = [];
|
|
109
|
+
this.xctestSummary = null;
|
|
110
|
+
// Highest server-assigned event id already dispatched. The server numbers
|
|
111
|
+
// every frame and replays the stream from the start on reconnect; skipping
|
|
112
|
+
// ids at or below this mark drops the replayed prefix for every event type
|
|
113
|
+
// at once, and stays correct if the server ever honors Last-Event-ID.
|
|
114
|
+
this.lastSeenEventId = -1;
|
|
108
115
|
this.options = options;
|
|
109
116
|
this.log = options.log ?? (() => { });
|
|
110
117
|
this.startedPromise = new Promise((resolve, reject) => {
|
|
@@ -254,7 +261,17 @@ class ExecChildProcess {
|
|
|
254
261
|
if (request.command === 'xcodebuild' && request.testflight) {
|
|
255
262
|
timeoutMs += (Math.max(0, request.testflight.waitTimeoutSeconds ?? 0) + 900) * 1000;
|
|
256
263
|
}
|
|
257
|
-
|
|
264
|
+
if (request.command === 'xcodebuild' && request.xcodebuild?.action === 'build-for-testing') {
|
|
265
|
+
// The test run happens after the build: products sync plus the suite,
|
|
266
|
+
// which the server caps at an hour per target. Two hours cover the
|
|
267
|
+
// common unit-plus-UI shape; the client cannot know the target count, so
|
|
268
|
+
// schemes with more targets may need a liveness-based deadline instead.
|
|
269
|
+
// Kept even with runTests: false: servers without run suppression still
|
|
270
|
+
// execute the suite, and the cap is an upper bound so a pure build
|
|
271
|
+
// finishes early regardless.
|
|
272
|
+
timeoutMs += 2 * 3600 * 1000;
|
|
273
|
+
}
|
|
274
|
+
if (request.command === 'run') {
|
|
258
275
|
timeoutMs = (Math.max(1, request.timeoutSeconds ?? 3600) + 60) * 1000;
|
|
259
276
|
}
|
|
260
277
|
let exitCode;
|
|
@@ -325,6 +342,14 @@ class ExecChildProcess {
|
|
|
325
342
|
...('additionalMetadata' in request ? request.additionalMetadata ?? {} : {}),
|
|
326
343
|
...(this.appStoreEvent ? { appstore: this.appStoreEvent } : {}),
|
|
327
344
|
...(this.playstoreEvent ? { playstore: this.playstoreEvent } : {}),
|
|
345
|
+
...(this.xctestCases.length > 0 || this.xctestSummary ?
|
|
346
|
+
{
|
|
347
|
+
xctest: {
|
|
348
|
+
cases: this.xctestCases,
|
|
349
|
+
...(this.xctestSummary ? { summary: this.xctestSummary } : {}),
|
|
350
|
+
},
|
|
351
|
+
}
|
|
352
|
+
: {}),
|
|
328
353
|
...(timedOut ? { timedOut } : {}),
|
|
329
354
|
...(incomplete ? { incomplete } : {}),
|
|
330
355
|
};
|
|
@@ -457,6 +482,15 @@ class ExecChildProcess {
|
|
|
457
482
|
this.streamDeadSince = 0;
|
|
458
483
|
proofOfLifeThisCycle = true;
|
|
459
484
|
lastStreamError = undefined;
|
|
485
|
+
const eventId = message.id !== undefined ? parseInt(message.id, 10) : NaN;
|
|
486
|
+
if (!Number.isNaN(eventId)) {
|
|
487
|
+
if (eventId <= this.lastSeenEventId) {
|
|
488
|
+
// A reconnect replays the stream from the start; this frame was
|
|
489
|
+
// already dispatched on an earlier connection.
|
|
490
|
+
return;
|
|
491
|
+
}
|
|
492
|
+
this.lastSeenEventId = eventId;
|
|
493
|
+
}
|
|
460
494
|
const data = typeof message.data === 'string' ? message.data : String(message.data ?? '');
|
|
461
495
|
const eventType = message.event;
|
|
462
496
|
if (eventType === 'command') {
|
|
@@ -491,6 +525,38 @@ class ExecChildProcess {
|
|
|
491
525
|
this.log('warn', `SSE playstore event has invalid data: ${data}`);
|
|
492
526
|
}
|
|
493
527
|
}
|
|
528
|
+
else if (eventType === 'xctest') {
|
|
529
|
+
let event;
|
|
530
|
+
try {
|
|
531
|
+
const parsed = JSON.parse(data);
|
|
532
|
+
if (parsed?.type === 'case') {
|
|
533
|
+
this.xctestCases.push(parsed);
|
|
534
|
+
event = parsed;
|
|
535
|
+
}
|
|
536
|
+
else if (parsed?.type === 'summary') {
|
|
537
|
+
this.xctestSummary = parsed;
|
|
538
|
+
event = parsed;
|
|
539
|
+
}
|
|
540
|
+
else {
|
|
541
|
+
// The simulator owns the frame vocabulary and may grow it; the
|
|
542
|
+
// callback's contract is cases and summaries only.
|
|
543
|
+
this.log('debug', `SSE xctest event of unknown type ignored: ${data}`);
|
|
544
|
+
}
|
|
545
|
+
}
|
|
546
|
+
catch {
|
|
547
|
+
this.log('warn', `SSE xctest event has invalid data: ${data}`);
|
|
548
|
+
}
|
|
549
|
+
if (event) {
|
|
550
|
+
try {
|
|
551
|
+
this.options.onXctestEvent?.(event);
|
|
552
|
+
}
|
|
553
|
+
catch (err) {
|
|
554
|
+
// The consumer's callback, not the frame: the run must not be
|
|
555
|
+
// derailed and the log must not blame the payload.
|
|
556
|
+
this.log('warn', `onXctestEvent callback threw: ${String(err)}`);
|
|
557
|
+
}
|
|
558
|
+
}
|
|
559
|
+
}
|
|
494
560
|
else if (eventType === 'exitCode') {
|
|
495
561
|
const exitCode = parseInt(data, 10);
|
|
496
562
|
if (Number.isNaN(exitCode)) {
|
package/exec-client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"exec-client.js","sourceRoot":"","sources":["src/exec-client.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"exec-client.js","sourceRoot":"","sources":["src/exec-client.ts"],"names":[],"mappings":"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"}
|
package/exec-client.mjs
CHANGED
|
@@ -98,6 +98,13 @@ export class ExecChildProcess {
|
|
|
98
98
|
this.detached = false;
|
|
99
99
|
this.appStoreEvent = null;
|
|
100
100
|
this.playstoreEvent = null;
|
|
101
|
+
this.xctestCases = [];
|
|
102
|
+
this.xctestSummary = null;
|
|
103
|
+
// Highest server-assigned event id already dispatched. The server numbers
|
|
104
|
+
// every frame and replays the stream from the start on reconnect; skipping
|
|
105
|
+
// ids at or below this mark drops the replayed prefix for every event type
|
|
106
|
+
// at once, and stays correct if the server ever honors Last-Event-ID.
|
|
107
|
+
this.lastSeenEventId = -1;
|
|
101
108
|
this.options = options;
|
|
102
109
|
this.log = options.log ?? (() => { });
|
|
103
110
|
this.startedPromise = new Promise((resolve, reject) => {
|
|
@@ -247,7 +254,17 @@ export class ExecChildProcess {
|
|
|
247
254
|
if (request.command === 'xcodebuild' && request.testflight) {
|
|
248
255
|
timeoutMs += (Math.max(0, request.testflight.waitTimeoutSeconds ?? 0) + 900) * 1000;
|
|
249
256
|
}
|
|
250
|
-
|
|
257
|
+
if (request.command === 'xcodebuild' && request.xcodebuild?.action === 'build-for-testing') {
|
|
258
|
+
// The test run happens after the build: products sync plus the suite,
|
|
259
|
+
// which the server caps at an hour per target. Two hours cover the
|
|
260
|
+
// common unit-plus-UI shape; the client cannot know the target count, so
|
|
261
|
+
// schemes with more targets may need a liveness-based deadline instead.
|
|
262
|
+
// Kept even with runTests: false: servers without run suppression still
|
|
263
|
+
// execute the suite, and the cap is an upper bound so a pure build
|
|
264
|
+
// finishes early regardless.
|
|
265
|
+
timeoutMs += 2 * 3600 * 1000;
|
|
266
|
+
}
|
|
267
|
+
if (request.command === 'run') {
|
|
251
268
|
timeoutMs = (Math.max(1, request.timeoutSeconds ?? 3600) + 60) * 1000;
|
|
252
269
|
}
|
|
253
270
|
let exitCode;
|
|
@@ -318,6 +335,14 @@ export class ExecChildProcess {
|
|
|
318
335
|
...('additionalMetadata' in request ? request.additionalMetadata ?? {} : {}),
|
|
319
336
|
...(this.appStoreEvent ? { appstore: this.appStoreEvent } : {}),
|
|
320
337
|
...(this.playstoreEvent ? { playstore: this.playstoreEvent } : {}),
|
|
338
|
+
...(this.xctestCases.length > 0 || this.xctestSummary ?
|
|
339
|
+
{
|
|
340
|
+
xctest: {
|
|
341
|
+
cases: this.xctestCases,
|
|
342
|
+
...(this.xctestSummary ? { summary: this.xctestSummary } : {}),
|
|
343
|
+
},
|
|
344
|
+
}
|
|
345
|
+
: {}),
|
|
321
346
|
...(timedOut ? { timedOut } : {}),
|
|
322
347
|
...(incomplete ? { incomplete } : {}),
|
|
323
348
|
};
|
|
@@ -450,6 +475,15 @@ export class ExecChildProcess {
|
|
|
450
475
|
this.streamDeadSince = 0;
|
|
451
476
|
proofOfLifeThisCycle = true;
|
|
452
477
|
lastStreamError = undefined;
|
|
478
|
+
const eventId = message.id !== undefined ? parseInt(message.id, 10) : NaN;
|
|
479
|
+
if (!Number.isNaN(eventId)) {
|
|
480
|
+
if (eventId <= this.lastSeenEventId) {
|
|
481
|
+
// A reconnect replays the stream from the start; this frame was
|
|
482
|
+
// already dispatched on an earlier connection.
|
|
483
|
+
return;
|
|
484
|
+
}
|
|
485
|
+
this.lastSeenEventId = eventId;
|
|
486
|
+
}
|
|
453
487
|
const data = typeof message.data === 'string' ? message.data : String(message.data ?? '');
|
|
454
488
|
const eventType = message.event;
|
|
455
489
|
if (eventType === 'command') {
|
|
@@ -484,6 +518,38 @@ export class ExecChildProcess {
|
|
|
484
518
|
this.log('warn', `SSE playstore event has invalid data: ${data}`);
|
|
485
519
|
}
|
|
486
520
|
}
|
|
521
|
+
else if (eventType === 'xctest') {
|
|
522
|
+
let event;
|
|
523
|
+
try {
|
|
524
|
+
const parsed = JSON.parse(data);
|
|
525
|
+
if (parsed?.type === 'case') {
|
|
526
|
+
this.xctestCases.push(parsed);
|
|
527
|
+
event = parsed;
|
|
528
|
+
}
|
|
529
|
+
else if (parsed?.type === 'summary') {
|
|
530
|
+
this.xctestSummary = parsed;
|
|
531
|
+
event = parsed;
|
|
532
|
+
}
|
|
533
|
+
else {
|
|
534
|
+
// The simulator owns the frame vocabulary and may grow it; the
|
|
535
|
+
// callback's contract is cases and summaries only.
|
|
536
|
+
this.log('debug', `SSE xctest event of unknown type ignored: ${data}`);
|
|
537
|
+
}
|
|
538
|
+
}
|
|
539
|
+
catch {
|
|
540
|
+
this.log('warn', `SSE xctest event has invalid data: ${data}`);
|
|
541
|
+
}
|
|
542
|
+
if (event) {
|
|
543
|
+
try {
|
|
544
|
+
this.options.onXctestEvent?.(event);
|
|
545
|
+
}
|
|
546
|
+
catch (err) {
|
|
547
|
+
// The consumer's callback, not the frame: the run must not be
|
|
548
|
+
// derailed and the log must not blame the payload.
|
|
549
|
+
this.log('warn', `onXctestEvent callback threw: ${String(err)}`);
|
|
550
|
+
}
|
|
551
|
+
}
|
|
552
|
+
}
|
|
487
553
|
else if (eventType === 'exitCode') {
|
|
488
554
|
const exitCode = parseInt(data, 10);
|
|
489
555
|
if (Number.isNaN(exitCode)) {
|