froth-webdriverio-framework 7.0.59 → 7.0.60
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/froth_configs/commonhook.js +32 -40
- package/package.json +1 -1
|
@@ -158,46 +158,7 @@ const commonHooks = {
|
|
|
158
158
|
}
|
|
159
159
|
/** 2️⃣ BrowserStack capability normalization */
|
|
160
160
|
|
|
161
|
-
|
|
162
|
-
const bsOpts = capabilities['bstack:options'] || {};
|
|
163
|
-
|
|
164
|
-
console.log('✅ BS_USERNAME set from capabilities:', process.env.BROWSERSTACK_USERNAME);
|
|
165
|
-
|
|
166
|
-
if (process.env.BS_SESSION_TYPE === 'app-automate') {
|
|
167
|
-
const appPath = process.env.BROWSERSTACK_APP_PATH;
|
|
168
|
-
if (!appPath) {
|
|
169
|
-
await failExecution('BROWSERSTACK_APP_PATH is missing');
|
|
170
|
-
}
|
|
171
|
-
|
|
172
|
-
bsOpts.app = appPath;
|
|
173
|
-
capabilities['appium:app'] = appPath;
|
|
174
|
-
console.log('✅ App & media set in before session');
|
|
175
|
-
|
|
176
|
-
}
|
|
177
|
-
/** Media upload */
|
|
178
|
-
|
|
179
|
-
if (process.env.MEDIA_FILES) {
|
|
180
|
-
try {
|
|
181
|
-
console.log("env details for media -->" + process.env.MEDIA_FILES)
|
|
182
|
-
const media = JSON.parse(process.env.MEDIA_FILES).join(',');
|
|
183
|
-
process.env.BS_UPLOAD_MEDIA= media;
|
|
184
|
-
console.log("after comma separted "+ process.env.BS_UPLOAD_MEDIA)
|
|
185
|
-
// console.log('Total items:', media.length);
|
|
186
|
-
if (process.env.BS_UPLOAD_MEDIA) {
|
|
187
|
-
bsOpts.uploadMedia = process.env.BS_UPLOAD_MEDIA
|
|
188
|
-
.split(',')
|
|
189
|
-
.map(x => x.trim())
|
|
190
|
-
|
|
191
|
-
console.log('Final capabilities:', JSON.stringify(capabilities, null, 2));
|
|
192
|
-
|
|
193
|
-
}
|
|
194
|
-
} catch (error) {
|
|
195
|
-
console.warn('⚠️ MEDIA_FILES is not valid JSON', error.message);
|
|
196
|
-
}
|
|
197
|
-
}
|
|
198
|
-
capabilities['bstack:options'] = bsOpts;
|
|
199
|
-
|
|
200
|
-
}
|
|
161
|
+
capabilities = getBrowserStackCapabilities(capabilities);
|
|
201
162
|
console.log('final cinfig dteials :' + JSON.stringify(capabilities))
|
|
202
163
|
|
|
203
164
|
// console.log("config details " + JSON.stringify(config))
|
|
@@ -373,6 +334,37 @@ async function normalizeWdioError(error) {
|
|
|
373
334
|
|
|
374
335
|
return `Automation framework error: ${msg}`;
|
|
375
336
|
}
|
|
337
|
+
async function getBrowserStackCapabilities(baseCaps) {
|
|
338
|
+
|
|
339
|
+
if (
|
|
340
|
+
process.env.PLATFORM !== 'browserstack' &&
|
|
341
|
+
process.env.PLATFORM !== 'browserstacklocal'
|
|
342
|
+
) {
|
|
343
|
+
return baseCaps;
|
|
344
|
+
}
|
|
376
345
|
|
|
346
|
+
return baseCaps.map((capabilities) => {
|
|
347
|
+
console.log("env details for media -->" + process.env.MEDIA_FILES)
|
|
348
|
+
const media = JSON.parse(process.env.MEDIA_FILES).join(',');
|
|
349
|
+
process.env.BS_UPLOAD_MEDIA = media;
|
|
350
|
+
console.log("after comma separted " + process.env.BS_UPLOAD_MEDIA)
|
|
351
|
+
const bsOpts = capabilities['bstack:options'] || {};
|
|
352
|
+
// bsOpts.deviceName = process.env.BS_DEVICE;
|
|
353
|
+
// bsOpts.osVersion = process.env.BS_OS_VERSION;
|
|
354
|
+
// bsOpts.networkLogs = process.env.BS_NETWORK_LOGS;
|
|
355
|
+
bsOpts.debug = process.env.BS_DEBUG === 'false';
|
|
356
|
+
// bsOpts.sessionName = process.env.BS_SESSION_NAME;
|
|
357
|
+
// bsOpts.buildName = process.env.BS_BUILD_NAME;
|
|
358
|
+
// bsOpts.projectName = process.env.BS_PROJECT_NAME;
|
|
359
|
+
|
|
360
|
+
if (process.env.BS_UPLOAD_MEDIA) {
|
|
361
|
+
bsOpts.uploadMedia = process.env.BS_UPLOAD_MEDIA
|
|
362
|
+
.split(',')
|
|
363
|
+
.map(x => x.trim());
|
|
364
|
+
}
|
|
365
|
+
capabilities['bstack:options'] = bsOpts;
|
|
366
|
+
return capabilities;
|
|
367
|
+
});
|
|
368
|
+
}
|
|
377
369
|
|
|
378
370
|
module.exports = commonHooks;
|