@devicecloud.dev/dcd 5.5.0-beta.2 → 5.5.0-beta.4
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/dist/commands/cloud.d.ts +4 -0
- package/dist/commands/cloud.js +3 -0
- package/dist/config/flags/device.flags.d.ts +4 -0
- package/dist/config/flags/device.flags.js +4 -0
- package/dist/constants.d.ts +4 -0
- package/dist/services/test-submission.service.d.ts +6 -0
- package/dist/services/test-submission.service.js +2 -1
- package/package.json +1 -1
package/dist/commands/cloud.d.ts
CHANGED
|
@@ -160,6 +160,10 @@ export declare const cloudCommand: import("citty").CommandDef<{
|
|
|
160
160
|
readonly type: "string";
|
|
161
161
|
readonly description: `[Android only] Android device to run your flow against (options: ${string})`;
|
|
162
162
|
};
|
|
163
|
+
readonly 'render-engine': {
|
|
164
|
+
readonly type: "string";
|
|
165
|
+
readonly description: "[Android only] Software renderer the emulator boots with (options: lavapipe, swiftshader). Defaults to lavapipe; pick swiftshader if your app fails to render or the device drops out mid-run. Apps shipping the Flutter engine are detected and switched automatically, so this is only needed to override that.";
|
|
166
|
+
};
|
|
163
167
|
readonly 'device-locale': {
|
|
164
168
|
readonly type: "string";
|
|
165
169
|
readonly description: "Locale that will be set to a device, ISO-639-1 code and uppercase ISO-3166-1 code e.g. \"de_DE\" for Germany";
|
package/dist/commands/cloud.js
CHANGED
|
@@ -42,6 +42,7 @@ const DOWNLOAD_OPTIONS = ['ALL', 'FAILED'];
|
|
|
42
42
|
const REPORT_OPTIONS = ['allure', 'html', 'html-detailed', 'junit'];
|
|
43
43
|
const ORIENTATION_OPTIONS = ['0', '90'];
|
|
44
44
|
const RUNNER_TYPE_OPTIONS = ['default', 'm4', 'm1', 'gpu1', 'cpu1'];
|
|
45
|
+
const RENDER_ENGINE_OPTIONS = ['lavapipe', 'swiftshader'];
|
|
45
46
|
/**
|
|
46
47
|
* Primary CLI command for executing tests on DeviceCloud.
|
|
47
48
|
* Orchestrates the complete test workflow:
|
|
@@ -159,6 +160,7 @@ export const cloudCommand = defineCommand({
|
|
|
159
160
|
const report = validateEnum(args.report, REPORT_OPTIONS, 'report');
|
|
160
161
|
let retry = parseIntFlag(args.retry, 'retry');
|
|
161
162
|
const runnerType = validateEnum(args['runner-type'], RUNNER_TYPE_OPTIONS, 'runner-type') ?? 'default';
|
|
163
|
+
const renderEngine = validateEnum(args['render-engine'], RENDER_ENGINE_OPTIONS, 'render-engine');
|
|
162
164
|
const showCrosshairs = Boolean(args['show-crosshairs']);
|
|
163
165
|
const maestroChromeOnboarding = Boolean(args['maestro-chrome-onboarding']);
|
|
164
166
|
const disableAnimations = Boolean(args['disable-animations']);
|
|
@@ -572,6 +574,7 @@ export const cloudCommand = defineCommand({
|
|
|
572
574
|
showCrosshairs,
|
|
573
575
|
maestroChromeOnboarding,
|
|
574
576
|
disableAnimations,
|
|
577
|
+
renderEngine,
|
|
575
578
|
});
|
|
576
579
|
// Device-matrix cost preview: the server prices the exact fan-out (quote
|
|
577
580
|
// == charge) so the user sees the cell count and estimated cost before the
|
|
@@ -10,6 +10,10 @@ export declare const deviceFlags: {
|
|
|
10
10
|
readonly type: "string";
|
|
11
11
|
readonly description: `[Android only] Android device to run your flow against (options: ${string})`;
|
|
12
12
|
};
|
|
13
|
+
readonly 'render-engine': {
|
|
14
|
+
readonly type: "string";
|
|
15
|
+
readonly description: "[Android only] Software renderer the emulator boots with (options: lavapipe, swiftshader). Defaults to lavapipe; pick swiftshader if your app fails to render or the device drops out mid-run. Apps shipping the Flutter engine are detected and switched automatically, so this is only needed to override that.";
|
|
16
|
+
};
|
|
13
17
|
readonly 'device-locale': {
|
|
14
18
|
readonly type: "string";
|
|
15
19
|
readonly description: "Locale that will be set to a device, ISO-639-1 code and uppercase ISO-3166-1 code e.g. \"de_DE\" for Germany";
|
|
@@ -15,6 +15,10 @@ export const deviceFlags = {
|
|
|
15
15
|
type: 'string',
|
|
16
16
|
description: `[Android only] Android device to run your flow against (options: ${androidDevices})`,
|
|
17
17
|
},
|
|
18
|
+
'render-engine': {
|
|
19
|
+
type: 'string',
|
|
20
|
+
description: '[Android only] Software renderer the emulator boots with (options: lavapipe, swiftshader). Defaults to lavapipe; pick swiftshader if your app fails to render or the device drops out mid-run. Apps shipping the Flutter engine are detected and switched automatically, so this is only needed to override that.',
|
|
21
|
+
},
|
|
18
22
|
'device-locale': {
|
|
19
23
|
type: 'string',
|
|
20
24
|
description: 'Locale that will be set to a device, ISO-639-1 code and uppercase ISO-3166-1 code e.g. "de_DE" for Germany',
|
package/dist/constants.d.ts
CHANGED
|
@@ -146,6 +146,10 @@ export declare const flags: {
|
|
|
146
146
|
readonly type: "string";
|
|
147
147
|
readonly description: `[Android only] Android device to run your flow against (options: ${string})`;
|
|
148
148
|
};
|
|
149
|
+
readonly 'render-engine': {
|
|
150
|
+
readonly type: "string";
|
|
151
|
+
readonly description: "[Android only] Software renderer the emulator boots with (options: lavapipe, swiftshader). Defaults to lavapipe; pick swiftshader if your app fails to render or the device drops out mid-run. Apps shipping the Flutter engine are detected and switched automatically, so this is only needed to override that.";
|
|
152
|
+
};
|
|
149
153
|
readonly 'device-locale': {
|
|
150
154
|
readonly type: "string";
|
|
151
155
|
readonly description: "Locale that will be set to a device, ISO-639-1 code and uppercase ISO-3166-1 code e.g. \"de_DE\" for Germany";
|
|
@@ -32,6 +32,12 @@ export interface TestSubmissionConfig {
|
|
|
32
32
|
name?: string;
|
|
33
33
|
orientation?: string;
|
|
34
34
|
raw?: unknown;
|
|
35
|
+
/**
|
|
36
|
+
* Which emulator software renderer to boot with (Android only). Omitted
|
|
37
|
+
* means the server decides: lavapipe by default, or swiftshader when the
|
|
38
|
+
* binary is detected as shipping the Flutter engine.
|
|
39
|
+
*/
|
|
40
|
+
renderEngine?: 'lavapipe' | 'swiftshader';
|
|
35
41
|
report?: string;
|
|
36
42
|
retry?: number;
|
|
37
43
|
runnerType?: string;
|
|
@@ -20,7 +20,7 @@ export class TestSubmissionService {
|
|
|
20
20
|
* @returns The flow zip buffer, its SHA-256, and the string-encoded fields
|
|
21
21
|
*/
|
|
22
22
|
async buildTestPayload(config) {
|
|
23
|
-
const { apiUrl, appBinaryId, encrypt = false, flowFile, executionPlan, commonRoot, cliVersion, env = [], metadata = [], googlePlay = false, androidApiLevel, androidDevice, androidNoSnapshot, iOSVersion, iOSDevice, name, runnerType, maestroVersion, deviceLocale, orientation, retry, continueOnFailure = true, report, showCrosshairs, maestroChromeOnboarding, raw, disableAnimations, deviceMatrix, debug = false, logger, } = config;
|
|
23
|
+
const { apiUrl, appBinaryId, encrypt = false, flowFile, executionPlan, commonRoot, cliVersion, env = [], metadata = [], googlePlay = false, androidApiLevel, androidDevice, androidNoSnapshot, iOSVersion, iOSDevice, name, runnerType, maestroVersion, deviceLocale, orientation, retry, continueOnFailure = true, renderEngine, report, showCrosshairs, maestroChromeOnboarding, raw, disableAnimations, deviceMatrix, debug = false, logger, } = config;
|
|
24
24
|
const { allExcludeTags, allIncludeTags, flowMetadata, flowOverrides, flowsToRun: testFileNames, referencedFiles, sequence, workspaceConfig, } = executionPlan;
|
|
25
25
|
const { flows: sequentialFlows = [] } = sequence ?? {};
|
|
26
26
|
const envObject = this.parseKeyValuePairs(env);
|
|
@@ -131,6 +131,7 @@ export class TestSubmissionService {
|
|
|
131
131
|
maestroVersion,
|
|
132
132
|
orientation,
|
|
133
133
|
raw: JSON.stringify(raw),
|
|
134
|
+
renderEngine,
|
|
134
135
|
report,
|
|
135
136
|
showCrosshairs,
|
|
136
137
|
maestroChromeOnboarding,
|