@sap_oss/wdio-qmate-service 1.5.1 → 2.0.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 +83 -21
- package/lib/index.js +8 -2
- package/lib/index.js.map +1 -1
- package/lib/reuse/helper/jsonDocGen.d.ts +1 -0
- package/lib/reuse/helper/jsonDocGen.js +121 -0
- package/lib/reuse/helper/jsonDocGen.js.map +1 -0
- package/lib/reuse/index.js +1 -1
- package/lib/reuse/index.js.map +1 -1
- package/lib/reuse/modules/common/userInteraction.js +10 -11
- package/lib/reuse/modules/common/userInteraction.js.map +1 -1
- package/lib/reuse/modules/nonUi5/userInteraction.js +26 -27
- package/lib/reuse/modules/nonUi5/userInteraction.js.map +1 -1
- package/lib/reuse/modules/service/rest.d.ts +66 -10
- package/lib/reuse/modules/service/rest.js +106 -37
- package/lib/reuse/modules/service/rest.js.map +1 -1
- package/lib/reuse/modules/ui5/userInteraction.js +6 -3
- package/lib/reuse/modules/ui5/userInteraction.js.map +1 -1
- package/lib/reuse/modules/util/file.js +0 -1
- package/lib/reuse/modules/util/file.js.map +1 -1
- package/lib/reuse/runner/runner.js.map +1 -0
- package/package.json +26 -19
- package/test/reuse/common/userInteraction/fillActive.spec.js +6 -14
- package/test/reuse/common/userInteraction/fillActiveAndRetry.spec.js +7 -15
- package/test/reuse/nonUi5/userInteraction/clearAndFill.spec.js +3 -3
- package/test/reuse/nonUi5/userInteraction/clearAndFillAndRetry.spec.js +5 -6
- package/test/reuse/service/rest/db.json +20 -0
- package/test/reuse/service/rest/delete.spec.js +37 -4
- package/test/reuse/service/rest/get.spec.js +13 -1
- package/test/reuse/service/rest/init.spec.js +22 -10
- package/test/reuse/service/rest/patch.spec.js +44 -14
- package/test/reuse/service/rest/post.spec.js +47 -15
- package/test/reuse/service/rest/put.spec.js +58 -0
- package/test/reuse/service/rest/rest-server.js +76 -0
- package/test/reuse/service/rest/test.rest.conf.js +2 -1
- package/test/reuse/ui5/userInteraction/fill.spec.js +2 -8
- package/test/reuse/ui5/userInteraction/fillAndRetry.spec.js +3 -7
- package/test/reuse/util/component/loadEntryPoint.spec.js +7 -18
- package/test/reuse/util/component/storeEntryPoint.spec.js +27 -17
- package/test/reuse/util/file/test.file.conf.js +1 -1
- package/lib/reuse/modules/runner.js.map +0 -1
- package/lib/reuse/modules/service/soap.d.ts +0 -0
- package/lib/reuse/modules/service/soap.js +0 -2
- package/lib/reuse/modules/service/soap.js.map +0 -1
- /package/lib/reuse/{modules → runner}/runner.d.ts +0 -0
- /package/lib/reuse/{modules → runner}/runner.js +0 -0
package/docs/doc.md
CHANGED
|
@@ -4970,10 +4970,11 @@ Global namespace for service modules.
|
|
|
4970
4970
|
* [.readPdfFromDirectUrl(url, [username], [password], [isSaml])](#service.odata.readPdfFromDirectUrl)
|
|
4971
4971
|
* [.rest](#service.rest)
|
|
4972
4972
|
* [.init([customConfig])](#service.rest.init) ⇒ <code>Object</code>
|
|
4973
|
-
* [.get(uri, [
|
|
4974
|
-
* [.post(uri, payload)](#service.rest.post) ⇒ <code>Object</code>
|
|
4975
|
-
* [.delete(uri,
|
|
4976
|
-
* [.patch(uri,
|
|
4973
|
+
* [.get(uri, [config])](#service.rest.get) ⇒ <code>Object</code>
|
|
4974
|
+
* [.post(uri, payload, [config])](#service.rest.post) ⇒ <code>Object</code>
|
|
4975
|
+
* [.delete(uri, [config])](#service.rest.delete) ⇒ <code>Object</code>
|
|
4976
|
+
* [.patch(uri, payload, [config])](#service.rest.patch) ⇒ <code>Object</code>
|
|
4977
|
+
* [.put(uri, payload, [config])](#service.rest.put) ⇒ <code>Object</code>
|
|
4977
4978
|
|
|
4978
4979
|
<a name="service.odata"></a>
|
|
4979
4980
|
|
|
@@ -5231,10 +5232,11 @@ const pdfStream = await service.odata.readPdfFromDirectUrl(url, "username", "Pas
|
|
|
5231
5232
|
|
|
5232
5233
|
* [.rest](#service.rest)
|
|
5233
5234
|
* [.init([customConfig])](#service.rest.init) ⇒ <code>Object</code>
|
|
5234
|
-
* [.get(uri, [
|
|
5235
|
-
* [.post(uri, payload)](#service.rest.post) ⇒ <code>Object</code>
|
|
5236
|
-
* [.delete(uri,
|
|
5237
|
-
* [.patch(uri,
|
|
5235
|
+
* [.get(uri, [config])](#service.rest.get) ⇒ <code>Object</code>
|
|
5236
|
+
* [.post(uri, payload, [config])](#service.rest.post) ⇒ <code>Object</code>
|
|
5237
|
+
* [.delete(uri, [config])](#service.rest.delete) ⇒ <code>Object</code>
|
|
5238
|
+
* [.patch(uri, payload, [config])](#service.rest.patch) ⇒ <code>Object</code>
|
|
5239
|
+
* [.put(uri, payload, [config])](#service.rest.put) ⇒ <code>Object</code>
|
|
5238
5240
|
|
|
5239
5241
|
<a name="service.rest.init"></a>
|
|
5240
5242
|
|
|
@@ -5260,25 +5262,26 @@ const axios = service.rest.init(customConfig);
|
|
|
5260
5262
|
```
|
|
5261
5263
|
<a name="service.rest.get"></a>
|
|
5262
5264
|
|
|
5263
|
-
#### rest.get(uri, [
|
|
5265
|
+
#### rest.get(uri, [config]) ⇒ <code>Object</code>
|
|
5264
5266
|
makes a GET request.
|
|
5265
5267
|
|
|
5266
5268
|
**Kind**: static method of [<code>rest</code>](#service.rest)
|
|
5267
5269
|
**Returns**: <code>Object</code> - The response of the GET request.
|
|
5268
5270
|
|
|
5269
|
-
| Param | Type |
|
|
5270
|
-
| --- | --- | --- |
|
|
5271
|
-
| uri | <code>String</code> |
|
|
5272
|
-
| [
|
|
5271
|
+
| Param | Type | Description |
|
|
5272
|
+
| --- | --- | --- |
|
|
5273
|
+
| uri | <code>String</code> | The uri to the data source you want to GET. |
|
|
5274
|
+
| [config] | <code>Object</code> | The config options for the request. |
|
|
5273
5275
|
|
|
5274
5276
|
**Example**
|
|
5275
5277
|
```js
|
|
5276
5278
|
const uri = https://api.predic8.de/shop/products/";
|
|
5277
5279
|
let res = await service.rest.get(uri);
|
|
5280
|
+
common.assertion.expectEqual(res.data.title, "qmate-service");
|
|
5278
5281
|
```
|
|
5279
5282
|
<a name="service.rest.post"></a>
|
|
5280
5283
|
|
|
5281
|
-
#### rest.post(uri, payload) ⇒ <code>Object</code>
|
|
5284
|
+
#### rest.post(uri, payload, [config]) ⇒ <code>Object</code>
|
|
5282
5285
|
makes a POST request.
|
|
5283
5286
|
|
|
5284
5287
|
**Kind**: static method of [<code>rest</code>](#service.rest)
|
|
@@ -5288,14 +5291,27 @@ makes a POST request.
|
|
|
5288
5291
|
| --- | --- | --- |
|
|
5289
5292
|
| uri | <code>String</code> | The uri to the data source you want to POST against. |
|
|
5290
5293
|
| payload | <code>Object</code> | The data you want to POST against your entity set. |
|
|
5294
|
+
| [config] | <code>Object</code> | The config options for the request. |
|
|
5291
5295
|
|
|
5292
5296
|
**Example**
|
|
5293
5297
|
```js
|
|
5294
|
-
|
|
5298
|
+
const payload = {
|
|
5299
|
+
id: 99,
|
|
5300
|
+
title: "qmate-service",
|
|
5301
|
+
author: "marvin"
|
|
5302
|
+
};
|
|
5303
|
+
const config = {
|
|
5304
|
+
headers: {
|
|
5305
|
+
"X-CSRF-TOKEN": "<CSRF TOKEN>",
|
|
5306
|
+
"Cookie": "<COOKIE>",
|
|
5307
|
+
"Content-Type": "application/json"
|
|
5308
|
+
}
|
|
5309
|
+
};
|
|
5310
|
+
let res = await service.rest.post(`${browser.config.baseUrl}/posts/99`, payload, config);
|
|
5295
5311
|
```
|
|
5296
5312
|
<a name="service.rest.delete"></a>
|
|
5297
5313
|
|
|
5298
|
-
#### rest.delete(uri,
|
|
5314
|
+
#### rest.delete(uri, [config]) ⇒ <code>Object</code>
|
|
5299
5315
|
makes a DELETE request.
|
|
5300
5316
|
|
|
5301
5317
|
**Kind**: static method of [<code>rest</code>](#service.rest)
|
|
@@ -5304,15 +5320,21 @@ makes a DELETE request.
|
|
|
5304
5320
|
| Param | Type | Description |
|
|
5305
5321
|
| --- | --- | --- |
|
|
5306
5322
|
| uri | <code>String</code> | The uri to the data source you want to DELETE. |
|
|
5307
|
-
|
|
|
5323
|
+
| [config] | <code>Object</code> | The config options for the request. |
|
|
5308
5324
|
|
|
5309
5325
|
**Example**
|
|
5310
5326
|
```js
|
|
5311
|
-
|
|
5327
|
+
const config = {
|
|
5328
|
+
auth: {
|
|
5329
|
+
"username": "<username>",
|
|
5330
|
+
"password": "<password>"
|
|
5331
|
+
}
|
|
5332
|
+
};
|
|
5333
|
+
let res = await service.rest.delete(`${browser.config.baseUrl}/posts/99`, config);
|
|
5312
5334
|
```
|
|
5313
5335
|
<a name="service.rest.patch"></a>
|
|
5314
5336
|
|
|
5315
|
-
#### rest.patch(uri,
|
|
5337
|
+
#### rest.patch(uri, payload, [config]) ⇒ <code>Object</code>
|
|
5316
5338
|
makes a PATCH request.
|
|
5317
5339
|
|
|
5318
5340
|
**Kind**: static method of [<code>rest</code>](#service.rest)
|
|
@@ -5321,9 +5343,49 @@ makes a PATCH request.
|
|
|
5321
5343
|
| Param | Type | Description |
|
|
5322
5344
|
| --- | --- | --- |
|
|
5323
5345
|
| uri | <code>String</code> | The uri to the data source you want to PATCH. |
|
|
5324
|
-
|
|
|
5346
|
+
| payload | <code>Object</code> | The data to be used for updating the entity. |
|
|
5347
|
+
| [config] | <code>Object</code> | The config options for the request. |
|
|
5325
5348
|
|
|
5326
5349
|
**Example**
|
|
5327
5350
|
```js
|
|
5328
|
-
|
|
5351
|
+
const config = {
|
|
5352
|
+
auth: {
|
|
5353
|
+
"username": "<username>",
|
|
5354
|
+
"password": "<password>"
|
|
5355
|
+
}
|
|
5356
|
+
};
|
|
5357
|
+
const payload = {
|
|
5358
|
+
"title": "patched-qmate-service",
|
|
5359
|
+
"author": "qmate-tester"
|
|
5360
|
+
},
|
|
5361
|
+
let res = await service.rest.patch(`${browser.config.baseUrl}/posts/99`, payload, config);
|
|
5362
|
+
```
|
|
5363
|
+
<a name="service.rest.put"></a>
|
|
5364
|
+
|
|
5365
|
+
#### rest.put(uri, payload, [config]) ⇒ <code>Object</code>
|
|
5366
|
+
makes a PUT request.
|
|
5367
|
+
|
|
5368
|
+
**Kind**: static method of [<code>rest</code>](#service.rest)
|
|
5369
|
+
**Returns**: <code>Object</code> - The response of the PUT request.
|
|
5370
|
+
|
|
5371
|
+
| Param | Type | Description |
|
|
5372
|
+
| --- | --- | --- |
|
|
5373
|
+
| uri | <code>String</code> | The uri to the data source you want to PUT. |
|
|
5374
|
+
| payload | <code>Object</code> | The data to be used for updating the entity. |
|
|
5375
|
+
| [config] | <code>Object</code> | The config options for the request. |
|
|
5376
|
+
|
|
5377
|
+
**Example**
|
|
5378
|
+
```js
|
|
5379
|
+
const config = {
|
|
5380
|
+
auth: {
|
|
5381
|
+
"username": "<username>",
|
|
5382
|
+
"password": "<password>"
|
|
5383
|
+
}
|
|
5384
|
+
}
|
|
5385
|
+
const payload = {
|
|
5386
|
+
"id": 99,
|
|
5387
|
+
"title": "put-qmate-service",
|
|
5388
|
+
"author": "qmate-tester"
|
|
5389
|
+
},
|
|
5390
|
+
let res = await service.rest.put(`${browser.config.baseUrl}/posts/99`, payload, config);
|
|
5329
5391
|
```
|
package/lib/index.js
CHANGED
|
@@ -22,7 +22,9 @@ module.exports = class CustomWorkerService {
|
|
|
22
22
|
* the `serviceOptions` parameter will be: `{ foo: 'bar' }`
|
|
23
23
|
*/
|
|
24
24
|
// @ts-ignore
|
|
25
|
-
constructor(serviceOptions, capabilities, config
|
|
25
|
+
constructor(serviceOptions, capabilities, config) {
|
|
26
|
+
this.config = config;
|
|
27
|
+
}
|
|
26
28
|
/**
|
|
27
29
|
* Gets executed once before all workers get launched.
|
|
28
30
|
* @param {Object} config wdio configuration object
|
|
@@ -55,7 +57,9 @@ module.exports = class CustomWorkerService {
|
|
|
55
57
|
// @ts-ignore
|
|
56
58
|
async beforeSession(config, capabilities, specs) {
|
|
57
59
|
try {
|
|
60
|
+
browser.config = config;
|
|
58
61
|
await (0, beforeSession_1.default)(config, capabilities, specs);
|
|
62
|
+
this.config = browser.config;
|
|
59
63
|
}
|
|
60
64
|
catch (e) {
|
|
61
65
|
if (specs && specs[0]) {
|
|
@@ -78,6 +82,8 @@ module.exports = class CustomWorkerService {
|
|
|
78
82
|
async before(capabilities, specs, browser) {
|
|
79
83
|
// Errors in WDIO hooks are suppressed by default => we call process.exit(1). It will mark all specs as failed
|
|
80
84
|
try {
|
|
85
|
+
browser.config = this.config;
|
|
86
|
+
browser.params = browser.config.params;
|
|
81
87
|
await (0, before_1.default)(capabilities, specs, browser);
|
|
82
88
|
}
|
|
83
89
|
catch (e) {
|
|
@@ -122,7 +128,7 @@ module.exports = class CustomWorkerService {
|
|
|
122
128
|
*/
|
|
123
129
|
async after(result, capabilities, specs) {
|
|
124
130
|
try {
|
|
125
|
-
(0, after_1.default)(result, capabilities, specs);
|
|
131
|
+
await (0, after_1.default)(result, capabilities, specs);
|
|
126
132
|
}
|
|
127
133
|
catch (e) {
|
|
128
134
|
util.console.error(`after hook failed: ${e}`);
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,+BAA+B;AAC/B,YAAY,CAAC;;;;;AAEb,kFAA+D;AAC/D,oEAAiD;AACjD,0EAAsD;AACtD,4EAAwD;AACxD,kEAA8C;AAC9C,MAAM,EAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;AAEtC,MAAM,CAAC,OAAO,GAAG,MAAM,mBAAmB;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/* eslint-disable no-console */
|
|
3
|
+
// get root folder
|
|
4
|
+
const basePath = require("app-root-path");
|
|
5
|
+
const fs = require("fs");
|
|
6
|
+
const doctrine = require("doctrine");
|
|
7
|
+
const namespacesToExclude = ["runtime"];
|
|
8
|
+
const reuseRoot = `${basePath}/lib/reuse/modules`;
|
|
9
|
+
const reuseApiJson = {};
|
|
10
|
+
const namespaces = getNamespaces();
|
|
11
|
+
for (const namespace of namespaces) {
|
|
12
|
+
generateNamespaceDoc(namespace);
|
|
13
|
+
}
|
|
14
|
+
writeJsonDoc();
|
|
15
|
+
function getNamespaces() {
|
|
16
|
+
return fs.readdirSync(reuseRoot).filter(namespace => isValidNamespace(namespace));
|
|
17
|
+
}
|
|
18
|
+
function generateNamespaceDoc(namespace) {
|
|
19
|
+
reuseApiJson[namespace] = {};
|
|
20
|
+
const modules = getModules(namespace);
|
|
21
|
+
for (const module of modules) {
|
|
22
|
+
generateModuleDoc(namespace, module);
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
function writeJsonDoc() {
|
|
26
|
+
const resultString = JSON.stringify(reuseApiJson, null, 2);
|
|
27
|
+
const jsonDocPath = "reuseApi.json";
|
|
28
|
+
fs.writeFileSync(jsonDocPath, resultString);
|
|
29
|
+
console.log(`Saved generated result in '${jsonDocPath}'`);
|
|
30
|
+
}
|
|
31
|
+
function isValidNamespace(namespace) {
|
|
32
|
+
return fs.statSync(`${reuseRoot}/${namespace}`).isDirectory()
|
|
33
|
+
&& !namespacesToExclude.includes(namespace);
|
|
34
|
+
}
|
|
35
|
+
function getModules(namespace) {
|
|
36
|
+
return fs.readdirSync(`${reuseRoot}/${namespace}`)
|
|
37
|
+
.filter(module => isValidModule(namespace, module))
|
|
38
|
+
.map(module => removeJsFileExtension(module));
|
|
39
|
+
}
|
|
40
|
+
function generateModuleDoc(namespace, module) {
|
|
41
|
+
const fileContent = fs.readFileSync(`${reuseRoot}/${namespace}/${module}.js`, "utf-8");
|
|
42
|
+
const regex = new RegExp(/\/\*\*(?:(?!\*\/)[\s\S])*@function([\s\S]*?)\*\//, "g");
|
|
43
|
+
const jsDocs = fileContent.match(regex);
|
|
44
|
+
reuseApiJson[namespace][module] = {};
|
|
45
|
+
for (const jsDoc of jsDocs) {
|
|
46
|
+
parseAndUpdateModuleDoc(namespace, module, jsDoc);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
function isValidModule(namespace, module) {
|
|
50
|
+
return fs.statSync(`${reuseRoot}/${namespace}/${module}`).isFile()
|
|
51
|
+
&& module.slice(-3) === ".js"
|
|
52
|
+
&& !startsWithCapital(module);
|
|
53
|
+
}
|
|
54
|
+
function removeJsFileExtension(fileName) {
|
|
55
|
+
return fileName.slice(0, -3);
|
|
56
|
+
}
|
|
57
|
+
function parseAndUpdateModuleDoc(namespace, module, jsDoc) {
|
|
58
|
+
try {
|
|
59
|
+
parseAndWriteModuleDoc(namespace, module, jsDoc);
|
|
60
|
+
}
|
|
61
|
+
catch (err) {
|
|
62
|
+
console.error(`Error while generating JSON doc for namespace: '${namespace}' and module: '${module}': ${err}`);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
function startsWithCapital(word) {
|
|
66
|
+
return word.charAt(0) === word.charAt(0).toUpperCase();
|
|
67
|
+
}
|
|
68
|
+
function parseAndWriteModuleDoc(namespace, module, jsDoc) {
|
|
69
|
+
const functionAst = doctrine.parse(jsDoc, { unwrap: true, sloppy: true });
|
|
70
|
+
const functionName = getFunctionName(functionAst);
|
|
71
|
+
if (functionName) {
|
|
72
|
+
reuseApiJson[namespace][module][functionName] = formatFunctionAst(functionAst);
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
function getFunctionName(ast) {
|
|
76
|
+
const tags = ast["tags"];
|
|
77
|
+
if (!tags.length) {
|
|
78
|
+
return null;
|
|
79
|
+
}
|
|
80
|
+
return tags.find(tag => tag.title === "function").name;
|
|
81
|
+
}
|
|
82
|
+
function formatFunctionAst(ast) {
|
|
83
|
+
const tags = ast["tags"];
|
|
84
|
+
return {
|
|
85
|
+
type: getFunctionType(tags),
|
|
86
|
+
arguments: getArguments(tags),
|
|
87
|
+
returnType: getReturnType(tags)
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
function getFunctionType(tags) {
|
|
91
|
+
return tags.find(tag => tag.title === "example").description.includes("await") ? "async" : "sync";
|
|
92
|
+
}
|
|
93
|
+
function getArguments(tags) {
|
|
94
|
+
return tags.filter(tag => tag.title === "param").map(tag => {
|
|
95
|
+
return mapTagToArgument(tag);
|
|
96
|
+
});
|
|
97
|
+
}
|
|
98
|
+
function getReturnType(tags) {
|
|
99
|
+
const returnTags = tags.filter(tag => tag.title === "returns");
|
|
100
|
+
if (!returnTags.length) {
|
|
101
|
+
return undefined;
|
|
102
|
+
}
|
|
103
|
+
return parseReturnTypeFromReturnTag(returnTags[0]);
|
|
104
|
+
}
|
|
105
|
+
function mapTagToArgument(tag) {
|
|
106
|
+
return {
|
|
107
|
+
name: tag.name,
|
|
108
|
+
type: (tag.type && tag.type.name && tag.type.name.toLowerCase()) || "string",
|
|
109
|
+
default: tag.default ? tag.default : null
|
|
110
|
+
};
|
|
111
|
+
}
|
|
112
|
+
function parseReturnTypeFromReturnTag(tag) {
|
|
113
|
+
if (tag.type.name) {
|
|
114
|
+
return tag.type.name.toLowerCase();
|
|
115
|
+
}
|
|
116
|
+
if (tag.type.expression) {
|
|
117
|
+
return tag.type.expression.name.toLowerCase();
|
|
118
|
+
}
|
|
119
|
+
return undefined;
|
|
120
|
+
}
|
|
121
|
+
//# sourceMappingURL=jsonDocGen.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"jsonDocGen.js","sourceRoot":"","sources":["../../../src/reuse/helper/jsonDocGen.js"],"names":[],"mappings":"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"}
|
package/lib/reuse/index.js
CHANGED
|
@@ -4,7 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
// functions
|
|
7
|
-
const runner_1 = require("./
|
|
7
|
+
const runner_1 = require("./runner/runner");
|
|
8
8
|
// modules
|
|
9
9
|
const Util_1 = __importDefault(require("./modules/util/Util"));
|
|
10
10
|
const Common_1 = __importDefault(require("./modules/common/Common"));
|
package/lib/reuse/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/reuse/index.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;;;AAEb,YAAY;AACZ,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/reuse/index.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;;;AAEb,YAAY;AACZ,4CAAsC;AAEtC,UAAU;AACV,+DAA4C;AAC5C,qEAAkD;AAClD,4DAAyC;AACzC,qEAAkD;AAClD,wEAAqD;AAErD,OAAO;AACP,qFAAwD;AAExD,MAAM,YAAY;IAChB,IAAI;QACF,mBAAmB;QACnB,aAAa;QACb,MAAM,CAAC,GAAG,GAAG,YAAG,CAAC;QAEjB;;;WAGG;QACH,MAAM,MAAM,GAAG;YACb,SAAS,EAAE,gBAAW,CAAC,SAAS;YAChC,IAAI,EAAE,gBAAW,CAAC,IAAI;YACtB,UAAU,EAAE,gBAAW,CAAC,UAAU;YAClC,eAAe,EAAE,gBAAW,CAAC,eAAe;SAC7C,CAAC;QACF,MAAM,CAAC,MAAM,GAAG;YACd,GAAG,MAAM;YACT,GAAG,MAAM,CAAC,MAAM;SACjB,CAAC;QAEF;;;WAGG;QACH,MAAM,IAAI,GAAG;YACX,OAAO,EAAE,cAAS,CAAC,OAAO;YAC1B,OAAO,EAAE,cAAS,CAAC,OAAO;YAC1B,IAAI,EAAE,cAAS,CAAC,IAAI;YACpB,IAAI,EAAE,cAAS,CAAC,IAAI;YACpB,SAAS,EAAE,cAAS,CAAC,SAAS;YAC9B,QAAQ,EAAE,cAAS,CAAC,QAAQ;YAC5B,MAAM,EAAE,cAAS,CAAC,MAAM;YACxB,SAAS,EAAE,cAAS,CAAC,SAAS;SAC/B,CAAC;QACF,MAAM,CAAC,IAAI,GAAG;YACZ,GAAG,IAAI;YACP,GAAG,MAAM,CAAC,IAAI;SACf,CAAC;QAEF;;;WAGG;QACH,MAAM,GAAG,GAAG;YACV,SAAS,EAAE,aAAQ,CAAC,SAAS;YAC7B,kBAAkB,EAAE,aAAQ,CAAC,kBAAkB;YAC/C,OAAO,EAAE,aAAQ,CAAC,OAAO;YACzB,IAAI,EAAE,aAAQ,CAAC,IAAI;YACnB,WAAW,EAAE,aAAQ,CAAC,WAAW;YACjC,OAAO,EAAE,aAAQ,CAAC,OAAO;YACzB,SAAS,EAAE,aAAQ,CAAC,SAAS;YAC7B,UAAU,EAAE,aAAQ,CAAC,UAAU;YAC/B,UAAU,EAAE,aAAQ,CAAC,UAAU;YAC/B,aAAa,EAAE,aAAQ,CAAC,aAAa;YACrC,OAAO,EAAE,aAAQ,CAAC,OAAO;YACzB,KAAK,EAAE,aAAQ,CAAC,KAAK;YACrB,eAAe,EAAE,aAAQ,CAAC,eAAe;YACzC,KAAK,EAAE,aAAQ,CAAC,KAAK;YACrB,OAAO;YACP,cAAc,EAAd,6BAAc;SACf,CAAC;QACF,MAAM,CAAC,GAAG,GAAG;YACX,GAAG,GAAG;YACN,GAAG,MAAM,CAAC,GAAG;SACd,CAAC;QAEF;;;WAGG;QACH,MAAM,MAAM,GAAG;YACb,SAAS,EAAE,gBAAW,CAAC,SAAS;YAChC,OAAO,EAAE,gBAAW,CAAC,OAAO;YAC5B,UAAU,EAAE,gBAAW,CAAC,UAAU;YAClC,eAAe,EAAE,gBAAW,CAAC,eAAe;YAC5C,OAAO,EAAE,gBAAW,CAAC,OAAO;SAC7B,CAAC;QACF,MAAM,CAAC,MAAM,GAAG;YACd,GAAG,MAAM;YACT,GAAG,MAAM,CAAC,MAAM;SACjB,CAAC;QAEF;;;WAGG;QACH,MAAM,OAAO,GAAG;YACd,KAAK,EAAE,iBAAY,CAAC,KAAK;YACzB,IAAI,EAAE,iBAAY,CAAC,IAAI;SACxB,CAAC;QACF,MAAM,CAAC,OAAO,GAAG;YACf,GAAG,OAAO;YACV,GAAG,MAAM,CAAC,OAAO;SAClB,CAAC;IACJ,CAAC;CACF;AAED,kBAAe,IAAI,YAAY,EAAE,CAAC"}
|
|
@@ -21,19 +21,18 @@ class UserInteraction {
|
|
|
21
21
|
*/
|
|
22
22
|
async fillActive(value) {
|
|
23
23
|
const vlf = this.vlf.initLog(this.fillActive);
|
|
24
|
-
|
|
25
|
-
|
|
24
|
+
if (!(typeof value === "number" || typeof value === "string")) {
|
|
25
|
+
throw new Error("Function 'fillActive' failed: Please provide a value(datatype - number/string) as argument.");
|
|
26
|
+
}
|
|
27
|
+
else {
|
|
28
|
+
try {
|
|
26
29
|
const elem = await $(await browser.getActiveElement());
|
|
27
|
-
await elem.addValue(value);
|
|
30
|
+
await elem.addValue(value);
|
|
28
31
|
}
|
|
29
|
-
|
|
30
|
-
throw new Error(
|
|
32
|
+
catch (error) {
|
|
33
|
+
throw new Error(`Function 'fillActive' failed: ${error}`);
|
|
31
34
|
}
|
|
32
35
|
}
|
|
33
|
-
catch (error) {
|
|
34
|
-
// @ts-ignore
|
|
35
|
-
throw new Error("Function 'fillActive' failed: ", error);
|
|
36
|
-
}
|
|
37
36
|
}
|
|
38
37
|
/**
|
|
39
38
|
* @function fillActiveAndRetry
|
|
@@ -57,12 +56,12 @@ class UserInteraction {
|
|
|
57
56
|
*/
|
|
58
57
|
async clearAndFillActive(value) {
|
|
59
58
|
const vlf = this.vlf.initLog(this.clearAndFillActive);
|
|
60
|
-
if (value
|
|
59
|
+
if (typeof value === "number" || typeof value === "string") {
|
|
61
60
|
const elem = await $(await browser.getActiveElement());
|
|
62
61
|
await elem.setValue(value);
|
|
63
62
|
}
|
|
64
63
|
else {
|
|
65
|
-
throw new Error("Function 'clearAndFillActive' failed. Please provide a value as argument.");
|
|
64
|
+
throw new Error("Function 'clearAndFillActive' failed. Please provide a value(datatype - number/string) as argument.");
|
|
66
65
|
}
|
|
67
66
|
}
|
|
68
67
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"userInteraction.js","sourceRoot":"","sources":["../../../../src/reuse/modules/common/userInteraction.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;AAEb,8DAAkE;AAClE,qFAAiE;AAEjE;;;GAGG;AACH,MAAa,eAAe;IAA5B;QACU,QAAG,GAAG,IAAI,oCAAoB,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"userInteraction.js","sourceRoot":"","sources":["../../../../src/reuse/modules/common/userInteraction.ts"],"names":[],"mappings":"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"}
|
|
@@ -146,22 +146,27 @@ class UserInteraction {
|
|
|
146
146
|
*/
|
|
147
147
|
async fill(element, value) {
|
|
148
148
|
const vl = this.vlf.initLog(this.fill);
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
await element.setValue(value);
|
|
149
|
+
if (!(typeof value === "number" || typeof value === "string")) {
|
|
150
|
+
throw new Error("Function 'fill' failed: Please provide an element and value(datatype - number/string) as arguments");
|
|
152
151
|
}
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
throw new Error(errorMessage);
|
|
152
|
+
else {
|
|
153
|
+
try {
|
|
154
|
+
vl.log(`Setting the value of element to ${value}`);
|
|
155
|
+
await element.setValue(value);
|
|
158
156
|
}
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
157
|
+
catch (error) {
|
|
158
|
+
// @ts-ignore
|
|
159
|
+
if (error.message && error.message.match(new RegExp(/(invalid element state|element not interactable)/))) {
|
|
160
|
+
const errorMessage = await util.function.mapWdioErrorToQmateErrorMessage(error, "fill");
|
|
161
|
+
throw new Error(errorMessage);
|
|
162
162
|
}
|
|
163
163
|
else {
|
|
164
|
-
|
|
164
|
+
if (!value) {
|
|
165
|
+
throw new Error("Function 'fill' failed: Please provide a value as second argument: " + error);
|
|
166
|
+
}
|
|
167
|
+
else {
|
|
168
|
+
throw error;
|
|
169
|
+
}
|
|
165
170
|
}
|
|
166
171
|
}
|
|
167
172
|
}
|
|
@@ -232,8 +237,8 @@ class UserInteraction {
|
|
|
232
237
|
async clearAndFill(element, value) {
|
|
233
238
|
const vl = this.vlf.initLog(this.clearAndFill);
|
|
234
239
|
//arg. 'value' needs to be checked in case of numeric values. E.g.: 0 or 1 will be handled as boolean value in if.
|
|
235
|
-
if (!element || value ===
|
|
236
|
-
throw new Error("Function 'clearAndFill' failed: Please provide an element and value as arguments.");
|
|
240
|
+
if (!element || !(typeof value === "number" || typeof value === "string")) {
|
|
241
|
+
throw new Error("Function 'clearAndFill' failed: Please provide an element and value(datatype - number/string) as arguments.");
|
|
237
242
|
}
|
|
238
243
|
else {
|
|
239
244
|
try {
|
|
@@ -335,19 +340,13 @@ class UserInteraction {
|
|
|
335
340
|
x: +Number(targetSize.width / 2).toFixed(0) + +Number(targetLocation.x).toFixed(0) + 1,
|
|
336
341
|
y: +Number(targetSize.height / 2).toFixed(0) + +Number(targetLocation.y).toFixed(0) + 1
|
|
337
342
|
};
|
|
338
|
-
await browser
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
{ type: "pointerDown", button: 0 },
|
|
346
|
-
{ type: "pointerMove", duration: 0, x: targetCenterLocation.x, y: targetCenterLocation.y },
|
|
347
|
-
{ type: "pointerUp", button: 0 }
|
|
348
|
-
]
|
|
349
|
-
}
|
|
350
|
-
]);
|
|
343
|
+
await browser
|
|
344
|
+
.action("pointer")
|
|
345
|
+
.move({ duration: 0, x: sourceCenterLocation.x, y: sourceCenterLocation.y })
|
|
346
|
+
.down({ button: 0 }) //left button
|
|
347
|
+
.move({ duration: 0, x: targetCenterLocation.x, y: targetCenterLocation.y })
|
|
348
|
+
.down({ button: 0 }) //left button
|
|
349
|
+
.perform();
|
|
351
350
|
}
|
|
352
351
|
/**
|
|
353
352
|
* @function moveCursorAndClick
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"userInteraction.js","sourceRoot":"","sources":["../../../../src/reuse/modules/nonUi5/userInteraction.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;AAGb,8DAAkE;AAClE,qFAAwE;AAExE;;;GAGG;AACH,MAAa,eAAe;IAA5B;QACU,QAAG,GAAG,IAAI,oCAAoB,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"userInteraction.js","sourceRoot":"","sources":["../../../../src/reuse/modules/nonUi5/userInteraction.ts"],"names":[],"mappings":"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"}
|