@sap_oss/wdio-qmate-service 1.3.0 → 1.3.1

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.
@@ -57,7 +57,8 @@ class NavigationBar {
57
57
  async clickUserIcon(timeout = process.env.QMATE_CUSTOM_TIMEOUT || 30000) {
58
58
  const selector = {
59
59
  "elementProperties": {
60
- "id": "meAreaHeaderButton"
60
+ "metadata": "sap.m.Avatar",
61
+ "id": "*HeaderButton"
61
62
  }
62
63
  };
63
64
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"navigationBar.js","sourceRoot":"","sources":["../../../../src/reuse/modules/ui5/navigationBar.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;AAEb;;;GAGG;AACH,MAAa,aAAa;IAExB;;;;;;OAMG;IACH,KAAK,CAAC,SAAS,CAAC,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,KAAK;QACjE,MAAM,QAAQ,GAAG;YACf,mBAAmB,EAAE;gBACnB,UAAU,EAAE,mCAAmC;gBAC/C,IAAI,EAAE,SAAS;aAChB;SACF,CAAC;QACF,IAAI;YACF,MAAM,GAAG,CAAC,eAAe,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;SACvD;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,IAAI,KAAK,CAAC,gCAAgC,KAAK,EAAE,CAAC,CAAC;SAC1D;IACH,CAAC;IAAA,CAAC;IAEF;;;;;;OAMG;IACH,KAAK,CAAC,YAAY,CAAC,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,KAAK;QACpE,MAAM,QAAQ,GAAG;YACf,IAAI,EAAE,mBAAmB;SAC1B,CAAC;QACF,IAAI;YACF,MAAM,GAAG,CAAC,eAAe,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;SACvD;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,IAAI,KAAK,CAAC,mCAAmC,KAAK,EAAE,CAAC,CAAC;SAC7D;IACH,CAAC;IAAA,CAAC;IAEF;;;;;;OAMG;IACH,KAAK,CAAC,aAAa,CAAC,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,KAAK;QACrE,MAAM,QAAQ,GAAG;YACf,mBAAmB,EAAE;gBACnB,IAAI,EAAE,oBAAoB;aAC3B;SACF,CAAC;QACF,IAAI;YACF,MAAM,GAAG,CAAC,eAAe,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;SACvD;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,IAAI,KAAK,CAAC,oCAAoC,KAAK,EAAE,CAAC,CAAC;SAC9D;IACH,CAAC;IAAA,CAAC;IAGF,oFAAoF;IACpF;;;;;;OAMG;IACH,KAAK,CAAC,eAAe,CAAC,YAAoB;QACxC,MAAM,QAAQ,GAAG;YACf,mBAAmB,EAAE;gBACnB,UAAU,EAAE,mCAAmC;gBAC/C,aAAa,EAAE;oBACb,MAAM,EAAE,YAAY;iBACrB;aACF;SACF,CAAC;QACF,IAAI;YACF,MAAM,GAAG,CAAC,SAAS,CAAC,2BAA2B,CAAC,QAAQ,CAAC,CAAC;SAC3D;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,IAAI,KAAK,CAAC,sCAAsC,KAAK,EAAE,CAAC,CAAC;SAChE;IACH,CAAC;IAAA,CAAC;IAEF;;;;;;OAMG;IACH,KAAK,CAAC,iBAAiB,CAAC,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,GAAG,CAAC,qBAAqB,IAAI,KAAK;QAC3I,MAAM,QAAQ,GAAG;YACf,mBAAmB,EAAE;gBACnB,UAAU,EAAE,2BAA2B;gBACvC,IAAI,EAAE,cAAc;aACrB;SACF,CAAC;QACF,IAAI;YACF,MAAM,GAAG,CAAC,SAAS,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CAAC,EAAE,OAAO,EAAE,mBAAmB,CAAC,CAAC;SAClF;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,IAAI,KAAK,CAAC,sCAAsC,KAAK,EAAE,CAAC,CAAC;SAChE;IACH,CAAC;IAAA,CAAC;CAEH;AA3GD,sCA2GC;AAAA,CAAC;AACF,kBAAe,IAAI,aAAa,EAAE,CAAC"}
1
+ {"version":3,"file":"navigationBar.js","sourceRoot":"","sources":["../../../../src/reuse/modules/ui5/navigationBar.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;AAEb;;;GAGG;AACH,MAAa,aAAa;IAExB;;;;;;OAMG;IACH,KAAK,CAAC,SAAS,CAAC,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,KAAK;QACjE,MAAM,QAAQ,GAAG;YACf,mBAAmB,EAAE;gBACnB,UAAU,EAAE,mCAAmC;gBAC/C,IAAI,EAAE,SAAS;aAChB;SACF,CAAC;QACF,IAAI;YACF,MAAM,GAAG,CAAC,eAAe,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;SACvD;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,IAAI,KAAK,CAAC,gCAAgC,KAAK,EAAE,CAAC,CAAC;SAC1D;IACH,CAAC;IAAA,CAAC;IAEF;;;;;;OAMG;IACH,KAAK,CAAC,YAAY,CAAC,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,KAAK;QACpE,MAAM,QAAQ,GAAG;YACf,IAAI,EAAE,mBAAmB;SAC1B,CAAC;QACF,IAAI;YACF,MAAM,GAAG,CAAC,eAAe,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;SACvD;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,IAAI,KAAK,CAAC,mCAAmC,KAAK,EAAE,CAAC,CAAC;SAC7D;IACH,CAAC;IAAA,CAAC;IAEF;;;;;;OAMG;IACH,KAAK,CAAC,aAAa,CAAC,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,KAAK;QACrE,MAAM,QAAQ,GAAG;YACf,mBAAmB,EAAE;gBACnB,UAAU,EAAE,cAAc;gBAC1B,IAAI,EAAE,eAAe;aACtB;SACF,CAAC;QACF,IAAI;YACF,MAAM,GAAG,CAAC,eAAe,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;SACvD;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,IAAI,KAAK,CAAC,oCAAoC,KAAK,EAAE,CAAC,CAAC;SAC9D;IACH,CAAC;IAAA,CAAC;IAGF,oFAAoF;IACpF;;;;;;OAMG;IACH,KAAK,CAAC,eAAe,CAAC,YAAoB;QACxC,MAAM,QAAQ,GAAG;YACf,mBAAmB,EAAE;gBACnB,UAAU,EAAE,mCAAmC;gBAC/C,aAAa,EAAE;oBACb,MAAM,EAAE,YAAY;iBACrB;aACF;SACF,CAAC;QACF,IAAI;YACF,MAAM,GAAG,CAAC,SAAS,CAAC,2BAA2B,CAAC,QAAQ,CAAC,CAAC;SAC3D;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,IAAI,KAAK,CAAC,sCAAsC,KAAK,EAAE,CAAC,CAAC;SAChE;IACH,CAAC;IAAA,CAAC;IAEF;;;;;;OAMG;IACH,KAAK,CAAC,iBAAiB,CAAC,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,GAAG,CAAC,qBAAqB,IAAI,KAAK;QAC3I,MAAM,QAAQ,GAAG;YACf,mBAAmB,EAAE;gBACnB,UAAU,EAAE,2BAA2B;gBACvC,IAAI,EAAE,cAAc;aACrB;SACF,CAAC;QACF,IAAI;YACF,MAAM,GAAG,CAAC,SAAS,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CAAC,EAAE,OAAO,EAAE,mBAAmB,CAAC,CAAC;SAClF;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,IAAI,KAAK,CAAC,sCAAsC,KAAK,EAAE,CAAC,CAAC;SAChE;IACH,CAAC;IAAA,CAAC;CAEH;AA5GD,sCA4GC;AAAA,CAAC;AACF,kBAAe,IAAI,aAAa,EAAE,CAAC"}
@@ -24,7 +24,7 @@ class Table {
24
24
  * await ui5.table.sortColumnAscending("Amount", glAccountItemsTable);
25
25
  */
26
26
  async sortColumnAscending(columnName, tableSelector) {
27
- const sortButtonSelector = {
27
+ const oldSortButtonSelector = {
28
28
  "elementProperties": {
29
29
  "metadata": "sap.m.Button",
30
30
  "icon": "sap-icon://sort-ascending"
@@ -33,10 +33,16 @@ class Table {
33
33
  "metadata": "sap.m.Toolbar"
34
34
  }
35
35
  };
36
+ const newSortButtonSelector = {
37
+ "elementProperties": {
38
+ "metadata": "sap.m.ToggleButton",
39
+ "text": "Ascending"
40
+ }
41
+ };
36
42
  const sort = await this._getSortIndicatorValue(columnName, tableSelector);
37
43
  if (sort !== "Ascending") {
38
44
  this._clickColumn(columnName, tableSelector);
39
- await ui5.userInteraction.click(sortButtonSelector);
45
+ await Promise.any([ui5.userInteraction.click(oldSortButtonSelector), ui5.userInteraction.click(newSortButtonSelector)]);
40
46
  }
41
47
  }
42
48
  ;
@@ -57,7 +63,7 @@ class Table {
57
63
  * await ui5.table.sortColumnDescending("Amount", glAccountItemsTable);
58
64
  */
59
65
  async sortColumnDescending(columnName, tableSelector) {
60
- const sortButtonSelector = {
66
+ const oldSortButtonSelector = {
61
67
  "elementProperties": {
62
68
  "metadata": "sap.m.Button",
63
69
  "icon": "sap-icon://sort-descending"
@@ -66,10 +72,16 @@ class Table {
66
72
  "metadata": "sap.m.Toolbar"
67
73
  }
68
74
  };
75
+ const newSortButtonSelector = {
76
+ "elementProperties": {
77
+ "metadata": "sap.m.ToggleButton",
78
+ "text": "Descending"
79
+ }
80
+ };
69
81
  const sort = await this._getSortIndicatorValue(columnName, tableSelector);
70
82
  if (sort !== "Descending") {
71
83
  this._clickColumn(columnName, tableSelector);
72
- await ui5.userInteraction.click(sortButtonSelector);
84
+ await Promise.any([ui5.userInteraction.click(oldSortButtonSelector), ui5.userInteraction.click(newSortButtonSelector)]);
73
85
  }
74
86
  }
75
87
  ;
@@ -1 +1 @@
1
- {"version":3,"file":"table.js","sourceRoot":"","sources":["../../../../src/reuse/modules/ui5/table.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"table.js","sourceRoot":"","sources":["../../../../src/reuse/modules/ui5/table.ts"],"names":[],"mappings":"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"}
@@ -25,14 +25,6 @@ class File {
25
25
  try {
26
26
  if (typeof selector === "string") {
27
27
  elem = await $(selector);
28
- const isDisplayed = await elem.isDisplayed();
29
- if (!isDisplayed) {
30
- await browser.execute(function (selector) {
31
- // @ts-ignore
32
- document.querySelector(selector).style.visibility = "visible";
33
- }, selector);
34
- await elem.waitForDisplayed();
35
- }
36
28
  }
37
29
  else if (typeof selector === "object") {
38
30
  const elemId = await ui5.element.getId(selector);
@@ -41,7 +33,7 @@ class File {
41
33
  for (const file of files) {
42
34
  const filePath = this.path.resolve(file);
43
35
  const remoteFilePath = await browser.uploadFile(filePath);
44
- await elem.setValue(remoteFilePath);
36
+ await elem.addValue(remoteFilePath);
45
37
  }
46
38
  }
47
39
  catch (error) {
@@ -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":"AAAA,YAAY,CAAC;;;AACb;;;GAGG;AAEH,MAAa,IAAI;IAAjB;QACE,SAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;QACvB,QAAG,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAmI7B,CAAC;IAjIC,iFAAiF;IACjF;;;;;;;;OAQG;IACH,KAAK,CAAC,MAAM,CAAC,KAAoB,EAAE,WAAmB,sBAAsB;QAC1E,IAAI,IAAI,CAAC;QAET,IAAI;YACF,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE;gBAChC,IAAI,GAAG,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC;aAC1B;iBAAM,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE;gBACvC,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;gBACjD,IAAI,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,0BAA0B,MAAM,mBAAmB,CAAC,CAAC;aAC7F;YAED,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;gBACxB,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;gBACzC,MAAM,cAAc,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;gBAC1D,MAAM,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;aACrC;SAEF;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,IAAI,KAAK,CAAC,8BAA8B,KAAK,EAAE,CAAC,CAAC;SACxD;IACH,CAAC;IAAA,CAAC;IAEF,8EAA8E;IAC9E;;;;;;;;;OASG;IACH,KAAK,CAAC,QAAQ,CAAC,SAAiB,EAAE,kBAA4B,IAAI,CAAC,WAAW;QAC5E,IAAI,OAAO,eAAe,KAAK,UAAU,EAAE;YACzC,MAAM,IAAI,KAAK,CAAC,2FAA2F,CAAC,CAAC;SAC9G;QAED,MAAM,OAAO,GAAG;YACd,UAAU,EAAE,eAAe;SAC5B,CAAC;QACF,aAAa;QACb,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAChD,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,qBAAqB,CAAC,SAAiB,EAAE,IAAY,EAAE,kBAA4B,IAAI,CAAC,WAAW;QACvG,IAAI,CAAC,IAAI,EAAE;YACT,MAAM,IAAI,KAAK,CAAC,qFAAqF,CAAC,CAAC;SACxG;QACD,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;QACnE,OAAO,MAAM,CAAC,UAAU,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAC5C,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,wBAAwB,CAC5B,SAAiB,EACjB,IAAY,EACZ,kBAA4B,IAAI,CAAC,WAAW;QAE5C,IAAI,CAAC,IAAI,EAAE;YACT,MAAM,IAAI,KAAK,CAAC,wFAAwF,CAAC,CAAC;SAC3G;QACD,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;QACnE,OAAO,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAChD,CAAC;IAED,iFAAiF;IACzE,KAAK,CAAC,WAAW,CAAC,QAAa;QAErC,2EAA2E;QAC3E,MAAM,UAAU,GAAG,UAAU,WAAgB;YAC3C,IAAI,WAAW,KAAK,SAAS,IAAI,WAAW,KAAK,IAAI,IAAI,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE;gBAChH,OAAO;aACR;YACD,IAAI,KAAK,EACP,IAAI,GAAG,EAAE,CAAC;YACZ,KAAK,MAAM,IAAI,IAAI,WAAW,CAAC,KAAK,EAAE;gBACpC,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE;oBAChE,IAAI,KAAK,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE;wBACxC,IAAI,IAAI,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;qBACxB;yBAAM;wBACL,IAAI,IAAI,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC;qBACzB;oBACD,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;iBAC3B;aACF;YACD,OAAO,IAAI,CAAC;QACd,CAAC,CAAA;QAED,MAAM,cAAc,GAAG;YACrB,oGAAoG;YACpG,mBAAmB,EAAE,KAAK;YAC1B,gFAAgF;YAChF,uBAAuB,EAAE,KAAK;SAC/B,CAAC;QACF,OAAO,QAAQ,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAClE,CAAC;CAGF;AArID,oBAqIC;AACD,kBAAe,IAAI,IAAI,EAAE,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sap_oss/wdio-qmate-service",
3
- "version": "1.3.0",
3
+ "version": "1.3.1",
4
4
  "author": "SAP SE",
5
5
  "types": "./@types/index.d.ts",
6
6
  "main": "./lib/index.js",
@@ -87,11 +87,12 @@
87
87
  "test:reuse:ui5:pt2": "npm run test:reuse:ui5:navigationBar && npm run test:reuse:ui5:table && npm run test:reuse:ui5:userInteraction",
88
88
  "test:reuse:util:browser": "npx wdio ./test/reuse/util/browser/test.browser.conf.js",
89
89
  "test:reuse:util:data": "npx wdio ./test/reuse/util/data/test.data.conf.js",
90
+ "test:reuse:util:component": "npx wdio ./test/reuse/util/component/test.component.conf.js",
90
91
  "test:reuse:util:file": "npx wdio ./test/reuse/util/file/test.file.conf.js",
91
92
  "test:reuse:util:console": "npx wdio ./test/reuse/util/console/test.console.conf.js",
92
93
  "test:reuse:util:system": "npx wdio ./test/reuse/util/system/test.system.conf.js",
93
94
  "test:reuse:util:formatter": "npx wdio ./test/reuse/util/formatter/test.formatter.conf.js",
94
- "test:reuse:util": "npm run test:reuse:util:browser && npm run test:reuse:util:data && npm run test:reuse:util:file && npm run test:reuse:util:formatter && npm run test:reuse:util:system && npm run test:reuse:util:console",
95
+ "test:reuse:util": "npm run test:reuse:util:browser && npm run test:reuse:util:data && npm run test:reuse:util:file && npm run test:reuse:util:formatter && npm run test:reuse:util:system && npm run test:reuse:util:console && npm run test:reuse:util:component",
95
96
  "test:reuse:common:assertion": "npx wdio ./test/reuse/common/assertion/test.assertion.conf.js",
96
97
  "test:reuse:common:navigation": "npx wdio ./test/reuse/common/navigation/test.navigation.conf.js",
97
98
  "test:reuse:common:date": "npx wdio ./test/reuse/common/date/test.date.conf.js",
@@ -0,0 +1,44 @@
1
+ const fs = require("fs");
2
+ const path = require("path");
3
+
4
+ describe("component - loadEntryPoint", function () {
5
+ const filename = "loadEntryPoint.entrypoint.json";
6
+ const data = { purchaseOrder: "123456" };
7
+ let entryPointData;
8
+
9
+ it("Preparation", async function () {
10
+ fs.writeFileSync(path.resolve(__dirname, filename), JSON.stringify(data));
11
+ });
12
+
13
+ it("Execution", async function () {
14
+ entryPointData = await util.component.loadEntryPoint();
15
+ });
16
+
17
+ it("Verification", function () {
18
+ common.assertion.expectEqual(entryPointData, data);
19
+ });
20
+
21
+ it("Cleanup", async function () {
22
+ fs.unlinkSync(path.resolve(__dirname, filename));
23
+ });
24
+
25
+ });
26
+
27
+ describe("component - loadEntryPoint - error case", function () {
28
+ const filename = "loadEntryPoint.no-such-entrypoint.json";
29
+ const data = { purchaseOrder: "123456" };
30
+
31
+ it("Preparation", async function () {
32
+ fs.writeFileSync(path.resolve(__dirname, filename), JSON.stringify(data));
33
+ });
34
+
35
+ it("Execution and Verification", async function () {
36
+ await expect(util.component.loadEntryPoint())
37
+ .rejects.toThrow("Function 'readDataFromFile' failed:");
38
+ });
39
+
40
+ it("Cleanup", async function () {
41
+ fs.unlinkSync(path.resolve(__dirname, filename));
42
+ });
43
+
44
+ });
@@ -0,0 +1,30 @@
1
+ const fs = require("fs");
2
+ const path = require("path");
3
+
4
+ describe("component - storeEntryPoint", function () {
5
+ const filename = "storeEntryPoint.entrypoint.json";
6
+ const data = { purchaseOrder: "123456" };
7
+
8
+ it("Execution", async function () {
9
+ await util.component.storeEntryPoint(data);
10
+ });
11
+
12
+ it("Verification", async function () {
13
+ const dataAct = await util.data.readDataFromFile(path.resolve(__dirname, filename));
14
+ common.assertion.expectEqual(dataAct, data);
15
+ });
16
+
17
+ it("Cleanup", async function () {
18
+ fs.unlinkSync(path.resolve(__dirname, filename));
19
+ });
20
+
21
+ });
22
+
23
+ describe("component - storeEntryPoint - error case", function () {
24
+
25
+ it("Execution and Verification", async function () {
26
+ await expect(util.component.storeEntryPoint())
27
+ .rejects.toThrow("Function 'writeDataToFile' failed:");
28
+ });
29
+
30
+ });
@@ -0,0 +1,22 @@
1
+ const path = require("path");
2
+ const merge = require("deepmerge");
3
+ const profile = require("../../../helper/configurations/chrome.headless.conf");
4
+
5
+ exports.config = merge(profile.config, {
6
+ maxInstances: 4,
7
+ specFileRetries: 2,
8
+
9
+ baseUrl: "https://sapui5.hana.ondemand.com/",
10
+
11
+ params: {
12
+ import: {
13
+ data: "./data/",
14
+ customSourceData: "./customSourceData"
15
+ }
16
+ },
17
+
18
+ specs: [
19
+ path.resolve(__dirname, "storeEntryPoint.spec.js"),
20
+ path.resolve(__dirname, "loadEntryPoint.spec.js"),
21
+ ]
22
+ });
@@ -0,0 +1,29 @@
1
+ const fs = require("fs");
2
+ const path = require("path");
3
+
4
+ describe("data - readDataFromFile", function () {
5
+ const filename = "data/test.json";
6
+ let dataAct, dataExp;
7
+
8
+ it("Preparation", async function () {
9
+ dataExp = JSON.parse(fs.readFileSync(path.resolve(__dirname, filename)));
10
+ });
11
+
12
+ it("Execution", async function () {
13
+ dataAct = await util.data.readDataFromFile(filename);
14
+ });
15
+
16
+ it("Verification", function () {
17
+ common.assertion.expectEqual(dataAct, dataExp);
18
+ });
19
+
20
+ });
21
+
22
+ describe("data - readDataFromFile - error case", function () {
23
+
24
+ it("Execution and Verification", async function () {
25
+ await expect(util.data.readDataFromFile("data/no-such-file.json"))
26
+ .rejects.toThrow("Function 'readDataFromFile' failed:");
27
+ });
28
+
29
+ });
@@ -18,6 +18,8 @@ exports.config = merge(profile.config, {
18
18
  specs: [
19
19
  path.resolve(__dirname, "getData.spec.js"),
20
20
  path.resolve(__dirname, "getSecureData.spec.js"),
21
- path.resolve(__dirname, "decrypt.spec.js")
21
+ path.resolve(__dirname, "decrypt.spec.js"),
22
+ path.resolve(__dirname, "readDataFromFile.spec.js"),
23
+ path.resolve(__dirname, "writeDataToFile.spec.js")
22
24
  ]
23
25
  });
@@ -0,0 +1,32 @@
1
+ const fs = require("fs");
2
+ const path = require("path");
3
+
4
+ describe("data - writeDataToFile", function () {
5
+ const filename = "data/test-out.json";
6
+ const data = { purchaseOrder: "123456" };
7
+
8
+ it("Execution", async function () {
9
+ await util.data.writeDataToFile(filename, data);
10
+ });
11
+
12
+ it("Verification", async function () {
13
+ const dataAct = await util.data.readDataFromFile(filename);
14
+ common.assertion.expectEqual(dataAct, data);
15
+ });
16
+
17
+ it("Cleanup", async function () {
18
+ fs.unlinkSync(path.resolve(__dirname, filename));
19
+ });
20
+
21
+ });
22
+
23
+ describe("data - writeDataToFile - error case", function () {
24
+
25
+ const data = { purchaseOrder: "123456" };
26
+
27
+ it("Execution and Verification", async function () {
28
+ await expect(util.data.writeDataToFile("no-such-folder/test-out.json", data))
29
+ .rejects.toThrow("Function 'writeDataToFile' failed:");
30
+ });
31
+
32
+ });