@sap_oss/wdio-qmate-service 2.4.1 → 2.4.2

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.
Files changed (68) hide show
  1. package/docs/doc.md +108 -0
  2. package/lib/reuse/modules/util/file.d.ts +35 -0
  3. package/lib/reuse/modules/util/file.js +94 -0
  4. package/lib/reuse/modules/util/file.js.map +1 -1
  5. package/package.json +3 -1
  6. package/test/core/functional/chaining/test.conf.js +1 -1
  7. package/test/core/functional/locators/test.locator.conf.js +1 -1
  8. package/test/core/functional/nativeBrowser/runInBrowser.test.js +1 -1
  9. package/test/core/functional/nativeBrowser/test.conf.js +1 -1
  10. package/test/core/functional/nonUi5/test.conf.js +1 -1
  11. package/test/core/functional/ui5Properties/getAggregations.test.js +2 -2
  12. package/test/core/functional/ui5Properties/test.conf.js +1 -1
  13. package/test/core/functional/uiveri5/test.conf.js +1 -1
  14. package/test/core/testIntegration/config.js +1 -1
  15. package/test/reuse/common/assertion/test.assertion.conf.js +1 -1
  16. package/test/reuse/common/userInteraction/fillActive.spec.js +4 -4
  17. package/test/reuse/common/userInteraction/fillActiveAndRetry.spec.js +4 -4
  18. package/test/reuse/nonUi5/assertion/expectValueToBe.spec.js +2 -2
  19. package/test/reuse/nonUi5/assertion/test.assertion.conf.js +1 -1
  20. package/test/reuse/nonUi5/assertion/test.assertion.sauceLabs.conf.js +1 -1
  21. package/test/reuse/nonUi5/element/getAttributeValue.spec.js +3 -3
  22. package/test/reuse/nonUi5/element/getByChild.spec.js +3 -3
  23. package/test/reuse/nonUi5/element/getByClass.spec.js +4 -4
  24. package/test/reuse/nonUi5/element/getByParent.spec.js +3 -3
  25. package/test/reuse/nonUi5/element/getByXPath.spec.js +2 -2
  26. package/test/reuse/nonUi5/element/getValue.spec.js +3 -3
  27. package/test/reuse/nonUi5/element/highlight.spec.js +1 -1
  28. package/test/reuse/nonUi5/element/isPresent.spec.js +3 -3
  29. package/test/reuse/nonUi5/element/isPresentByCss.spec.js +2 -2
  30. package/test/reuse/nonUi5/element/setInnerHTML.spec.js +1 -1
  31. package/test/reuse/nonUi5/element/test.element.conf.js +1 -1
  32. package/test/reuse/nonUi5/element/test.element.sauceLabs.conf.js +1 -1
  33. package/test/reuse/nonUi5/userInteraction/scrollToElement.spec.js +1 -1
  34. package/test/reuse/ui5/assertion/test.assertion.conf.js +1 -1
  35. package/test/reuse/ui5/assertion/test.assertion.sauceLab.conf.js +1 -1
  36. package/test/reuse/ui5/confirmationDialog/test.confirmationDialog.conf.js +1 -1
  37. package/test/reuse/ui5/confirmationDialog/test.confirmationDialog.sauceLab.conf.js +1 -1
  38. package/test/reuse/ui5/control/focus.spec.js +1 -1
  39. package/test/reuse/ui5/control/test.control.conf.js +1 -1
  40. package/test/reuse/ui5/control/test.control.sauceLab.conf.js +1 -1
  41. package/test/reuse/ui5/date/fillRange.spec.js +1 -1
  42. package/test/reuse/ui5/date/pick.spec.js +1 -1
  43. package/test/reuse/ui5/date/pickRange.spec.js +1 -1
  44. package/test/reuse/ui5/element/getByText.spec.js +1 -1
  45. package/test/reuse/ui5/element/test.element.conf.js +1 -1
  46. package/test/reuse/ui5/element/test.element.sauceLab.conf.js +1 -1
  47. package/test/reuse/ui5/navigationBar/test.navigationBar.sauceLab.conf.js +1 -1
  48. package/test/reuse/ui5/session/logout.spec.js +1 -1
  49. package/test/reuse/ui5/userInteraction/click.spec.js +1 -1
  50. package/test/reuse/ui5/userInteraction/doubleClick.spec.js +1 -1
  51. package/test/reuse/ui5/userInteraction/fill.spec.js +4 -4
  52. package/test/reuse/ui5/userInteraction/fillAndRetry.spec.js +4 -4
  53. package/test/reuse/ui5/userInteraction/rightClick.spec.js +1 -1
  54. package/test/reuse/ui5/userInteraction/scrollToElement.spec.js +2 -2
  55. package/test/reuse/ui5/userInteraction/test.userInteraction.conf.js +2 -2
  56. package/test/reuse/ui5/userInteraction/test.userInteraction.sauceLab.conf.js +1 -1
  57. package/test/reuse/util/browser/getCurrentWindow.spec.js +2 -2
  58. package/test/reuse/util/browser/switchToWindow.spec.js +2 -2
  59. package/test/reuse/util/file/expectTextDataToContain.spec.js +14 -0
  60. package/test/reuse/util/file/getAttributeValuesFromJson.spec.js +37 -0
  61. package/test/reuse/util/file/getTextData.spec.js +39 -0
  62. package/test/reuse/util/file/getXmlData.spec.js +52 -0
  63. package/test/reuse/util/file/test.file.conf.js +6 -2
  64. package/test/reuse/util/file/testFiles/test1.json +169 -0
  65. package/test/reuse/util/file/testFiles/test1.xml +120 -0
  66. package/test/reuse/util/file/testFiles/test2.xml +122 -0
  67. package/test/reuse/util/file/testFiles/test3.txt +13 -0
  68. /package/test/reuse/util/file/{file.spec.js → upload.spec.js} +0 -0
