@sap_oss/wdio-qmate-service 2.12.1 → 2.13.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.
Files changed (43) hide show
  1. package/docs/doc.md +160 -75
  2. package/lib/index.js +5 -2
  3. package/lib/index.js.map +1 -1
  4. package/lib/reuse/modules/flp/userLocks.d.ts +99 -1
  5. package/lib/reuse/modules/flp/userLocks.js +114 -8
  6. package/lib/reuse/modules/flp/userLocks.js.map +1 -1
  7. package/lib/reuse/modules/flp/userSettings.d.ts +161 -2
  8. package/lib/reuse/modules/flp/userSettings.js +172 -13
  9. package/lib/reuse/modules/flp/userSettings.js.map +1 -1
  10. package/lib/scripts/hooks/onComplete.d.ts +1 -1
  11. package/lib/scripts/hooks/onComplete.js +14 -1
  12. package/lib/scripts/hooks/onComplete.js.map +1 -1
  13. package/lib/scripts/hooks/onPrepare.d.ts +1 -1
  14. package/lib/scripts/hooks/onPrepare.js +20 -1
  15. package/lib/scripts/hooks/onPrepare.js.map +1 -1
  16. package/lib/scripts/stats/createUsage.d.ts +10 -0
  17. package/lib/scripts/stats/createUsage.js +34 -0
  18. package/lib/scripts/stats/createUsage.js.map +1 -0
  19. package/lib/scripts/stats/getConfigurationInformation.d.ts +1 -0
  20. package/lib/scripts/stats/getConfigurationInformation.js +57 -0
  21. package/lib/scripts/stats/getConfigurationInformation.js.map +1 -0
  22. package/lib/scripts/stats/getEnvironment.d.ts +1 -0
  23. package/lib/scripts/stats/getEnvironment.js +8 -0
  24. package/lib/scripts/stats/getEnvironment.js.map +1 -0
  25. package/lib/scripts/stats/getOperatingSystem.d.ts +3 -0
  26. package/lib/scripts/stats/getOperatingSystem.js +39 -0
  27. package/lib/scripts/stats/getOperatingSystem.js.map +1 -0
  28. package/lib/scripts/stats/getRepositoryInformation.d.ts +1 -0
  29. package/lib/scripts/stats/getRepositoryInformation.js +49 -0
  30. package/lib/scripts/stats/getRepositoryInformation.js.map +1 -0
  31. package/lib/scripts/stats/getUserId.d.ts +1 -0
  32. package/lib/scripts/stats/getUserId.js +76 -0
  33. package/lib/scripts/stats/getUserId.js.map +1 -0
  34. package/lib/scripts/stats/getVersion.d.ts +1 -0
  35. package/lib/scripts/stats/getVersion.js +7 -0
  36. package/lib/scripts/stats/getVersion.js.map +1 -0
  37. package/lib/scripts/stats/stats.d.ts +2 -0
  38. package/lib/scripts/stats/stats.js +40 -0
  39. package/lib/scripts/stats/stats.js.map +1 -0
  40. package/lib/scripts/stats/updateUsage.d.ts +3 -0
  41. package/lib/scripts/stats/updateUsage.js +29 -0
  42. package/lib/scripts/stats/updateUsage.js.map +1 -0
  43. package/package.json +9 -4
package/docs/doc.md CHANGED
@@ -19,6 +19,9 @@
19
19
  <dt><a href="#mobile">mobile</a></dt>
20
20
  <dd><p>Global namespace for mobile modules.</p>
21
21
  </dd>
22
+ <dt><a href="#flp">flp</a></dt>
23
+ <dd><p>Global namespace for Fiori Launchpad (FLP) modules.</p>
24
+ </dd>
22
25
  </dl>
23
26
 
24
27
  <a name="common"></a>
