@sap_oss/wdio-qmate-service 1.0.2 → 1.2.0
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/docs/doc.md +355 -152
- package/docs/sections/bestPractices/authentication.md +0 -2
- package/docs/sections/contact.md +4 -0
- package/docs/sections/features/advancedDataHandling.md +1 -1
- package/docs/sections/features/dataHandling.md +2 -2
- package/lib/reuse/authenticator/customAuthenticator.js +4 -4
- package/lib/reuse/authenticator/formAuthenticator.js +4 -4
- package/lib/reuse/modules/service/odata.d.ts +3 -3
- package/lib/reuse/modules/service/odata.js +3 -3
- package/lib/reuse/modules/ui5/control.d.ts +6 -5
- package/lib/reuse/modules/ui5/control.js +5 -5
- package/lib/reuse/modules/ui5/control.js.map +1 -1
- package/lib/reuse/modules/ui5/session.d.ts +8 -8
- package/lib/reuse/modules/ui5/session.js +15 -15
- package/lib/reuse/modules/ui5/session.js.map +1 -1
- package/lib/reuse/modules/ui5/userInteraction.d.ts +34 -21
- package/lib/reuse/modules/ui5/userInteraction.js +149 -114
- package/lib/reuse/modules/ui5/userInteraction.js.map +1 -1
- package/lib/scripts/hooks/utils/decryption.d.ts +11 -1
- package/lib/scripts/hooks/utils/decryption.js +53 -7
- package/lib/scripts/hooks/utils/decryption.js.map +1 -1
- package/package.json +2 -3
- package/test/authenticator/staticLogin/configCustom.js +1 -1
- package/test/authenticator/staticLogin/configFiori.js +1 -1
- package/test/authenticator/staticLogin/configSapCloud.js +1 -1
- package/test/authenticator/staticLogin/specs/custom.spec.js +2 -2
- package/test/authenticator/staticLogin/specs/customViaConfig.spec.js +1 -1
- package/test/authenticator/staticLogin/specs/plain.spec.js +4 -4
- package/test/authenticator/systemLogin/configCustom.js +2 -2
- package/test/authenticator/systemLogin/configFiori.js +3 -3
- package/test/authenticator/systemLogin/configPlain.js +1 -1
- package/test/authenticator/systemLogin/configSapCloud.js +3 -3
- package/test/core/dataExchange/utils.js +4 -4
- package/test/reuse/common/assertion/expectUrlToBe.spec.js +4 -4
- package/test/reuse/ui5/navigation/closePopups.spec.js +1 -1
- package/test/reuse/ui5/navigation/expectUnsupportedNavigationPopup.spec.js +6 -6
- package/test/reuse/ui5/navigation/navigateToApplication.spec.js +3 -3
- package/test/reuse/ui5/navigation/navigateToApplicationAndRetry.spec.js +3 -3
- package/test/reuse/ui5/navigation/navigateToSystemAndApplication.spec.js +7 -7
- package/test/reuse/ui5/navigation/navigateToSystemAndApplicationAndRetry.spec.js +4 -4
- package/test/reuse/ui5/navigation/test.navigation.conf.js +1 -1
- package/test/reuse/ui5/session/login.spec.js +4 -4
- package/test/reuse/ui5/session/loginFiori.spec.js +2 -2
- package/test/reuse/ui5/session/loginSapCloud.spec.js +3 -3
- package/test/reuse/ui5/session/logout.spec.js +2 -2
- package/test/reuse/ui5/session/switchUser.spec.js +6 -6
- package/test/reuse/ui5/userInteraction/clickTab.spec.js +52 -19
- package/test/reuse/ui5/userInteraction/selectFromTab.spec.js +38 -0
- package/test/reuse/ui5/userInteraction/test.userInteraction.conf.js +1 -0
- package/test/reuse/util/data/data/test.secure.json +4 -4
- package/test/reuse/util/data/decrypt.spec.js +1 -1
- package/test/reuse/util/data/getSecureData.spec.js +4 -4
- package/test/reuse/util/data/test.data.conf.js +1 -1
- package/docs/bestPractices/spec.md +0 -0
- package/docs/gettingStarted/setup.md +0 -8
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
const { handleCookiesConsent } = require("../../../helper/utils");
|
|
2
2
|
|
|
3
|
-
describe("userInteraction -
|
|
4
|
-
|
|
3
|
+
describe("userInteraction - clickTab - simple tab", function () {
|
|
5
4
|
it("Preparation", async function () {
|
|
6
5
|
await browser.navigateTo("https://sapui5.hana.ondemand.com/1.99.0/#/api/sap.m.IconTabBar");
|
|
7
6
|
await handleCookiesConsent();
|
|
@@ -9,10 +8,10 @@ describe("userInteraction - click Tab", function () {
|
|
|
9
8
|
|
|
10
9
|
it("Execution", async function () {
|
|
11
10
|
const selector = {
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
11
|
+
elementProperties: {
|
|
12
|
+
viewName: "sap.ui.documentation.sdk.view.SubApiDetail",
|
|
13
|
+
metadata: "sap.m.Button",
|
|
14
|
+
text: "Properties"
|
|
16
15
|
}
|
|
17
16
|
};
|
|
18
17
|
const index = 0;
|
|
@@ -22,19 +21,52 @@ describe("userInteraction - click Tab", function () {
|
|
|
22
21
|
|
|
23
22
|
it("Verification", async function () {
|
|
24
23
|
const selector = {
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
24
|
+
elementProperties: {
|
|
25
|
+
viewName: "sap.ui.documentation.sdk.view.SubApiDetail",
|
|
26
|
+
metadata: "sap.m.Label",
|
|
27
|
+
text: "Show borrowed properties"
|
|
29
28
|
}
|
|
30
29
|
};
|
|
31
30
|
await ui5.assertion.expectToBeVisible(selector);
|
|
32
31
|
});
|
|
33
32
|
});
|
|
34
33
|
|
|
34
|
+
describe("userInteraction - clickTab - multiple select values", function () {
|
|
35
|
+
it("Preparation", async function () {
|
|
36
|
+
await browser.navigateTo("https://sapui5.hana.ondemand.com/1.99.0/#/api/sap.m.IconTabBar");
|
|
37
|
+
await util.browser.refresh();
|
|
38
|
+
await handleCookiesConsent();
|
|
39
|
+
});
|
|
35
40
|
|
|
36
|
-
|
|
41
|
+
it("Execution", async function () {
|
|
42
|
+
const selector = {
|
|
43
|
+
elementProperties: {
|
|
44
|
+
viewName: "sap.ui.documentation.sdk.view.SubApiDetail",
|
|
45
|
+
metadata: "sap.m.Button",
|
|
46
|
+
text: "Events"
|
|
47
|
+
}
|
|
48
|
+
};
|
|
49
|
+
await ui5.userInteraction.clickTab(selector);
|
|
50
|
+
});
|
|
51
|
+
|
|
52
|
+
it("Verification", async function () {
|
|
53
|
+
const selector = {
|
|
54
|
+
elementProperties: {
|
|
55
|
+
viewName: "sap.ui.documentation.sdk.view.SubApiDetail",
|
|
56
|
+
metadata: "sap.ui.documentation.ObjectPageSubSection",
|
|
57
|
+
title: "Summary"
|
|
58
|
+
},
|
|
59
|
+
ancestorProperties: {
|
|
60
|
+
metadata: "sap.uxap.ObjectPageSection",
|
|
61
|
+
viewName: "sap.ui.documentation.sdk.view.SubApiDetail",
|
|
62
|
+
title: "Events"
|
|
63
|
+
}
|
|
64
|
+
};
|
|
65
|
+
await ui5.assertion.expectToBeVisible(selector);
|
|
66
|
+
});
|
|
67
|
+
});
|
|
37
68
|
|
|
69
|
+
describe("userInteraction - clickTab - non tab element", function () {
|
|
38
70
|
it("Preparation", async function () {
|
|
39
71
|
await browser.navigateTo("https://sapui5.hana.ondemand.com/1.99.0/#/api/sap.m.IconTabBar");
|
|
40
72
|
await util.browser.refresh();
|
|
@@ -43,17 +75,18 @@ describe("userInteraction - click on non Tab element", function () {
|
|
|
43
75
|
|
|
44
76
|
it("Execution & Verification", async function () {
|
|
45
77
|
const selector = {
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
78
|
+
elementProperties: {
|
|
79
|
+
viewName: "sap.ui.documentation.sdk.view.SubApiDetail",
|
|
80
|
+
metadata: "sap.ui.documentation.JSDocText",
|
|
81
|
+
text: [
|
|
82
|
+
{
|
|
83
|
+
path: "/description"
|
|
84
|
+
}
|
|
85
|
+
]
|
|
52
86
|
}
|
|
53
87
|
};
|
|
54
88
|
const index = 0;
|
|
55
89
|
const timeout = 30000;
|
|
56
|
-
await expect(ui5.userInteraction.clickTab(selector, index, timeout))
|
|
57
|
-
.rejects.toThrow("Retries done. Failed to execute the function");
|
|
90
|
+
await expect(ui5.userInteraction.clickTab(selector, index, timeout)).rejects.toThrow("Retries done. Failed to execute the function");
|
|
58
91
|
});
|
|
59
92
|
});
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
const { handleCookiesConsent } = require("../../../helper/utils");
|
|
2
|
+
|
|
3
|
+
describe("userInteraction - selectFromTab", function () {
|
|
4
|
+
it("Preparation", async function () {
|
|
5
|
+
await browser.navigateTo("https://sapui5.hana.ondemand.com/1.99.0/#/api/sap.m.IconTabBar");
|
|
6
|
+
await handleCookiesConsent();
|
|
7
|
+
});
|
|
8
|
+
|
|
9
|
+
it("Execution", async function () {
|
|
10
|
+
const selector = {
|
|
11
|
+
elementProperties: {
|
|
12
|
+
viewName: "sap.ui.documentation.sdk.view.SubApiDetail",
|
|
13
|
+
metadata: "sap.m.Button",
|
|
14
|
+
text: "Events"
|
|
15
|
+
}
|
|
16
|
+
};
|
|
17
|
+
const value = "expand";
|
|
18
|
+
const index = 0;
|
|
19
|
+
const timeout = 30000;
|
|
20
|
+
await ui5.userInteraction.selectFromTab(selector, value, index, timeout);
|
|
21
|
+
});
|
|
22
|
+
|
|
23
|
+
it("Verification", async function () {
|
|
24
|
+
const selector = {
|
|
25
|
+
elementProperties: {
|
|
26
|
+
viewName: "sap.ui.documentation.sdk.view.SubApiDetail",
|
|
27
|
+
metadata: "sap.ui.documentation.JSDocText",
|
|
28
|
+
text: "<p>Indicates that the tab will expand or collapse.<br><br><i>Since: 1.15.0.</i></p>"
|
|
29
|
+
},
|
|
30
|
+
ancestorProperties: {
|
|
31
|
+
metadata: "sap.ui.documentation.ObjectPageSubSection",
|
|
32
|
+
viewName: "sap.ui.documentation.sdk.view.SubApiDetail",
|
|
33
|
+
title: "expand"
|
|
34
|
+
}
|
|
35
|
+
};
|
|
36
|
+
await ui5.assertion.expectToBeVisible(selector);
|
|
37
|
+
});
|
|
38
|
+
});
|
|
@@ -20,6 +20,7 @@ exports.config = merge(profile.config, {
|
|
|
20
20
|
path.resolve(__dirname, "clickSelectArrow.spec.js"),
|
|
21
21
|
path.resolve(__dirname, "clickSelectArrowAndRetry.spec.js"),
|
|
22
22
|
path.resolve(__dirname, "clickTab.spec.js"),
|
|
23
|
+
path.resolve(__dirname, "selectFromTab.spec.js"),
|
|
23
24
|
path.resolve(__dirname, "fill.spec.js"),
|
|
24
25
|
path.resolve(__dirname, "fillAndRetry.spec.js"),
|
|
25
26
|
path.resolve(__dirname, "openF4Help.spec.js"),
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
{
|
|
2
2
|
"session": {
|
|
3
|
-
"password": "
|
|
3
|
+
"password": "b1512310be1b4ae516a92bab1f857fc6018abe6e8199622db77a621b21ab1d7b0aeede946829ad6d46ec4d8f349e0a27452abe8fd0f7f035a309627e80a066a400ad06456ae6e6202287c7259b5703e8df768e76708c0f8494c2245eee5a841e1ab4ecd909347561cb92eba4ff53f7e288a31d295f475b1a6a00b804090d7bc15eb2108f6ce842fdee574d95c8fa562f4a927aaaea77c5eaf66330bfcb6445ee55c58815d30eb94845a19f3080e89a96cb9fcacfc51a1043dff1a99086d3be86e4529e9ddd381086a167703d5bff19e3060fec0e59b6a2d3d383c731bff89e26cc322d5436c5f654aa4df99977c770580220cad7075fc786a5d6310e49881b8ee9e3614339ce3d7f991d801f6e469ebff38cbda7fa479e6949a71580c8cd53816f72765dd0fe15feeab30424e950b37b8cfa0900d36295208b900d0923ac9b99f8bd5707a6095bdb4c995286787dc3fa058c462f041879061afd5157a207eca7"
|
|
4
4
|
},
|
|
5
5
|
"test": {
|
|
6
6
|
"number": 42,
|
|
7
7
|
"inner": {
|
|
8
|
-
"value": "
|
|
8
|
+
"value": "7090bcc6097140bdf6e68850582b5e94bbd4ec52d0db5c83ac7b9c1cf4c771e2b467b8cab402f27d6bf7ba1737ec081aff24bb437e80f734ad385fa28cdbe765b630774df1021c5020515d714753c1fce0119d9a7360cd802ac536060b33976a564a590c0f61a83e7d83b02ea917f0eba8ef34f36c5898bd49013dc5756dbb3b775f1df9b99c552f1d6c44fdf8b0635e69d4c884a5226a29b573b7975e8ac564481a3e8870ccef8dbff66e167b67bac9ec3155dc0e3c41460b03d9ab6ab58f061aa67b4216b0f719fb37225c5e51b3cdd38c4597c0fe9c48e5400390a61271649e3eda26c011dfca6a22cab1b7f8ed54bc37883013f203a117d3893dab3f5f42bbb63bf9566114df3e1aff43758a98d1e8cddc0b2a5c9b7076e6b6ce8d02864514b8af3a8b8d5f789c910c2af37305ad73b5bf9a3403299416a4278108987b80f33f82f6f2ad812518fbeb5eca565a52d8dea18976dc4d895c3c5a22693c70e9"
|
|
9
9
|
}
|
|
10
10
|
},
|
|
11
11
|
"alternatives": [
|
|
12
|
-
"
|
|
13
|
-
"
|
|
12
|
+
"DUMMY310be1b4ae516a92bab1f857fc6018abe6e8199622db77a621b21ab1d7b0aeede946829ad6d46ec4d8f349e0a27452abe8fd0f7f035a309627e80a066a400ad06456ae6e6202287c7259b5703e8df768e76708c0f8494c2245eee5a841e1ab4ecd909347561cb92eba4ff53f7e288a31d295f475b1a6a00b804090d7bc15eb2108f6ce842fdee574d95c8fa562f4a927aaaea77c5eaf66330bfcb6445ee55c58815d30eb94845a19f3080e89a96cb9fcacfc51a1043dff1a99086d3be86e4529e9ddd381086a167703d5bff19e3060fec0e59b6a2d3d383c731bff89e26cc322d5436c5f654aa4df99977c770580220cad7075fc786a5d6310e49881b8ee9e3614339ce3d7f991d801f6e469ebff38cbda7fa479e6949a71580c8cd53816f72765dd0fe15feeab30424e950b37b8cfa0900d36295208b900d0923ac9b99f8bd5707a6095bdb4c995286787dc3fa058c462f041879061afd5157a207eca7",
|
|
13
|
+
"b1512310be1b4ae516a92bab1f857fc6018abe6e8199622db77a621b21ab1d7b0aeede946829ad6d46ec4d8f349e0a27452abe8fd0f7f035a309627e80a066a400ad06456ae6e6202287c7259b5703e8df768e76708c0f8494c2245eee5a841e1ab4ecd909347561cb92eba4ff53f7e288a31d295f475b1a6a00b804090d7bc15eb2108f6ce842fdee574d95c8fa562f4a927aaaea77c5eaf66330bfcb6445ee55c58815d30eb94845a19f3080e89a96cb9fcacfc51a1043dff1a99086d3be86e4529e9ddd381086a167703d5bff19e3060fec0e59b6a2d3d383c731bff89e26cc322d5436c5f654aa4df99977c770580220cad7075fc786a5d6310e49881b8ee9e3614339ce3d7f991d801f6e469ebff38cbda7fa479e6949a71580c8cd53816f72765dd0fe15feeab30424e950b37b8cfa0900d36295208b900d0923ac9b99f8bd5707a6095bdb4c995286787dc3fa058c462f041879061afd5157a207eca7"
|
|
14
14
|
]
|
|
15
15
|
}
|
|
@@ -7,7 +7,7 @@ describe("data - getSecureData", function() {
|
|
|
7
7
|
});
|
|
8
8
|
|
|
9
9
|
it("Verification 1 - hashed value", function () {
|
|
10
|
-
const dataExp = "
|
|
10
|
+
const dataExp = "super-duper-sensitive-pw";
|
|
11
11
|
const dataAct = data.session.password;
|
|
12
12
|
common.assertion.expectEqual(dataAct, dataExp);
|
|
13
13
|
});
|
|
@@ -25,7 +25,7 @@ describe("data - getSecureData", function() {
|
|
|
25
25
|
});
|
|
26
26
|
|
|
27
27
|
it("Verification 4 - alternatives from different keys", function () {
|
|
28
|
-
const dataExp = "
|
|
28
|
+
const dataExp = "super-duper-sensitive-pw";
|
|
29
29
|
const dataAct = data.alternatives;
|
|
30
30
|
common.assertion.expectEqual(dataAct, dataExp);
|
|
31
31
|
});
|
|
@@ -38,7 +38,7 @@ describe("data - getSecureData", function() {
|
|
|
38
38
|
// test.local.json
|
|
39
39
|
// {
|
|
40
40
|
// "session": {
|
|
41
|
-
// "password": "
|
|
41
|
+
// "password": "super-duper-sensitive-pw"
|
|
42
42
|
// }
|
|
43
43
|
// }
|
|
44
44
|
|
|
@@ -55,7 +55,7 @@ describe("data - getSecureData", function() {
|
|
|
55
55
|
// });
|
|
56
56
|
|
|
57
57
|
// it("Verification", function () {
|
|
58
|
-
// const dataExp = "
|
|
58
|
+
// const dataExp = "super-duper-sensitive-pw";
|
|
59
59
|
// const dataAct = data.session.password;
|
|
60
60
|
// common.assertion.expectEqual(dataAct, dataExp);
|
|
61
61
|
// });
|
|
File without changes
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
## Prerequisites
|
|
2
|
-
Make sure [Node.js](https://nodejs.org/en/download/) is installed on your computer.
|
|
3
|
-
|
|
4
|
-
## Installation
|
|
5
|
-
To install the latest version of the service, simply execute the following command:
|
|
6
|
-
```bash
|
|
7
|
-
npm install @sap_oss/wdio-qmate-service
|
|
8
|
-
```
|