package/docs/doc.md CHANGED
@@ -592,6 +592,12 @@ Global namespace for util modules.
592
592
  * [.parsePdf(pdfStream, renderingMethod)](#util.file.parsePdf) ⇒ <code>String</code>
593
593
  * [.expectPdfContainsText(pdfStream, text, renderingMethod)](#util.file.expectPdfContainsText)
594
594
  * [.expectPdfNotContainsText(pdfStream, text, renderingMethod)](#util.file.expectPdfNotContainsText)
595
+ * [.getExcelData(filePath, fileName, [sheetIndex], [conversionType])](#util.file.getExcelData)
596
+ * [.getTextData(filePath)](#util.file.getTextData)
597
+ * [.expectTextDataToContain(filePath)](#util.file.expectTextDataToContain)
598
+ * [.getXmlData(filePath)](#util.file.getXmlData)
599
+ * [.getAttributeValueFromJson(object)](#util.file.getAttributeValueFromJson)
600
+ * [.findFilePathRecursively(directory, fileName)](#util.file.findFilePathRecursively)
595
601
  * [.formatter](#util.formatter)
596
602
  * [.sliceStringAt(input, slicePoint, length)](#util.formatter.sliceStringAt) ⇒ <code>String</code>
597
603
  * [.sliceStringAfter(input, slicePoint, length)](#util.formatter.sliceStringAfter) ⇒ <code>String</code>
@@ -1183,6 +1189,12 @@ const decrypted = util.data.decrypt("d704004c262faa8ef4bdcf34c8a94883e15524872c7
1183
1189
  * [.parsePdf(pdfStream, renderingMethod)](#util.file.parsePdf) ⇒ <code>String</code>
1184
1190
  * [.expectPdfContainsText(pdfStream, text, renderingMethod)](#util.file.expectPdfContainsText)
1185
1191
  * [.expectPdfNotContainsText(pdfStream, text, renderingMethod)](#util.file.expectPdfNotContainsText)
1192
+ * [.getExcelData(filePath, fileName, [sheetIndex], [conversionType])](#util.file.getExcelData)
1193
+ * [.getTextData(filePath)](#util.file.getTextData)
1194
+ * [.expectTextDataToContain(filePath)](#util.file.expectTextDataToContain)
1195
+ * [.getXmlData(filePath)](#util.file.getXmlData)
1196
+ * [.getAttributeValueFromJson(object)](#util.file.getAttributeValueFromJson)
1197
+ * [.findFilePathRecursively(directory, fileName)](#util.file.findFilePathRecursively)
1186
1198
 
1187
1199
  <a name="util.file.upload"></a>
1188
1200
 
@@ -1274,6 +1286,102 @@ Parses the PDF and checks for given text not to be contained in PDF.
1274
1286
  ```js
1275
1287
  await util.file.expectPdfNotContainsText(pdfStream, "abc");
1276
1288
  ```
1289
+ <a name="util.file.getExcelData"></a>
1290
+
1291
+ #### file.getExcelData(filePath, fileName, [sheetIndex], [conversionType])
1292
+ - It returns the excel data based on the conversion type which is passed
1293
+
1294
+ **Kind**: static method of [<code>file</code>](#util.file)
1295
+
1296
+ | Param | Type | Description |
1297
+ | --- | --- | --- |
1298
+ | filePath | <code>string</code> | File path is required |
1299
+ | fileName | <code>string</code> | File Name is required |
1300
+ | [sheetIndex] | <code>number</code> | sheetIndex is required |
1301
+ | [conversionType] | <code>string</code> | Value for this are [json, csv, txt] |
1302
+
1303
+ **Example**
1304
+ ```js
1305
+ const myTableContent = await util.file.getExcelData("/Users/path/myWork", "myTable.xlx");
1306
+ ```
1307
+ <a name="util.file.getTextData"></a>
1308
+
1309
+ #### file.getTextData(filePath)
1310
+ - Returns the content of a .txt file.
1311
+
1312
+ **Kind**: static method of [<code>file</code>](#util.file)
1313
+
1314
+ | Param | Type | Description |
1315
+ | --- | --- | --- |
1316
+ | filePath | <code>string</code> | Path to the file. |
1317
+
1318
+ **Example**
1319
+ ```js
1320
+ const txtData = await util.file.getTextData(path.resolve(__dirname, "./testFiles/test3.txt"));
1321
+ const isDateIncluded = txtData.includes("26.6.2023");
1322
+ common.assertion.expectEqual(isDateIncluded, true);
1323
+ ```
1324
+ <a name="util.file.expectTextDataToContain"></a>
1325
+
1326
+ #### file.expectTextDataToContain(filePath)
1327
+ - Reads the specified .txt file and asserts if it includes a specific string.
1328
+
1329
+ **Kind**: static method of [<code>file</code>](#util.file)
1330
+
1331
+ | Param | Type | Description |
1332
+ | --- | --- | --- |
1333
+ | filePath | <code>string</code> | Path to the file. |
1334
+
1335
+ **Example**
1336
+ ```js
1337
+ await util.file.expectTextDataToContain("/Users/path/myWork", "supplierList.txt");
1338
+ ```
1339
+ <a name="util.file.getXmlData"></a>
1340
+
1341
+ #### file.getXmlData(filePath)
1342
+ - Returns the converted JSON object based on the passed XML file.
1343
+
1344
+ **Kind**: static method of [<code>file</code>](#util.file)
1345
+
1346
+ | Param | Type | Description |
1347
+ | --- | --- | --- |
1348
+ | filePath | <code>string</code> | Path to the file. |
1349
+
1350
+ **Example**
1351
+ ```js
1352
+ const xmlData = await util.file.getXmlData(path.resolve(__dirname, "./testFiles/test2.xml"));
1353
+ ```
1354
+ <a name="util.file.getAttributeValueFromJson"></a>
1355
+
1356
+ #### file.getAttributeValueFromJson(object)
1357
+ - Traverses the passed JSON object and returns the value of the passed attribute if found.
1358
+
1359
+ **Kind**: static method of [<code>file</code>](#util.file)
1360
+
1361
+ | Param | Type | Description |
1362
+ | --- | --- | --- |
1363
+ | object | <code>object</code> | The JSON Object to search through. |
1364
+
1365
+ **Example**
1366
+ ```js
1367
+ const attribute = util.file.getAttributeValueFromJson(xmlData, "CtrlSum");
1368
+ ```
1369
+ <a name="util.file.findFilePathRecursively"></a>
1370
+
1371
+ #### file.findFilePathRecursively(directory, fileName)
1372
+ - Returns the absolute path of the file with the given filename. Searches Recursively for the file within the given directory.
1373
+
1374
+ **Kind**: static method of [<code>file</code>](#util.file)
1375
+
1376
+ | Param | Type | Description |
1377
+ | --- | --- | --- |
1378
+ | directory | <code>string</code> | The name of the directory. |
1379
+ | fileName | <code>string</code> | The name of the file. |
1380
+
1381
+ **Example**
1382
+ ```js
1383
+ await util.file.findFilePathRecursively("/Users","test.xls");
1384
+ ```
1277
1385
  <a name="util.formatter"></a>
1278
1386
 
1279
1387
  ### util.formatter
@@ -68,6 +68,40 @@ export declare class File {
68
68
  * @example const myTableContent = await util.file.getExcelData("/Users/path/myWork", "myTable.xlx");
69
69
  */
70
70
  getExcelData(filePath: string, fileName: string, sheetIndex?: number, conversionType?: string): Promise<any>;
71
+ /**
72
+ * @function getTextData
73
+ * @memberof util.file
74
+ * @description - Returns the content of a .txt file.
75
+ * @param {string} filePath - Path to the file.
76
+ * @example const txtData = await util.file.getTextData(path.resolve(__dirname, "./testFiles/test3.txt"));
77
+ * const isDateIncluded = txtData.includes("26.6.2023");
78
+ * common.assertion.expectEqual(isDateIncluded, true);
79
+ */
80
+ getTextData(filePath: string): Promise<any>;
81
+ /**
82
+ * @function expectTextDataToContain
83
+ * @memberof util.file
84
+ * @description - Reads the specified .txt file and asserts if it includes a specific string.
85
+ * @param {string} filePath - Path to the file.
86
+ * @example await util.file.expectTextDataToContain("/Users/path/myWork", "supplierList.txt");
87
+ */
88
+ expectTextDataToContain(filePath: string, searchString: string): Promise<any>;
89
+ /**
90
+ * @function getXmlData
91
+ * @memberof util.file
92
+ * @description - Returns the converted JSON object based on the passed XML file.
93
+ * @param {string} filePath - Path to the file.
94
+ * @example const xmlData = await util.file.getXmlData(path.resolve(__dirname, "./testFiles/test2.xml"));
95
+ */
96
+ getXmlData(filePath: string): Promise<any>;
97
+ /**
98
+ * @function getAttributeValuesFromJson
99
+ * @memberof util.file
100
+ * @description - Traverses the passed JSON object and returns the value/s of the passed attribute if found. Else returns empty Array.
101
+ * @param {object} object - The JSON Object to search through.
102
+ * @example const attribute = util.file.getAttributeValuesFromJson(xmlData, "CtrlSum");
103
+ */
104
+ getAttributeValuesFromJson(object: any, attributeName: string): any[];
71
105
  /**
72
106
  * @function findFilePathRecursively
73
107
  * @memberof util.file
@@ -79,6 +113,7 @@ export declare class File {
79
113
  findFilePathRecursively(directory: string, fileName: string): Promise<any>;
80
114
  private _renderPage;
81
115
  private _convertSheet;
116
+ private _checkFileEnding;
82
117
  }
83
118
  declare const _default: File;
84
119
  export default _default;
@@ -33,6 +33,7 @@ const pdf_parse_1 = __importDefault(require("pdf-parse"));
33
33
  const fs = __importStar(require("fs"));
34
34
  const xlsx = __importStar(require("xlsx"));
35
35
  const os = __importStar(require("os"));
36
+ const xml2js = __importStar(require("xml2js"));
36
37
  /**
37
38
  * @class file
38
39
  * @memberof util
@@ -193,6 +194,89 @@ class File {
193
194
  const sheet = workbook.Sheets[sheetName];
194
195
  return this._convertSheet(conversionType, sheet);
195
196
  }
197
+ // =================================== TXT ===================================
198
+ /**
199
+ * @function getTextData
200
+ * @memberof util.file
201
+ * @description - Returns the content of a .txt file.
202
+ * @param {string} filePath - Path to the file.
203
+ * @example const txtData = await util.file.getTextData(path.resolve(__dirname, "./testFiles/test3.txt"));
204
+ * const isDateIncluded = txtData.includes("26.6.2023");
205
+ * common.assertion.expectEqual(isDateIncluded, true);
206
+ */
207
+ async getTextData(filePath) {
208
+ const vl = this.vlf.initLog(this.getTextData);
209
+ if (fs.existsSync(filePath) && this._checkFileEnding(filePath, "txt")) {
210
+ try {
211
+ return await fs.readFileSync(filePath, { encoding: "utf8" });
212
+ }
213
+ catch (error) {
214
+ throw new Error(`Function: 'getTextData' failed: ${error}`);
215
+ }
216
+ }
217
+ }
218
+ /**
219
+ * @function expectTextDataToContain
220
+ * @memberof util.file
221
+ * @description - Reads the specified .txt file and asserts if it includes a specific string.
222
+ * @param {string} filePath - Path to the file.
223
+ * @example await util.file.expectTextDataToContain("/Users/path/myWork", "supplierList.txt");
224
+ */
225
+ async expectTextDataToContain(filePath, searchString) {
226
+ const vl = this.vlf.initLog(this.expectTextDataToContain);
227
+ if (fs.existsSync(filePath)) {
228
+ try {
229
+ const fileContent = fs.readFileSync(filePath, "utf-8");
230
+ common.assertion.expectTrue(fileContent.includes(searchString));
231
+ }
232
+ catch (error) {
233
+ throw new Error("Function 'expectTextDataToContain' failed: Search String not included in .txt file.");
234
+ }
235
+ }
236
+ }
237
+ // =================================== XML ===================================
238
+ /**
239
+ * @function getXmlData
240
+ * @memberof util.file
241
+ * @description - Returns the converted JSON object based on the passed XML file.
242
+ * @param {string} filePath - Path to the file.
243
+ * @example const xmlData = await util.file.getXmlData(path.resolve(__dirname, "./testFiles/test2.xml"));
244
+ */
245
+ async getXmlData(filePath) {
246
+ const vl = this.vlf.initLog(this.getXmlData);
247
+ if (fs.existsSync(filePath) && this._checkFileEnding(filePath, "xml")) {
248
+ try {
249
+ const xmlData = await fs.readFileSync(filePath);
250
+ const parser = new xml2js.Parser({ trim: true, normalize: true });
251
+ return await parser.parseStringPromise(xmlData);
252
+ }
253
+ catch (error) {
254
+ throw new Error(`Function: 'getXmlData' failed: ${error}`);
255
+ }
256
+ }
257
+ }
258
+ // =================================== JSON ===================================
259
+ /**
260
+ * @function getAttributeValuesFromJson
261
+ * @memberof util.file
262
+ * @description - Traverses the passed JSON object and returns the value/s of the passed attribute if found. Else returns empty Array.
263
+ * @param {object} object - The JSON Object to search through.
264
+ * @example const attribute = util.file.getAttributeValuesFromJson(xmlData, "CtrlSum");
265
+ */
266
+ getAttributeValuesFromJson(object, attributeName) {
267
+ const values = [];
268
+ if (typeof object !== "object" || object === null) {
269
+ return values;
270
+ }
271
+ if (attributeName in object) {
272
+ values.push(object[attributeName]);
273
+ }
274
+ for (const key in object) {
275
+ const nestedValues = this.getAttributeValuesFromJson(object[key], attributeName);
276
+ values.push(...nestedValues);
277
+ }
278
+ return values.flat();
279
+ }
196
280
  // =================================== FILEPATH ===================================
197
281
  /**
198
282
  * @function findFilePathRecursively
@@ -274,6 +358,16 @@ class File {
274
358
  }
275
359
  return excelData;
276
360
  }
361
+ _checkFileEnding(filePath, expectedFileEnding) {
362
+ const vl = this.vlf.initLog(this._checkFileEnding);
363
+ const fileEnding = path.extname(filePath).slice(1);
364
+ if (fileEnding.toLowerCase() === expectedFileEnding.toLowerCase()) {
365
+ return true;
366
+ }
367
+ else {
368
+ throw new Error(`Function 'checkFileEnding' failed: Wrong file format '${fileEnding}' was passed to function. Expected file format: ${expectedFileEnding}.`);
369
+ }
370
+ }
277
371
  }
278
372
  exports.File = File;
279
373
  exports.default = new File();
@@ -1 +1 @@
1
- {"version":3,"file":"file.js","sourceRoot":"","sources":["../../../../src/reuse/modules/util/file.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"file.js","sourceRoot":"","sources":["../../../../src/reuse/modules/util/file.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sap_oss/wdio-qmate-service",
3
- "version": "2.4.1",
3
+ "version": "2.4.2",
4
4
  "author": "SAP SE",
5
5
  "types": "./@types/index.d.ts",
6
6
  "main": "./lib/index.js",
@@ -136,11 +136,13 @@
136
136
  "query-string": "^7.1.0",
137
137
  "supertest": "^6.1.6",
138
138
  "xlsx": "^0.18.5",
139
+ "xml2js": "^0.6.0",
139
140
  "yargs": "^17.1.1"
140
141
  },
141
142
  "devDependencies": {
142
143
  "@types/fs-extra": "^11.0.1",
143
144
  "@types/pdf-parse": "^1.1.1",
145
+ "@types/xml2js": "^0.4.11",
144
146
  "@wdio/cli": "^8.6.9",
145
147
  "@wdio/local-runner": "^8.6.9",
146
148
  "@wdio/mocha-framework": "^8.6.8",
@@ -27,5 +27,5 @@ exports.config = merge(profile.config, {
27
27
  // with `/`, the base url gets prepended, not including the path portion of your baseUrl.
28
28
  // If your `url` parameter starts without a scheme or `/` (like `some/path`), the base url
29
29
  // gets prepended directly.
30
- baseUrl: "https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html"
30
+ baseUrl: "https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html?sap-ui-theme=sap_fiori_3"
31
31
  });
@@ -34,5 +34,5 @@ exports.config = merge(profile.config, {
34
34
  // with `/`, the base url gets prepended, not including the path portion of your baseUrl.
35
35
  // If your `url` parameter starts without a scheme or `/` (like `some/path`), the base url
36
36
  // gets prepended directly.
37
- baseUrl: "https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html"
37
+ baseUrl: "https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html?sap-ui-theme=sap_fiori_3"
38
38
  });
@@ -42,7 +42,7 @@ describe("Test for ", function () {
42
42
  });
43
43
 
44
44
  it("should use UI5 Control binding properties command on element level", async function () {
45
- await browser.navigateTo("https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html#/categories");
45
+ await browser.navigateTo("https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html?sap-ui-theme=sap_fiori_3#/categories");
46
46
  const ui5ControlProperties = {
47
47
  "elementProperties": {
48
48
  "metadata": "sap.m.StandardListItem", "mProperties": {
@@ -27,5 +27,5 @@ exports.config = merge(profile.config, {
27
27
  // with `/`, the base url gets prepended, not including the path portion of your baseUrl.
28
28
  // If your `url` parameter starts without a scheme or `/` (like `some/path`), the base url
29
29
  // gets prepended directly.
30
- baseUrl: "https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html"
30
+ baseUrl: "https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html?sap-ui-theme=sap_fiori_3"
31
31
  });
@@ -28,5 +28,5 @@ exports.config = merge(profile.config, {
28
28
  // with `/`, the base url gets prepended, not including the path portion of your baseUrl.
29
29
  // If your `url` parameter starts without a scheme or `/` (like `some/path`), the base url
30
30
  // gets prepended directly.
31
- baseUrl: "https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html"
31
+ baseUrl: "https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html?sap-ui-theme=sap_fiori_3"
32
32
  });
@@ -50,7 +50,7 @@ describe("Test 'getAllUI5Aggregations()' and 'getUI5Aggregation()' on both eleme
50
50
  });
51
51
 
52
52
  it("should get List Item aggregations on both element and browser levels and access tooltip aggregation", async function () {
53
- await browser.navigateTo("https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html#/categories");
53
+ await browser.navigateTo("https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html?sap-ui-theme=sap_fiori_3#/categories");
54
54
 
55
55
  const listElementProperties = {
56
56
  "elementProperties": {
@@ -75,7 +75,7 @@ describe("Test 'getAllUI5Aggregations()' and 'getUI5Aggregation()' on both eleme
75
75
  });
76
76
 
77
77
  it("should try to access non-existing/empty aggregation(s)", async function () {
78
- await browser.navigateTo("https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html#/categories");
78
+ await browser.navigateTo("https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html?sap-ui-theme=sap_fiori_3#/categories");
79
79
  const listElementProperties = {
80
80
  "elementProperties": {
81
81
  "metadata": "sap.m.StandardListItem", "mProperties": {
@@ -12,5 +12,5 @@ exports.config = merge(profile.config, {
12
12
  path.resolve(__dirname, "getBindingInfos.test.js")
13
13
  ],
14
14
 
15
- baseUrl: "https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html"
15
+ baseUrl: "https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html?sap-ui-theme=sap_fiori_3"
16
16
  });
@@ -27,5 +27,5 @@ exports.config = merge(profile.config, {
27
27
  // with `/`, the base url gets prepended, not including the path portion of your baseUrl.
28
28
  // If your `url` parameter starts without a scheme or `/` (like `some/path`), the base url
29
29
  // gets prepended directly.
30
- baseUrl: "https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html"
30
+ baseUrl: "https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html?sap-ui-theme=sap_fiori_3"
31
31
  });
@@ -3,7 +3,7 @@ var path = require("path");
3
3
  var qmateConf = require("../../helper/configurations/chrome.headless.conf");
4
4
  // have main config file as default but overwrite environment specific information
5
5
  exports.config = merge(qmateConf.config, {
6
- baseUrl: "https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html",
6
+ baseUrl: "https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html?sap-ui-theme=sap_fiori_3",
7
7
 
8
8
  suites: {
9
9
  testLearn:[path.resolve(__dirname, "./filters1.spec.js")]
@@ -6,7 +6,7 @@ exports.config = merge(profile.config, {
6
6
  maxInstances: 6,
7
7
  specFileRetries: 2,
8
8
 
9
- baseUrl: "https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html",
9
+ baseUrl: "https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html?sap-ui-theme=sap_fiori_3",
10
10
 
11
11
  specs: [
12
12
  path.resolve(__dirname, "expectDefined.spec.js"),
@@ -14,7 +14,7 @@ describe("userInteraction - fillActive", function () {
14
14
  };
15
15
 
16
16
  it("Preparation", async function () {
17
- await browser.navigateTo("https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html");
17
+ await browser.navigateTo("https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html?sap-ui-theme=sap_fiori_3");
18
18
  await handleCookiesConsent();
19
19
  });
20
20
 
@@ -35,7 +35,7 @@ describe("userInteraction - fillActive", function () {
35
35
  describe("userInteraction - fillActive - element with invalid selector", function () {
36
36
 
37
37
  it("Preparation", async function () {
38
- await browser.navigateTo("https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html");
38
+ await browser.navigateTo("https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html?sap-ui-theme=sap_fiori_3");
39
39
  await handleCookiesConsent();
40
40
  });
41
41
 
@@ -57,7 +57,7 @@ describe("userInteraction - fillActive - element with number", function () {
57
57
  let actualValue;
58
58
 
59
59
  it("Preparation", async function () {
60
- await browser.navigateTo("https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html");
60
+ await browser.navigateTo("https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html?sap-ui-theme=sap_fiori_3");
61
61
  await handleCookiesConsent();
62
62
  });
63
63
 
@@ -87,7 +87,7 @@ describe("userInteraction - fillActive - element with empty value", function ()
87
87
  let value;
88
88
 
89
89
  it("Preparation", async function () {
90
- await browser.navigateTo("https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html");
90
+ await browser.navigateTo("https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html?sap-ui-theme=sap_fiori_3");
91
91
  await handleCookiesConsent();
92
92
  });
93
93
 
@@ -8,7 +8,7 @@ describe("userInteraction - fillActiveAndRetry", function () {
8
8
  let actualValue;
9
9
 
10
10
  it("Preparation", async function () {
11
- await browser.navigateTo("https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html");
11
+ await browser.navigateTo("https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html?sap-ui-theme=sap_fiori_3");
12
12
  await handleCookiesConsent();
13
13
  });
14
14
 
@@ -39,7 +39,7 @@ describe("userInteraction - fillActiveAndRetry", function () {
39
39
  describe("userInteraction - fillActiveAndRetry - invalid selector", function () {
40
40
 
41
41
  it("Preparation", async function () {
42
- await browser.navigateTo("https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html");
42
+ await browser.navigateTo("https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html?sap-ui-theme=sap_fiori_3");
43
43
  await handleCookiesConsent();
44
44
  });
45
45
 
@@ -62,7 +62,7 @@ describe("userInteraction - fillActiveAndRetry - element with number", function
62
62
  let actualValue;
63
63
 
64
64
  it("Preparation", async function () {
65
- await browser.navigateTo("https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html");
65
+ await browser.navigateTo("https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html?sap-ui-theme=sap_fiori_3");
66
66
  await handleCookiesConsent();
67
67
  });
68
68
 
@@ -94,7 +94,7 @@ describe("userInteraction - fillActiveAndRetry - empty value", function () {
94
94
  let value;
95
95
 
96
96
  it("Preparation", async function () {
97
- await browser.navigateTo("https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html");
97
+ await browser.navigateTo("https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html?sap-ui-theme=sap_fiori_3");
98
98
  await handleCookiesConsent();
99
99
  });
100
100
 
@@ -3,7 +3,7 @@ const { handleCookiesConsent } = require("../../../helper/utils");
3
3
 
4
4
  describe("assertion - expectValueToBe", function () {
5
5
  it("Preparation", async function () {
6
- await common.navigation.navigateToUrl("https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html#/categories");
6
+ await common.navigation.navigateToUrl("https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html?sap-ui-theme=sap_fiori_3#/categories");
7
7
  await handleCookiesConsent();
8
8
  });
9
9
 
@@ -15,7 +15,7 @@ describe("assertion - expectValueToBe", function () {
15
15
 
16
16
  describe("assertion - expectValueToBe - error case", function () {
17
17
  it("Preparation", async function () {
18
- await common.navigation.navigateToUrl("https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html#/categories");
18
+ await common.navigation.navigateToUrl("https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html?sap-ui-theme=sap_fiori_3#/categories");
19
19
  });
20
20
 
21
21
  it("Execution & Verification", async function () {
@@ -6,7 +6,7 @@ exports.config = merge(profile.config, {
6
6
  maxInstances: 6,
7
7
  specFileRetries: 2,
8
8
 
9
- baseUrl: "https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html",
9
+ baseUrl: "https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html?sap-ui-theme=sap_fiori_3",
10
10
 
11
11
  specs: [
12
12
  path.resolve(__dirname, "expectToBeVisible.spec.js"),
@@ -8,7 +8,7 @@ exports.config = merge(profile.config, {
8
8
 
9
9
  maxInstances: 5,
10
10
  bail: 1,
11
- baseUrl: "https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html",
11
+ baseUrl: "https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html?sap-ui-theme=sap_fiori_3",
12
12
 
13
13
  specs: [
14
14
  path.resolve(__dirname, "expectToBeVisible.spec.js"),
@@ -9,7 +9,7 @@ describe("element - getAttributeValue - inner HTML", function () {
9
9
  let valueAct;
10
10
 
11
11
  it("Preparation", async function () {
12
- await common.navigation.navigateToUrl("https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html#/categories");
12
+ await common.navigation.navigateToUrl("https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html?sap-ui-theme=sap_fiori_3#/categories");
13
13
  await handleCookiesConsent();
14
14
  });
15
15
 
@@ -30,7 +30,7 @@ describe("element - getAttributeValue - with attribute", function () {
30
30
  let valueAct;
31
31
 
32
32
  it("Preparation", async function () {
33
- await common.navigation.navigateToUrl("https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html#/categories");
33
+ await common.navigation.navigateToUrl("https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html?sap-ui-theme=sap_fiori_3#/categories");
34
34
  await handleCookiesConsent();
35
35
  });
36
36
 
@@ -48,7 +48,7 @@ describe("element - getAttributeValue - with attribute", function () {
48
48
  describe("element - getAttributeValue - error", function () {
49
49
 
50
50
  it("Preparation", async function () {
51
- await common.navigation.navigateToUrl("https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html#/categories");
51
+ await common.navigation.navigateToUrl("https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html?sap-ui-theme=sap_fiori_3#/categories");
52
52
  });
53
53
 
54
54
  it("Execution & Verification", async function () {
@@ -7,7 +7,7 @@ describe("element - getByChild", function () {
7
7
  let elemAct;
8
8
 
9
9
  it("Preparation", async function () {
10
- await common.navigation.navigateToUrl("https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html#/categories");
10
+ await common.navigation.navigateToUrl("https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html?sap-ui-theme=sap_fiori_3#/categories");
11
11
  await handleCookiesConsent();
12
12
  });
13
13
 
@@ -45,7 +45,7 @@ describe("element - getByChild - with index", function () {
45
45
 
46
46
  describe("element - getByChild - error case with wrong element", function () {
47
47
  it("Preparation", async function () {
48
- await common.navigation.navigateToUrl("https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html#/categories");
48
+ await common.navigation.navigateToUrl("https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html?sap-ui-theme=sap_fiori_3#/categories");
49
49
  });
50
50
 
51
51
  it("Execution & Verification", async function () {
@@ -58,7 +58,7 @@ describe("element - getByChild - error case with wrong element", function () {
58
58
 
59
59
  describe("element - getByChild - error case with wrong order of parent and child", function () {
60
60
  it("Preparation", async function () {
61
- await common.navigation.navigateToUrl("https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html#/categories");
61
+ await common.navigation.navigateToUrl("https://sapui5.hana.ondemand.com/1.99.0/test-resources/sap/m/demokit/cart/webapp/index.html?sap-ui-theme=sap_fiori_3#/categories");
62
62
  });
63
63
 
64
64
  it("Execution & Verification", async function () {