@@ -45,7 +48,7 @@ Global namespace for common modules.
45
48
  * [.getNextYear([format])](#common.date.getNextYear) ⇒ <code>String</code>
46
49
  * [.getPreviousYear([format])](#common.date.getPreviousYear) ⇒ <code>String</code>
47
50
  * [.getSpecific(date, [format])](#common.date.getSpecific) ⇒ <code>String</code>
48
- * [.calculate([date], [format])](#common.date.calculate) ⇒ <code>String</code>
51
+ * [.calculate([date], [format])](#common.date.calculate) ⇒ <code>String</code> \| <code>Date</code>
49
52
  * [.navigation](#common.navigation)
50
53
  * [.navigateToUrl(url)](#common.navigation.navigateToUrl)
51
54
  * [.navigateToUrlAndRetry(url, [retries], [interval])](#common.navigation.navigateToUrlAndRetry)
@@ -192,7 +195,7 @@ await common.assertion.expectUrlToBe("www.sap.com");
192
195
  * [.getNextYear([format])](#common.date.getNextYear) ⇒ <code>String</code>
193
196
  * [.getPreviousYear([format])](#common.date.getPreviousYear) ⇒ <code>String</code>
194
197
  * [.getSpecific(date, [format])](#common.date.getSpecific) ⇒ <code>String</code>
195
- * [.calculate([date], [format])](#common.date.calculate) ⇒ <code>String</code>
198
+ * [.calculate([date], [format])](#common.date.calculate) ⇒ <code>String</code> \| <code>Date</code>
196
199
 
197
200
  <a name="common.date.getToday"></a>
198
201
 
@@ -309,11 +312,11 @@ const date = await common.date.getSpecific("2020, 0, 17", "mm/dd/yyyy");
309
312
  ```
310
313
  <a name="common.date.calculate"></a>
311
314
 
312
- #### date.calculate([date], [format]) ⇒ <code>String</code>
315
+ #### date.calculate([date], [format]) ⇒ <code>String</code> \| <code>Date</code>
313
316
  Calculates the date based on the input parameter and returns it in the given format.
314
317
 
315
318
  **Kind**: static method of [<code>date</code>](#common.date)
316
- **Returns**: <code>String</code> - The calculated date in the given format.
319
+ **Returns**: <code>String</code> \| <code>Date</code> - The calculated date in the given format.
317
320
 
318
321
  | Param | Type | Default | Description |
319
322
  | --- | --- | --- | --- |
@@ -619,6 +622,7 @@ Global namespace for util modules.
619
622
  * [.executeOptional(fct, args)](#util.function.executeOptional)
620
623
  * [.system](#util.system)
621
624
  * [.getOS()](#util.system.getOS) ⇒ <code>String</code>
625
+ * [.userSettings](#util.userSettings)
622
626
 
623
627
  <a name="util.browser"></a>
624
628
 
@@ -1676,6 +1680,10 @@ Returns the current operating system.
1676
1680
  ```js
1677
1681
  const os = await util.system.getOS();
1678
1682
  ```
1683
+ <a name="util.userSettings"></a>
1684
+
1685
+ ### util.userSettings
1686
+ **Kind**: static class of [<code>util</code>](#util)
1679
1687
  <a name="ui5"></a>
1680
1688
 
1681
1689
  ## ui5
@@ -5776,7 +5784,7 @@ Global namespace for mobile modules.
5776
5784
  * [.pressKeyByName(keyName)](#mobile.android.pressKeyByName)
5777
5785
  * [.pressKeyByCode(keyCode)](#mobile.android.pressKeyByCode)
5778
5786
  * [.device](#mobile.device)
5779
- * [.isAppInstalled(packageIdorBundleId)](#mobile.device.isAppInstalled) ⇒ <code>boolean</code>
5787
+ * [.isAppInstalled(packageIdOrBundleId)](#mobile.device.isAppInstalled) ⇒ <code>boolean</code>
5780
5788
  * [.installApp(appPath)](#mobile.device.installApp)
5781
5789
  * [.element](#mobile.element)
5782
5790
  * [.isVisible(element, [strict])](#mobile.element.isVisible) ⇒ <code>Boolean</code>
@@ -5786,7 +5794,7 @@ Global namespace for mobile modules.
5786
5794
  * [.waitToBeClickable(selector, [timeout])](#mobile.element.waitToBeClickable)
5787
5795
  * [.isSelected(elem)](#mobile.element.isSelected) ⇒ <code>boolean</code>
5788
5796
  * [.gestures](#mobile.gestures)
5789
- * [.waitToBeClickable(startX, startY, endX, endY, duration)](#mobile.gestures.waitToBeClickable) ⇒ <code>Promise.&lt;void&gt;</code>
5797
+ * [.swipe(startX, startY, endX, endY, duration)](#mobile.gestures.swipe) ⇒ <code>Promise.&lt;void&gt;</code>
5790
5798
  * [.ios](#mobile.ios)
5791
5799
  * [.userInteraction](#mobile.userInteraction)
5792
5800
  * [.tap(element, [timeout])](#mobile.userInteraction.tap)
@@ -5820,76 +5828,13 @@ await mobile.device.pressKeyByName("back");
5820
5828
  ```js
5821
5829
  await mobile.device.pressKeyByName("home");
5822
5830
  ```
5823
- **Example**
5824
- ```js
5825
- await mobile.device.pressKeyByName("volumeUp");
5826
- ```
5827
- **Example**
5828
- ```js
5829
- await mobile.device.pressKeyByName("volumeDown");
5830
- ```
5831
- **Example**
5832
- ```js
5833
- await mobile.device.pressKeyByName("volumeMute");
5834
- ```
5835
- **Example**
5836
- ```js
5837
- await mobile.device.pressKeyByName("power");
5838
- ```
5839
- **Example**
5840
- ```js
5841
- await mobile.device.pressKeyByName("enter");
5842
- ```
5843
- **Example**
5844
- ```js
5845
- await mobile.device.pressKeyByName("space");
5846
- ```
5847
- **Example**
5848
- ```js
5849
- await mobile.device.pressKeyByName("delete");
5850
- ```
5851
- **Example**
5852
- ```js
5853
- await mobile.device.pressKeyByName("menu");
5854
- ```
5855
- **Example**
5856
- ```js
5857
- await mobile.device.pressKeyByName("search");
5858
- ```
5859
- **Example**
5860
- ```js
5861
- await mobile.device.pressKeyByName("camera");
5862
- ```
5863
- **Example**
5864
- ```js
5865
- await mobile.device.pressKeyByName("focus");
5866
- ```
5867
- **Example**
5868
- ```js
5869
- await mobile.device.pressKeyByName("notification");
5870
- ```
5871
- **Example**
5872
- ```js
5873
- await mobile.device.pressKeyByName("call");
5874
- ```
5875
- **Example**
5876
- ```js
5877
- await mobile.device.pressKeyByName("calendar");
5878
- ```
5879
- **Example**
5880
- ```js
5881
- await mobile.device.pressKeyByName("recent");
5882
- ```
5883
- **Example**
5884
- ```js
5885
- await mobile.device.pressKeyByName("settings");
5886
- ```
5887
5831
  <a name="mobile.android.pressKeyByCode"></a>
5888
5832
 
5889
5833
  #### android.pressKeyByCode(keyCode)
5890
5834
  Simulate pressing a hardware key on the android device (e.g., back button, home button, etc.),
5891
5835
 
5892
5836
  **Kind**: static method of [<code>android</code>](#mobile.android)
5837
+ **See**: https://developer.android.com/reference/android/view/KeyEvent
5893
5838
 
5894
5839
  | Param | Type | Description |
5895
5840
  | --- | --- | --- |
@@ -5905,12 +5850,12 @@ await mobile.android.pressKeyByCode(4);
5905
5850
  **Kind**: static class of [<code>mobile</code>](#mobile)
5906
5851
 
5907
5852
  * [.device](#mobile.device)
5908
- * [.isAppInstalled(packageIdorBundleId)](#mobile.device.isAppInstalled) ⇒ <code>boolean</code>
5853
+ * [.isAppInstalled(packageIdOrBundleId)](#mobile.device.isAppInstalled) ⇒ <code>boolean</code>
5909
5854
  * [.installApp(appPath)](#mobile.device.installApp)
5910
5855
 
5911
5856
  <a name="mobile.device.isAppInstalled"></a>
5912
5857
 
5913
- #### device.isAppInstalled(packageIdorBundleId) ⇒ <code>boolean</code>
5858
+ #### device.isAppInstalled(packageIdOrBundleId) ⇒ <code>boolean</code>
5914
5859
  Check wether given package/bundle app is installed or not in the device.
5915
5860
 
5916
5861
  **Kind**: static method of [<code>device</code>](#mobile.device)
@@ -5918,7 +5863,7 @@ Check wether given package/bundle app is installed or not in the device.
5918
5863
 
5919
5864
  | Param | Type | Description |
5920
5865
  | --- | --- | --- |
5921
- | packageIdorBundleId | <code>string</code> | Android package Id, or iOS bundle Id. |
5866
+ | packageIdOrBundleId | <code>string</code> | Android package Id, or iOS bundle Id. |
5922
5867
 
5923
5868
  **Example**
5924
5869
  ```js
@@ -6079,9 +6024,9 @@ const isSelected = await mobile.element.isSelected(elem);
6079
6024
 
6080
6025
  ### mobile.gestures
6081
6026
  **Kind**: static class of [<code>mobile</code>](#mobile)
6082
- <a name="mobile.gestures.waitToBeClickable"></a>
6027
+ <a name="mobile.gestures.swipe"></a>
6083
6028
 
6084
- #### gestures.waitToBeClickable(startX, startY, endX, endY, duration) ⇒ <code>Promise.&lt;void&gt;</code>
6029
+ #### gestures.swipe(startX, startY, endX, endY, duration) ⇒ <code>Promise.&lt;void&gt;</code>
6085
6030
  Swipe from one point to another on the screen.
6086
6031
 
6087
6032
  **Kind**: static method of [<code>gestures</code>](#mobile.gestures)
@@ -6138,3 +6083,143 @@ Checks the given checkbox.
6138
6083
  ```js
6139
6084
  await mobile.userInteraction.check(selector);
6140
6085
  ```
6086
+ <a name="flp"></a>
6087
+
6088
+ ## flp
6089
+ Global namespace for Fiori Launchpad (FLP) modules.
6090
+
6091
+ **Kind**: global constant
6092
+
6093
+ * [flp](#flp)
6094
+ * [.userLocks](#flp.userLocks)
6095
+ * [.getNumberOfLockEntries(user, password, [technicalUserId])](#flp.userLocks.getNumberOfLockEntries) ⇒ <code>Promise.&lt;Number&gt;</code>
6096
+ * [.deleteExistingLockEntries(user, password, [technicalUserId])](#flp.userLocks.deleteExistingLockEntries)
6097
+ * [.userSettings](#flp.userSettings)
6098
+ * [.setLanguageFromUserSettings(user, password)](#flp.userSettings.setLanguageFromUserSettings) ⇒ <code>Promise.&lt;void&gt;</code>
6099
+ * [.setDateFormatFromUserSettings(user, password)](#flp.userSettings.setDateFormatFromUserSettings) ⇒ <code>Promise.&lt;void&gt;</code>
6100
+ * [.setDateFormatFromUserSettings(user, password)](#flp.userSettings.setDateFormatFromUserSettings) ⇒ <code>Promise.&lt;void&gt;</code>
6101
+ * [.setTimeZoneFromUserSettings(user, password)](#flp.userSettings.setTimeZoneFromUserSettings) ⇒ <code>Promise.&lt;void&gt;</code>
6102
+
6103
+ <a name="flp.userLocks"></a>
6104
+
6105
+ ### flp.userLocks
6106
+ **Kind**: static class of [<code>flp</code>](#flp)
6107
+
6108
+ * [.userLocks](#flp.userLocks)
6109
+ * [.getNumberOfLockEntries(user, password, [technicalUserId])](#flp.userLocks.getNumberOfLockEntries) ⇒ <code>Promise.&lt;Number&gt;</code>
6110
+ * [.deleteExistingLockEntries(user, password, [technicalUserId])](#flp.userLocks.deleteExistingLockEntries)
6111
+
6112
+ <a name="flp.userLocks.getNumberOfLockEntries"></a>
6113
+
6114
+ #### userLocks.getNumberOfLockEntries(user, password, [technicalUserId]) ⇒ <code>Promise.&lt;Number&gt;</code>
6115
+ Gets the number of lock entries for the given user.
6116
+
6117
+ **Kind**: static method of [<code>userLocks</code>](#flp.userLocks)
6118
+ **Returns**: <code>Promise.&lt;Number&gt;</code> - The number of lock entries.
6119
+
6120
+ | Param | Type | Description |
6121
+ | --- | --- | --- |
6122
+ | user | <code>String</code> | The user name. |
6123
+ | password | <code>String</code> | The password. |
6124
+ | [technicalUserId] | <code>String</code> | The technical user ID. |
6125
+
6126
+ **Example**
6127
+ ```js
6128
+ const lockCount = await flp.userLocks.getNumberOfLockEntries("user", "password");
6129
+ ```
6130
+ <a name="flp.userLocks.deleteExistingLockEntries"></a>
6131
+
6132
+ #### userLocks.deleteExistingLockEntries(user, password, [technicalUserId])
6133
+ Deletes the existing lock entries for the given user.
6134
+
6135
+ **Kind**: static method of [<code>userLocks</code>](#flp.userLocks)
6136
+
6137
+ | Param | Type | Description |
6138
+ | --- | --- | --- |
6139
+ | user | <code>String</code> | The user name. |
6140
+ | password | <code>String</code> | The password. |
6141
+ | [technicalUserId] | <code>String</code> | The technical user ID. |
6142
+
6143
+ **Example**
6144
+ ```js
6145
+ await flp.userLocks.deleteExistingLockEntries("user", "password");
6146
+ ```
6147
+ <a name="flp.userSettings"></a>
6148
+
6149
+ ### flp.userSettings
6150
+ **Kind**: static class of [<code>flp</code>](#flp)
6151
+
6152
+ * [.userSettings](#flp.userSettings)
6153
+ * [.setLanguageFromUserSettings(user, password)](#flp.userSettings.setLanguageFromUserSettings) ⇒ <code>Promise.&lt;void&gt;</code>
6154
+ * [.setDateFormatFromUserSettings(user, password)](#flp.userSettings.setDateFormatFromUserSettings) ⇒ <code>Promise.&lt;void&gt;</code>
6155
+ * [.setDateFormatFromUserSettings(user, password)](#flp.userSettings.setDateFormatFromUserSettings) ⇒ <code>Promise.&lt;void&gt;</code>
6156
+ * [.setTimeZoneFromUserSettings(user, password)](#flp.userSettings.setTimeZoneFromUserSettings) ⇒ <code>Promise.&lt;void&gt;</code>
6157
+
6158
+ <a name="flp.userSettings.setLanguageFromUserSettings"></a>
6159
+
6160
+ #### userSettings.setLanguageFromUserSettings(user, password) ⇒ <code>Promise.&lt;void&gt;</code>
6161
+ Sets the environment variable 'USER_SETTINGS_LANG_KEY' language from user settings.
6162
+
6163
+ **Kind**: static method of [<code>userSettings</code>](#flp.userSettings)
6164
+ **Returns**: <code>Promise.&lt;void&gt;</code> - A promise that resolves when the language has been set.
6165
+
6166
+ | Param | Type | Description |
6167
+ | --- | --- | --- |
6168
+ | user | <code>String</code> | The username for authentication. |
6169
+ | password | <code>String</code> | The password for authentication. |
6170
+
6171
+ **Example**
6172
+ ```js
6173
+ await flp.userSettings.setLanguageFromUserSettings("user", "password");
6174
+ ```
6175
+ <a name="flp.userSettings.setDateFormatFromUserSettings"></a>
6176
+
6177
+ #### userSettings.setDateFormatFromUserSettings(user, password) ⇒ <code>Promise.&lt;void&gt;</code>
6178
+ Sets the environment variable 'USER_SETTINGS_DATE_FORMAT' date format from user settings.
6179
+
6180
+ **Kind**: static method of [<code>userSettings</code>](#flp.userSettings)
6181
+ **Returns**: <code>Promise.&lt;void&gt;</code> - A promise that resolves when the date format has been set.
6182
+
6183
+ | Param | Type | Description |
6184
+ | --- | --- | --- |
6185
+ | user | <code>String</code> | The username for authentication. |
6186
+ | password | <code>String</code> | The password for authentication. |
6187
+
6188
+ **Example**
6189
+ ```js
6190
+ await flp.userSettings.setDateFormatFromUserSettings("user", "password");
6191
+ ```
6192
+ <a name="flp.userSettings.setDateFormatFromUserSettings"></a>
6193
+
6194
+ #### userSettings.setDateFormatFromUserSettings(user, password) ⇒ <code>Promise.&lt;void&gt;</code>
6195
+ Sets the environment variable 'USER_SETTINGS_DATE_FORMAT' date format from user settings.
6196
+
6197
+ **Kind**: static method of [<code>userSettings</code>](#flp.userSettings)
6198
+ **Returns**: <code>Promise.&lt;void&gt;</code> - A promise that resolves when the date format has been set.
6199
+
6200
+ | Param | Type | Description |
6201
+ | --- | --- | --- |
6202
+ | user | <code>String</code> | The username for authentication. |
6203
+ | password | <code>String</code> | The password for authentication. |
6204
+
6205
+ **Example**
6206
+ ```js
6207
+ await flp.userSettings.setDateFormatFromUserSettings("user", "password");
6208
+ ```
6209
+ <a name="flp.userSettings.setTimeZoneFromUserSettings"></a>
6210
+
6211
+ #### userSettings.setTimeZoneFromUserSettings(user, password) ⇒ <code>Promise.&lt;void&gt;</code>
6212
+ Sets the environment variable 'USER_SETTINGS_TIME_ZONE' time zone from user settings.
6213
+
6214
+ **Kind**: static method of [<code>userSettings</code>](#flp.userSettings)
6215
+ **Returns**: <code>Promise.&lt;void&gt;</code> - A promise that resolves when the time zone has been set.
6216
+
6217
+ | Param | Type | Description |
6218
+ | --- | --- | --- |
6219
+ | user | <code>String</code> | The username for authentication. |
6220
+ | password | <code>String</code> | The password for authentication. |
6221
+
6222
+ **Example**
6223
+ ```js
6224
+ await flp.userSettings.setTimeZoneFromUserSettings("user", "password");
6225
+ ```
package/lib/index.js CHANGED
@@ -24,6 +24,7 @@ module.exports = class CustomWorkerService {
24
24
  */
25
25
  // @ts-ignore
26
26
  constructor(serviceOptions, capabilities, config) {
27
+ this._statsUsageId = null;
27
28
  this.config = config;
28
29
  }
29
30
  /**
@@ -42,7 +43,9 @@ module.exports = class CustomWorkerService {
42
43
  `;
43
44
  console.log(logo);
44
45
  try {
45
- await (0, onPrepare_1.default)(config, capabilities);
46
+ await (0, onPrepare_1.default)(config, capabilities, (statsUsageId) => {
47
+ this._statsUsageId = statsUsageId;
48
+ });
46
49
  }
47
50
  catch (e) {
48
51
  console.error(`onPrepare hook failed: ${e}`);
@@ -147,7 +150,7 @@ module.exports = class CustomWorkerService {
147
150
  */
148
151
  async onComplete(exitCode, config, capabilities, results) {
149
152
  try {
150
- await (0, onComplete_1.default)(exitCode, config, capabilities, results);
153
+ await (0, onComplete_1.default)(exitCode, config, capabilities, results, this._statsUsageId);
151
154
  }
152
155
  catch (e) {
153
156
  util.console.error(`onComplete 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,6EAA0E;AAC1E,MAAM,EAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;AAEtC,MAAM,CAAC,OAAO,GAAG,MAAM,mBAAmB;IAExC;;;;;;;;;OASG;IACH,aAAa;IACb,YAAY,cAAc,EAAE,YAAY,EAAE,MAAM;QAC9C,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED;;;;OAIG;IACH,aAAa;IACb,KAAK,CAAC,SAAS,CAAC,MAAM,EAAE,YAAY;QAClC,MAAM,IAAI,GAAG;;;;;4BAKW,EAAE,CAAC,OAAO;OAC/B,CAAC;QACJ,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAClB,IAAI,CAAC;YACH,MAAM,IAAA,mBAAa,EAAC,MAAM,EAAE,YAAY,CAAC,CAAC;QAC5C,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,KAAK,CAAC,0BAA0B,CAAC,EAAE,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC;IAED;;;;;;OAMG;IACH,aAAa;IACb,KAAK,CAAC,aAAa,CAAC,MAAM,EAAE,YAAY,EAAE,KAAK;QAC7C,IAAI,CAAC;YACH,IAAI,IAAA,mCAAgB,GAAE,EAAE,CAAC;gBACvB,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC;YAC1B,CAAC;YACD,MAAM,IAAA,uBAAkB,EAAC,MAAM,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC;YACtD,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACvB,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,KAAK,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;gBACtB,mEAAmE;gBACnE,OAAO,CAAC,KAAK,CAAC,0DAA0D,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAC7F,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,KAAK,CAAC,iDAAiD,CAAC,EAAE,CAAC,CAAC;YACtE,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;;;;OAMG;IACH,aAAa;IACb,KAAK,CAAC,MAAM,CAAC,YAAY,EAAE,KAAK,EAAE,OAAO;QACvC,8GAA8G;QAC9G,IAAI,CAAC;YACH,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;YAC7B,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC;YACvC,MAAM,IAAA,gBAAW,EAAC,YAAY,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;QAClD,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,KAAK,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;gBACtB,mEAAmE;gBACnE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,mDAAmD,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAC3F,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,0CAA0C,CAAC,EAAE,CAAC,CAAC;YACpE,CAAC;QACH,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,WAAW,CAAC,KAAU;QAC1B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,SAAS,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAC9D,CAAC;IAED;;OAEG;IACH,aAAa;IACb,KAAK,CAAC,SAAS,CAAC,IAAS,EAAE,OAAY,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE;QACnF,mCAAmC;QACnC,2CAA2C;QAC3C,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,WAAW,CAAC;QAChD,sDAAsD;QACtD,IAAI,CAAC,KAAK,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;YAC9B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,QAAQ,aAAa,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC;QACzF,CAAC;aAAM,IAAI,KAAK,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;YACpC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,eAAe,QAAQ,aAAa,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1F,CAAC;IACH,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,KAAK,CAAC,MAAc,EAAE,YAAiB,EAAE,KAAU;QACvD,IAAI,CAAC;YACH,MAAM,IAAA,eAAS,EAAC,MAAM,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC;QAC/C,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,sBAAsB,CAAC,EAAE,CAAC,CAAC;QAChD,CAAC;IACH,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,UAAU,CAAC,QAAgB,EAAE,MAAW,EAAE,YAAiB,EAAE,OAAY;QAC7E,IAAI,CAAC;YACH,MAAM,IAAA,oBAAc,EAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC;QAChE,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,2BAA2B,CAAC,EAAE,CAAC,CAAC;QACrD,CAAC;IACH,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -28,13 +28,111 @@ export declare class UserLocks {
28
28
  * @example await flp.userLocks.deleteExistingLockEntries("user", "password");
29
29
  */
30
30
  deleteExistingLockEntries(user: string, password: string, technicalUserId?: string): Promise<void>;
31
+ /**
32
+ * @private
33
+ * @function getLockCount
34
+ * @memberOf flp.userLocks
35
+ * @description Gets the number of locks for the user on the same session.
36
+ * @param {Array} sessions - The sessions.
37
+ * @returns {Number} The number of locks.
38
+ * @example const lockCount = flp.userLocks.getLockCount(sessions);
39
+ */
40
+ private _getLockCount;
41
+ /**
42
+ * @private
43
+ * @function _getSessionId
44
+ * @memberOf flp.userLocks
45
+ * @description Gets the session ID.
46
+ * @param {Array} sessions - The sessions.
47
+ * @returns {String} The session ID.
48
+ * @example const sessionId = flp.userLocks.getSessionId(sessions);
49
+ */
50
+ private _getSessionId;
51
+ /**
52
+ * @private
53
+ * @function _initializeService
54
+ * @memberOf flp.userLocks
55
+ * @description Initializes the service.
56
+ * @param {Object} instance - The service instance.
57
+ * @param {String} serviceName - The service name.
58
+ * @param {String} user - The user name.
59
+ * @param {String} [password] - The password.
60
+ * @returns {Promise<Object>} The service instance.
61
+ */
31
62
  private _initializeService;
63
+ /**
64
+ * @private
65
+ * @function _initializeUserLockService
66
+ * @memberOf flp.userLocks
67
+ * @description Initializes the User Lock Service.
68
+ * @param {String} user - The user name.
69
+ * @param {String} password - The password.
70
+ * @returns {Promise<void>}
71
+ */
32
72
  private _initializeUserLockService;
73
+ /**
74
+ * @private
75
+ * @function _initializeSearchService
76
+ * @memberOf flp.userLocks
77
+ * @description Initializes the Search Service.
78
+ * @param {String} user - The user name.
79
+ * @param {String} password - The password.
80
+ * @returns {Promise<void>}
81
+ */
33
82
  private _initializeSearchService;
83
+ /**
84
+ * @private
85
+ * @function _initializeRequestOptions
86
+ * @memberOf flp.userLocks
87
+ * @description Initializes the request options.
88
+ * @param {String} client - The client number.
89
+ * @param {String} userId - The user ID.
90
+ * @param {String} [sessionId] - The session ID.
91
+ * @returns {void}
92
+ */
34
93
  private _initializeRequestOptions;
94
+ /**
95
+ * @private
96
+ * @function _getUserInfo
97
+ * @memberOf flp.userLocks
98
+ * @description Gets the user info.
99
+ * @returns {Promise<UserInfo>} The user info.
100
+ * @throws {Error} If the user info cannot be retrieved.
101
+ * @example const userInfo = await flp.userLocks.getUserInfo();
102
+ * @example console.log(userInfo.Id);
103
+ * @example console.log(userInfo.Name);
104
+ */
35
105
  private _getUserInfo;
106
+ /**
107
+ * @private
108
+ * @function _extractClientFromUrl
109
+ * @memberOf flp.userLocks
110
+ * @description Extracts the client number from the URL.
111
+ * @param {String} url - The URL.
112
+ * @returns {String} The client number.
113
+ * @throws {Error} If the client number cannot be found in the URL.
114
+ * @example const client = flp.userLocks.extractClientFromUrl("https://www-123.example.com");
115
+ * @example console.log(client);
116
+ * @example // Output: 123
117
+ */
36
118
  private _extractClientFromUrl;
37
- private _getLockEntries;
119
+ /**
120
+ * @private
121
+ * @function _getSession
122
+ * @memberOf flp.userLocks
123
+ * @description Gets the session.
124
+ * @returns {Promise<any>} The session.
125
+ * @example const session = await flp.userLocks.getSession();
126
+ */
127
+ private _getSession;
128
+ /**
129
+ * @private
130
+ * @function _deleteLockEntries
131
+ * @memberOf flp.userLocks
132
+ * @description Deletes the lock entries.
133
+ * @returns {Promise<void>}
134
+ * @example await flp.userLocks.deleteLockEntries();
135
+ */
38
136
  private _deleteLockEntries;
39
137
  }
40
138
  declare const _default: UserLocks;
@@ -15,7 +15,7 @@ class UserLocks {
15
15
  this._requestOptions = {
16
16
  Client: "",
17
17
  UserId: "",
18
- SessionId: "*" // Default to all sessions
18
+ SessionId: ""
19
19
  };
20
20
  }
21
21
  // Public Functions
@@ -44,13 +44,12 @@ class UserLocks {
44
44
  // Extract client and prepare request options
45
45
  const client = this._extractClientFromUrl(browser.config.params.systemUrl);
46
46
  this._initializeRequestOptions(client, resolvedUserId);
47
- // Get lock entries
48
- const locks = await this._getLockEntries();
49
- const lockCount = locks.NumberOfLocks;
50
- // Log the result
47
+ const sessions = await this._getSession();
48
+ const lockCount = this._getLockCount(sessions);
51
49
  if (lockCount > 0) {
52
50
  util.console.warn(`User '${resolvedUserName}' with ID '${resolvedUserId}' has ${lockCount} lock/s.`);
53
- this._requestOptions.SessionId = locks.SessionId;
51
+ //if there are locks, set the session ID to the first session, since it is needed for deletion.
52
+ this._requestOptions.SessionId = this._getSessionId(sessions);
54
53
  }
55
54
  else {
56
55
  util.console.success(`User '${resolvedUserName}' with ID '${resolvedUserId}' has no locks.`);
@@ -73,6 +72,46 @@ class UserLocks {
73
72
  }
74
73
  }
75
74
  // Private Functions
75
+ /**
76
+ * @private
77
+ * @function getLockCount
78
+ * @memberOf flp.userLocks
79
+ * @description Gets the number of locks for the user on the same session.
80
+ * @param {Array} sessions - The sessions.
81
+ * @returns {Number} The number of locks.
82
+ * @example const lockCount = flp.userLocks.getLockCount(sessions);
83
+ */
84
+ _getLockCount(sessions) {
85
+ if (sessions.length > 0) {
86
+ return sessions[0].NumberOfLocks; //Always uses the first session.
87
+ }
88
+ else {
89
+ return 0;
90
+ }
91
+ }
92
+ /**
93
+ * @private
94
+ * @function _getSessionId
95
+ * @memberOf flp.userLocks
96
+ * @description Gets the session ID.
97
+ * @param {Array} sessions - The sessions.
98
+ * @returns {String} The session ID.
99
+ * @example const sessionId = flp.userLocks.getSessionId(sessions);
100
+ */
101
+ _getSessionId(sessions) {
102
+ return sessions[0].SessionId;
103
+ }
104
+ /**
105
+ * @private
106
+ * @function _initializeService
107
+ * @memberOf flp.userLocks
108
+ * @description Initializes the service.
109
+ * @param {Object} instance - The service instance.
110
+ * @param {String} serviceName - The service name.
111
+ * @param {String} user - The user name.
112
+ * @param {String} [password] - The password.
113
+ * @returns {Promise<Object>} The service instance.
114
+ */
76
115
  async _initializeService(instance, serviceName, user, password = "Welcome1!") {
77
116
  if (!instance) {
78
117
  const params = browser.config.params;
@@ -89,12 +128,40 @@ class UserLocks {
89
128
  }
90
129
  return instance;
91
130
  }
131
+ /**
132
+ * @private
133
+ * @function _initializeUserLockService
134
+ * @memberOf flp.userLocks
135
+ * @description Initializes the User Lock Service.
136
+ * @param {String} user - The user name.
137
+ * @param {String} password - The password.
138
+ * @returns {Promise<void>}
139
+ */
92
140
  async _initializeUserLockService(user, password) {
93
141
  this._srvUserLockInstance = await this._initializeService(this._srvUserLockInstance, "APS_IAM_MUS_V2UI", user, password);
94
142
  }
143
+ /**
144
+ * @private
145
+ * @function _initializeSearchService
146
+ * @memberOf flp.userLocks
147
+ * @description Initializes the Search Service.
148
+ * @param {String} user - The user name.
149
+ * @param {String} password - The password.
150
+ * @returns {Promise<void>}
151
+ */
95
152
  async _initializeSearchService(user, password) {
96
153
  this._srvEshInstance = await this._initializeService(this._srvEshInstance, "ESH_SEARCH_SRV", user, password);
97
154
  }
155
+ /**
156
+ * @private
157
+ * @function _initializeRequestOptions
158
+ * @memberOf flp.userLocks
159
+ * @description Initializes the request options.
160
+ * @param {String} client - The client number.
161
+ * @param {String} userId - The user ID.
162
+ * @param {String} [sessionId] - The session ID.
163
+ * @returns {void}
164
+ */
98
165
  _initializeRequestOptions(client, userId, sessionId = "*") {
99
166
  this._requestOptions = {
100
167
  Client: client,
@@ -102,6 +169,17 @@ class UserLocks {
102
169
  SessionId: sessionId
103
170
  };
104
171
  }
172
+ /**
173
+ * @private
174
+ * @function _getUserInfo
175
+ * @memberOf flp.userLocks
176
+ * @description Gets the user info.
177
+ * @returns {Promise<UserInfo>} The user info.
178
+ * @throws {Error} If the user info cannot be retrieved.
179
+ * @example const userInfo = await flp.userLocks.getUserInfo();
180
+ * @example console.log(userInfo.Id);
181
+ * @example console.log(userInfo.Name);
182
+ */
105
183
  async _getUserInfo() {
106
184
  try {
107
185
  const users = await service.odata.get(this._srvEshInstance, "Users", {});
@@ -112,6 +190,18 @@ class UserLocks {
112
190
  throw new Error(`Failed to get user info: ${errorMessage}`);
113
191
  }
114
192
  }
193
+ /**
194
+ * @private
195
+ * @function _extractClientFromUrl
196
+ * @memberOf flp.userLocks
197
+ * @description Extracts the client number from the URL.
198
+ * @param {String} url - The URL.
199
+ * @returns {String} The client number.
200
+ * @throws {Error} If the client number cannot be found in the URL.
201
+ * @example const client = flp.userLocks.extractClientFromUrl("https://www-123.example.com");
202
+ * @example console.log(client);
203
+ * @example // Output: 123
204
+ */
115
205
  _extractClientFromUrl(url) {
116
206
  const regex = /https:\/\/\w{3}-(\d{3})\./;
117
207
  const match = url.match(regex);
@@ -119,9 +209,25 @@ class UserLocks {
119
209
  return match[1];
120
210
  throw new Error("Client number not found in the URL");
121
211
  }
122
- async _getLockEntries() {
123
- return service.odata.get(this._srvUserLockInstance, "Session", this._requestOptions);
212
+ /**
213
+ * @private
214
+ * @function _getSession
215
+ * @memberOf flp.userLocks
216
+ * @description Gets the session.
217
+ * @returns {Promise<any>} The session.
218
+ * @example const session = await flp.userLocks.getSession();
219
+ */
220
+ async _getSession() {
221
+ return service.odata.get(this._srvUserLockInstance, "Session", {});
124
222
  }
223
+ /**
224
+ * @private
225
+ * @function _deleteLockEntries
226
+ * @memberOf flp.userLocks
227
+ * @description Deletes the lock entries.
228
+ * @returns {Promise<void>}
229
+ * @example await flp.userLocks.deleteLockEntries();
230
+ */
125
231
  async _deleteLockEntries() {
126
232
  const response = await service.odata.callFunctionImport(this._srvUserLockInstance, "delete_session", this._requestOptions, true);
127
233
  const sapMessage = JSON.parse(response.headers.get("sap-message"));