@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.
- package/docs/doc.md +160 -75
- package/lib/index.js +5 -2
- package/lib/index.js.map +1 -1
- package/lib/reuse/modules/flp/userLocks.d.ts +99 -1
- package/lib/reuse/modules/flp/userLocks.js +114 -8
- package/lib/reuse/modules/flp/userLocks.js.map +1 -1
- package/lib/reuse/modules/flp/userSettings.d.ts +161 -2
- package/lib/reuse/modules/flp/userSettings.js +172 -13
- package/lib/reuse/modules/flp/userSettings.js.map +1 -1
- package/lib/scripts/hooks/onComplete.d.ts +1 -1
- package/lib/scripts/hooks/onComplete.js +14 -1
- package/lib/scripts/hooks/onComplete.js.map +1 -1
- package/lib/scripts/hooks/onPrepare.d.ts +1 -1
- package/lib/scripts/hooks/onPrepare.js +20 -1
- package/lib/scripts/hooks/onPrepare.js.map +1 -1
- package/lib/scripts/stats/createUsage.d.ts +10 -0
- package/lib/scripts/stats/createUsage.js +34 -0
- package/lib/scripts/stats/createUsage.js.map +1 -0
- package/lib/scripts/stats/getConfigurationInformation.d.ts +1 -0
- package/lib/scripts/stats/getConfigurationInformation.js +57 -0
- package/lib/scripts/stats/getConfigurationInformation.js.map +1 -0
- package/lib/scripts/stats/getEnvironment.d.ts +1 -0
- package/lib/scripts/stats/getEnvironment.js +8 -0
- package/lib/scripts/stats/getEnvironment.js.map +1 -0
- package/lib/scripts/stats/getOperatingSystem.d.ts +3 -0
- package/lib/scripts/stats/getOperatingSystem.js +39 -0
- package/lib/scripts/stats/getOperatingSystem.js.map +1 -0
- package/lib/scripts/stats/getRepositoryInformation.d.ts +1 -0
- package/lib/scripts/stats/getRepositoryInformation.js +49 -0
- package/lib/scripts/stats/getRepositoryInformation.js.map +1 -0
- package/lib/scripts/stats/getUserId.d.ts +1 -0
- package/lib/scripts/stats/getUserId.js +76 -0
- package/lib/scripts/stats/getUserId.js.map +1 -0
- package/lib/scripts/stats/getVersion.d.ts +1 -0
- package/lib/scripts/stats/getVersion.js +7 -0
- package/lib/scripts/stats/getVersion.js.map +1 -0
- package/lib/scripts/stats/stats.d.ts +2 -0
- package/lib/scripts/stats/stats.js +40 -0
- package/lib/scripts/stats/stats.js.map +1 -0
- package/lib/scripts/stats/updateUsage.d.ts +3 -0
- package/lib/scripts/stats/updateUsage.js +29 -0
- package/lib/scripts/stats/updateUsage.js.map +1 -0
- package/package.json +9 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"userLocks.js","sourceRoot":"","sources":["../../../../src/reuse/modules/flp/userLocks.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;AAEb,8DAAkE;AAOlE;;;GAGG;AACH,MAAa,SAAS;IAAtB;QACE,qBAAqB;QACb,QAAG,GAAG,IAAI,oCAAoB,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QACpD,yBAAoB,GAAQ,IAAI,CAAC;QACjC,oBAAe,GAAQ,IAAI,CAAC;QAE5B,oBAAe,GAAG;YACxB,MAAM,EAAE,EAAE;YACV,MAAM,EAAE,EAAE;YACV,SAAS,EAAE,
|
|
1
|
+
{"version":3,"file":"userLocks.js","sourceRoot":"","sources":["../../../../src/reuse/modules/flp/userLocks.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;AAEb,8DAAkE;AAOlE;;;GAGG;AACH,MAAa,SAAS;IAAtB;QACE,qBAAqB;QACb,QAAG,GAAG,IAAI,oCAAoB,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QACpD,yBAAoB,GAAQ,IAAI,CAAC;QACjC,oBAAe,GAAQ,IAAI,CAAC;QAE5B,oBAAe,GAAG;YACxB,MAAM,EAAE,EAAE;YACV,MAAM,EAAE,EAAE;YACV,SAAS,EAAE,EAAE;SACd,CAAC;IAwOJ,CAAC;IAtOC,mBAAmB;IACnB;;;;;;;;;OASG;IACI,KAAK,CAAC,sBAAsB,CAAC,IAAY,EAAE,QAAgB,EAAE,eAAwB;QAC1F,IAAI,cAAc,GAAG,eAAe,CAAC;QACrC,IAAI,gBAAgB,GAAG,IAAI,CAAC;QAE5B,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,qEAAqE;YACrE,MAAM,IAAI,CAAC,wBAAwB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;YACpD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;YAC3C,cAAc,GAAG,QAAQ,CAAC,EAAE,CAAC;YAC7B,gBAAgB,GAAG,QAAQ,CAAC,IAAI,CAAC;QACnC,CAAC;QAED,mCAAmC;QACnC,MAAM,IAAI,CAAC,0BAA0B,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAEtD,6CAA6C;QAC7C,MAAM,MAAM,GAAG,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAC3E,IAAI,CAAC,yBAAyB,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;QAEvD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QAC1C,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAE/C,IAAI,SAAS,GAAG,CAAC,EAAE,CAAC;YAClB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,gBAAgB,cAAc,cAAc,SAAS,SAAS,UAAU,CAAC,CAAC;YACrG,+FAA+F;YAC/F,IAAI,CAAC,eAAe,CAAC,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAChE,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,gBAAgB,cAAc,cAAc,iBAAiB,CAAC,CAAC;QAC/F,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;;;;;;;OAQG;IACI,KAAK,CAAC,yBAAyB,CAAC,IAAY,EAAE,QAAgB,EAAE,eAAwB;QAC7F,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,IAAI,EAAE,QAAQ,EAAE,eAAe,CAAC,CAAC;QACrF,IAAI,SAAS,GAAG,CAAC,EAAE,CAAC;YAClB,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAClC,CAAC;IACH,CAAC;IAED,oBAAoB;IACpB;;;;;;;;OAQG;IACK,aAAa,CAAC,QAAoB;QACxC,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxB,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,gCAAgC;QACpE,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,CAAC;QACX,CAAC;IACH,CAAC;IAED;;;;;;;;OAQG;IACK,aAAa,CAAC,QAAoB;QACxC,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/B,CAAC;IAED;;;;;;;;;;OAUG;IACK,KAAK,CAAC,kBAAkB,CAAC,QAAa,EAAE,WAAmB,EAAE,IAAY,EAAE,WAAmB,WAAW;QAC/G,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC;YACrC,IAAI,CAAC,MAAM,EAAE,SAAS,IAAI,CAAC,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAC7C,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAC;YAC/E,CAAC;YAED,IAAI,CAAC;gBACH,QAAQ,GAAG,MAAM,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,SAAS,sBAAsB,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;YAC9G,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;gBAC9E,MAAM,IAAI,KAAK,CAAC,iCAAiC,YAAY,EAAE,CAAC,CAAC;YACnE,CAAC;QACH,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;;;;;;;OAQG;IACK,KAAK,CAAC,0BAA0B,CAAC,IAAY,EAAE,QAAgB;QACrE,IAAI,CAAC,oBAAoB,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,oBAAoB,EAAE,kBAAkB,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;IAC3H,CAAC;IAED;;;;;;;;OAQG;IACK,KAAK,CAAC,wBAAwB,CAAC,IAAY,EAAE,QAAgB;QACnE,IAAI,CAAC,eAAe,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,eAAe,EAAE,gBAAgB,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;IAC/G,CAAC;IAED;;;;;;;;;OASG;IACK,yBAAyB,CAAC,MAAc,EAAE,MAAc,EAAE,YAAoB,GAAG;QACvF,IAAI,CAAC,eAAe,GAAG;YACrB,MAAM,EAAE,MAAM;YACd,MAAM,EAAE,MAAM;YACd,SAAS,EAAE,SAAS;SACrB,CAAC;IACJ,CAAC;IAED;;;;;;;;;;OAUG;IACK,KAAK,CAAC,YAAY;QACxB,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;YACzE,OAAO,KAAK,CAAC,CAAC,CAAa,CAAC;QAC9B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;YAC9E,MAAM,IAAI,KAAK,CAAC,4BAA4B,YAAY,EAAE,CAAC,CAAC;QAC9D,CAAC;IACH,CAAC;IAED;;;;;;;;;;;OAWG;IACK,qBAAqB,CAAC,GAAW;QACvC,MAAM,KAAK,GAAG,2BAA2B,CAAC;QAC1C,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC/B,IAAI,KAAK;YAAE,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC;QAC3B,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;IACxD,CAAC;IAED;;;;;;;OAOG;IACK,KAAK,CAAC,WAAW;QACvB,OAAO,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,oBAAoB,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;IACrE,CAAC;IAED;;;;;;;OAOG;IACK,KAAK,CAAC,kBAAkB;QAC9B,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,KAAK,CAAC,kBAAkB,CAAC,IAAI,CAAC,oBAAoB,EAAE,gBAAgB,EAAE,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC;QAEjI,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC;QACnE,IAAI,UAAU,EAAE,OAAO,KAAK,+BAA+B,EAAE,CAAC;YAC5D,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,mBAAmB,IAAI,CAAC,eAAe,CAAC,MAAM,sBAAsB,CAAC,CAAC;QAC7F,CAAC;IACH,CAAC;CACF;AAlPD,8BAkPC;AAED,kBAAe,IAAI,SAAS,EAAE,CAAC"}
|
|
@@ -1,26 +1,185 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @class userSettings
|
|
3
|
-
* @memberof
|
|
3
|
+
* @memberof flp
|
|
4
4
|
*/
|
|
5
5
|
export declare class UserSettings {
|
|
6
6
|
private vlf;
|
|
7
7
|
private _srvInstance;
|
|
8
|
-
|
|
8
|
+
/**
|
|
9
|
+
* @private
|
|
10
|
+
* @function _initS4UserSettingService
|
|
11
|
+
* @memberOf flp.userSettings
|
|
12
|
+
* @description Initializes the S4 User Setting Service.
|
|
13
|
+
* @param {String} user - The username for authentication.
|
|
14
|
+
* @param {String} password - The password for authentication.
|
|
15
|
+
* @example await flp.userSettings._initS4UserSettingService("user", "password");
|
|
16
|
+
* @returns {Promise<void>} A promise that resolves when the service has been initialized.
|
|
17
|
+
*/
|
|
18
|
+
private _initS4UserSettingService;
|
|
19
|
+
/**
|
|
20
|
+
* @function setLanguageFromUserSettings
|
|
21
|
+
* @memberOf flp.userSettings
|
|
22
|
+
* @description Sets the environment variable 'USER_SETTINGS_LANG_KEY' language from user settings.
|
|
23
|
+
* @param {String} user - The username for authentication.
|
|
24
|
+
* @param {String} password - The password for authentication.
|
|
25
|
+
* @example await flp.userSettings.setLanguageFromUserSettings("user", "password");
|
|
26
|
+
* @returns {Promise<void>} A promise that resolves when the language has been set.
|
|
27
|
+
*/
|
|
9
28
|
setLanguageFromUserSettings(user: string, password: string): Promise<void>;
|
|
29
|
+
/**
|
|
30
|
+
* @function setDateFormatFromUserSettings
|
|
31
|
+
* @memberOf flp.userSettings
|
|
32
|
+
* @description Sets the environment variable 'USER_SETTINGS_DATE_FORMAT' date format from user settings.
|
|
33
|
+
* @param {String} user - The username for authentication.
|
|
34
|
+
* @param {String} password - The password for authentication.
|
|
35
|
+
* @example await flp.userSettings.setDateFormatFromUserSettings("user", "password");
|
|
36
|
+
* @returns {Promise<void>} A promise that resolves when the date format has been set.
|
|
37
|
+
*/
|
|
10
38
|
setDateFormatFromUserSettings(user: string, password: string): Promise<void>;
|
|
39
|
+
/**
|
|
40
|
+
* @function setTimeFormatFromUserSettings
|
|
41
|
+
* @memberOf flp.userSettings
|
|
42
|
+
* @description Sets the environment variable 'USER_SETTINGS_DATE_FORMAT' time format from user settings.
|
|
43
|
+
* @param {String} user - The username for authentication.
|
|
44
|
+
* @param {String} password - The password for authentication.
|
|
45
|
+
* @example await flp.userSettings.setTimeFormatFromUserSettings("user", "password");
|
|
46
|
+
* @returns {Promise<void>} A promise that resolves when the time format has been set.
|
|
47
|
+
*/
|
|
11
48
|
setTimeFormatFromUserSettings(user: string, password: string): Promise<void>;
|
|
49
|
+
/**
|
|
50
|
+
* @function setTimeZoneFromUserSettings
|
|
51
|
+
* @memberOf flp.userSettings
|
|
52
|
+
* @description Sets the environment variable 'USER_SETTINGS_TIME_ZONE' time zone from user settings.
|
|
53
|
+
* @param {String} user - The username for authentication.
|
|
54
|
+
* @param {String} password - The password for authentication.
|
|
55
|
+
* @example await flp.userSettings.setTimeZoneFromUserSettings("user", "password");
|
|
56
|
+
* @returns {Promise<void>} A promise that resolves when the time zone has been set.
|
|
57
|
+
*/
|
|
12
58
|
setTimeZoneFromUserSettings(user: string, password: string): Promise<void>;
|
|
59
|
+
/**
|
|
60
|
+
* @function setNumberFormatFromUserSettings
|
|
61
|
+
* @memberOf flp.userSettings
|
|
62
|
+
* @description Sets the environment variable 'USER_SETTINGS_NUMBER_FORMAT' number format from user settings.
|
|
63
|
+
* @param {String} user - The username for authentication.
|
|
64
|
+
* @param {String} password - The password for authentication.
|
|
65
|
+
* @example await flp.userSettings.setNumberFormatFromUserSettings("user", "password");
|
|
66
|
+
* @returns {Promise<void>} A promise that resolves when the number format has been set.
|
|
67
|
+
*/
|
|
13
68
|
setNumberFormatFromUserSettings(user: string, password: string): Promise<void>;
|
|
69
|
+
/**
|
|
70
|
+
* @function setS4UserSettings
|
|
71
|
+
* @memberOf flp.userSettings
|
|
72
|
+
* @description Sets the user settings for S4.
|
|
73
|
+
* @param {String} user - The username for authentication.
|
|
74
|
+
* @param {String} password - The password for authentication.
|
|
75
|
+
* @example await flp.userSettings.setS4UserSettings("user", "password");
|
|
76
|
+
* @returns {Promise<void>} A promise that resolves when the user settings have been set.
|
|
77
|
+
*/
|
|
14
78
|
setS4UserSettings(user: string, password: string): Promise<void>;
|
|
79
|
+
/**
|
|
80
|
+
* @function getLanguageFromUserSettings
|
|
81
|
+
* @memberOf flp.userSettings
|
|
82
|
+
* @description Gets the language from user settings.
|
|
83
|
+
* @param {String} user - The username for authentication.
|
|
84
|
+
* @param {String} password - The password for authentication.
|
|
85
|
+
* @example const language = await flp.userSettings.getLanguageFromUserSettings("user", "password");
|
|
86
|
+
* @returns {Promise<String>} The language from user settings.
|
|
87
|
+
*/
|
|
15
88
|
getLanguageFromUserSettings(user: string, password: string): Promise<string>;
|
|
89
|
+
/**
|
|
90
|
+
* @function getDateFormatFromUserSettings
|
|
91
|
+
* @memberOf flp.userSettings
|
|
92
|
+
* @description Gets the date format from user settings.
|
|
93
|
+
* @param {String} user - The username for authentication.
|
|
94
|
+
* @param {String} password - The password for authentication.
|
|
95
|
+
* @example const dateFormat = await flp.userSettings.getDateFormatFromUserSettings("user", "password");
|
|
96
|
+
* @returns {Promise<String>} The date format from user settings.
|
|
97
|
+
*/
|
|
16
98
|
getDateFormatFromUserSettings(user: string, password: string): Promise<string>;
|
|
99
|
+
/**
|
|
100
|
+
* @function getTimeFormatFromUserSettings
|
|
101
|
+
* @memberOf flp.userSettings
|
|
102
|
+
* @description Gets the time format from user settings.
|
|
103
|
+
* @param {String} user - The username for authentication.
|
|
104
|
+
* @param {String} password - The password for authentication.
|
|
105
|
+
* @example const timeFormat = await flp.userSettings.getTimeFormatFromUserSettings("user", "password");
|
|
106
|
+
* @returns {Promise<String>} The time format from user settings.
|
|
107
|
+
*/
|
|
17
108
|
getTimeFormatFromUserSettings(user: string, password: string): Promise<string>;
|
|
109
|
+
/**
|
|
110
|
+
* @function getTimeZoneFromUserSettings
|
|
111
|
+
* @memberOf flp.userSettings
|
|
112
|
+
* @description Gets the time zone from user settings.
|
|
113
|
+
* @param {String} user - The username for authentication.
|
|
114
|
+
* @param {String} password - The password for authentication.
|
|
115
|
+
* @example const timeZone = await flp.userSettings.getTimeZoneFromUserSettings("user", "password");
|
|
116
|
+
* @returns {Promise<String>} The time zone from user settings.
|
|
117
|
+
*/
|
|
18
118
|
getTimeZoneFromUserSettings(user: string, password: string): Promise<string>;
|
|
119
|
+
/**
|
|
120
|
+
* @function getNumberFormatFromUserSettings
|
|
121
|
+
* @memberOf flp.userSettings
|
|
122
|
+
* @description Gets the number format from user settings.
|
|
123
|
+
* @param {String} user - The username for authentication.
|
|
124
|
+
* @param {String} password - The password for authentication.
|
|
125
|
+
* @example const numberFormat = await flp.userSettings.getNumberFormatFromUserSettings("user", "password");
|
|
126
|
+
* @returns {Promise<String>} The number format from user settings.
|
|
127
|
+
*/
|
|
19
128
|
getNumberFormatFromUserSettings(user: string, password: string): Promise<string>;
|
|
129
|
+
/**
|
|
130
|
+
* @private
|
|
131
|
+
* @function _getTimeZoneResponse
|
|
132
|
+
* @memberOf flp.userSettings
|
|
133
|
+
* @description Gets the time zone from user settings.
|
|
134
|
+
* @param {Object} srvInstance - The service instance.
|
|
135
|
+
* @example const timeZone = await flp.userSettings._getTimeZoneResponse(srvInstance);
|
|
136
|
+
* @returns {Promise<String>} The time zone from user settings.
|
|
137
|
+
* @throws {Error} Thrown if the time zone could not be retrieved.
|
|
138
|
+
*/
|
|
20
139
|
private _getTimeZoneResponse;
|
|
140
|
+
/**
|
|
141
|
+
* @private
|
|
142
|
+
* @function _getTimeFormatResponse
|
|
143
|
+
* @memberOf flp.userSettings
|
|
144
|
+
* @description Gets the time format from user settings.
|
|
145
|
+
* @param {Object} srvInstance - The service instance.
|
|
146
|
+
* @example const timeFormat = await flp.userSettings._getTimeFormatResponse(srvInstance);
|
|
147
|
+
* @returns {Promise<String>} The time format from user settings.
|
|
148
|
+
* @throws {Error} Thrown if the time format could not be retrieved.
|
|
149
|
+
*/
|
|
21
150
|
private _getTimeFormatResponse;
|
|
151
|
+
/**
|
|
152
|
+
* @private
|
|
153
|
+
* @function _getDateFormatsResponse
|
|
154
|
+
* @memberOf flp.userSettings
|
|
155
|
+
* @description Gets the date format from user settings.
|
|
156
|
+
* @param {Object} srvInstance - The service instance.
|
|
157
|
+
* @example const dateFormat = await flp.userSettings._getDateFormatsResponse(srvInstance);
|
|
158
|
+
* @returns {Promise<String>} The date format from user settings.
|
|
159
|
+
* @throws {Error} Thrown if the date format could not be retrieved.
|
|
160
|
+
*/
|
|
22
161
|
private _getDateFormatsResponse;
|
|
162
|
+
/**
|
|
163
|
+
* @private
|
|
164
|
+
* @function _getLanguageResponse
|
|
165
|
+
* @memberOf flp.userSettings
|
|
166
|
+
* @description Gets the language from user settings.
|
|
167
|
+
* @param {Object} srvInstance - The service instance.
|
|
168
|
+
* @example const language = await flp.userSettings._getLanguageResponse(srvInstance);
|
|
169
|
+
* @returns {Promise<String>} The language from user settings.
|
|
170
|
+
* @throws {Error} Thrown if the language could not be retrieved.
|
|
171
|
+
*/
|
|
23
172
|
private _getLanguageResponse;
|
|
173
|
+
/**
|
|
174
|
+
* @private
|
|
175
|
+
* @function _getNumberFormatResponse
|
|
176
|
+
* @memberOf flp.userSettings
|
|
177
|
+
* @description Gets the number format from user settings.
|
|
178
|
+
* @param {Object} srvInstance - The service instance.
|
|
179
|
+
* @example const numberFormat = await flp.userSettings._getNumberFormatResponse(srvInstance);
|
|
180
|
+
* @returns {Promise<String>} The number format from user settings.
|
|
181
|
+
* @throws {Error} Thrown if the number format could not be retrieved.
|
|
182
|
+
*/
|
|
24
183
|
private _getNumberFormatResponse;
|
|
25
184
|
}
|
|
26
185
|
declare const _default: UserSettings;
|
|
@@ -4,16 +4,26 @@ exports.UserSettings = void 0;
|
|
|
4
4
|
const verboseLogger_1 = require("../../helper/verboseLogger");
|
|
5
5
|
/**
|
|
6
6
|
* @class userSettings
|
|
7
|
-
* @memberof
|
|
7
|
+
* @memberof flp
|
|
8
8
|
*/
|
|
9
9
|
class UserSettings {
|
|
10
10
|
constructor() {
|
|
11
11
|
this.vlf = new verboseLogger_1.VerboseLoggerFactory("util", "userSettings");
|
|
12
12
|
this._srvInstance = null;
|
|
13
13
|
}
|
|
14
|
-
|
|
14
|
+
/**
|
|
15
|
+
* @private
|
|
16
|
+
* @function _initS4UserSettingService
|
|
17
|
+
* @memberOf flp.userSettings
|
|
18
|
+
* @description Initializes the S4 User Setting Service.
|
|
19
|
+
* @param {String} user - The username for authentication.
|
|
20
|
+
* @param {String} password - The password for authentication.
|
|
21
|
+
* @example await flp.userSettings._initS4UserSettingService("user", "password");
|
|
22
|
+
* @returns {Promise<void>} A promise that resolves when the service has been initialized.
|
|
23
|
+
*/
|
|
24
|
+
async _initS4UserSettingService(user, password) {
|
|
15
25
|
if (!this._srvInstance) {
|
|
16
|
-
const vl = this.vlf.initLog(await this.
|
|
26
|
+
const vl = this.vlf.initLog(await this._initS4UserSettingService);
|
|
17
27
|
const params = browser.config.params;
|
|
18
28
|
if (params?.systemUrl) {
|
|
19
29
|
try {
|
|
@@ -33,41 +43,95 @@ class UserSettings {
|
|
|
33
43
|
}
|
|
34
44
|
}
|
|
35
45
|
}
|
|
46
|
+
/**
|
|
47
|
+
* @function setLanguageFromUserSettings
|
|
48
|
+
* @memberOf flp.userSettings
|
|
49
|
+
* @description Sets the environment variable 'USER_SETTINGS_LANG_KEY' language from user settings.
|
|
50
|
+
* @param {String} user - The username for authentication.
|
|
51
|
+
* @param {String} password - The password for authentication.
|
|
52
|
+
* @example await flp.userSettings.setLanguageFromUserSettings("user", "password");
|
|
53
|
+
* @returns {Promise<void>} A promise that resolves when the language has been set.
|
|
54
|
+
*/
|
|
36
55
|
async setLanguageFromUserSettings(user, password) {
|
|
37
56
|
const vl = this.vlf.initLog(this.setLanguageFromUserSettings);
|
|
38
|
-
await this.
|
|
57
|
+
await this._initS4UserSettingService(user, password);
|
|
39
58
|
process.env.USER_SETTINGS_LANG_KEY = await this._getLanguageResponse(this._srvInstance);
|
|
40
59
|
util.console.info(`Language Key: ${process.env.USER_SETTINGS_LANG_KEY} was set.`);
|
|
41
60
|
}
|
|
61
|
+
/**
|
|
62
|
+
* @function setDateFormatFromUserSettings
|
|
63
|
+
* @memberOf flp.userSettings
|
|
64
|
+
* @description Sets the environment variable 'USER_SETTINGS_DATE_FORMAT' date format from user settings.
|
|
65
|
+
* @param {String} user - The username for authentication.
|
|
66
|
+
* @param {String} password - The password for authentication.
|
|
67
|
+
* @example await flp.userSettings.setDateFormatFromUserSettings("user", "password");
|
|
68
|
+
* @returns {Promise<void>} A promise that resolves when the date format has been set.
|
|
69
|
+
*/
|
|
42
70
|
async setDateFormatFromUserSettings(user, password) {
|
|
43
71
|
const vl = this.vlf.initLog(this.setDateFormatFromUserSettings);
|
|
44
|
-
await this.
|
|
72
|
+
await this._initS4UserSettingService(user, password);
|
|
45
73
|
process.env.USER_SETTINGS_DATE_FORMAT = await this._getDateFormatsResponse(this._srvInstance); //removes: the whitespace characters 0-* and the brackets including the content of the brackets.
|
|
46
74
|
util.console.info(`Date Format: ${process.env.USER_SETTINGS_DATE_FORMAT} was set.`);
|
|
47
75
|
}
|
|
76
|
+
/**
|
|
77
|
+
* @function setTimeFormatFromUserSettings
|
|
78
|
+
* @memberOf flp.userSettings
|
|
79
|
+
* @description Sets the environment variable 'USER_SETTINGS_DATE_FORMAT' time format from user settings.
|
|
80
|
+
* @param {String} user - The username for authentication.
|
|
81
|
+
* @param {String} password - The password for authentication.
|
|
82
|
+
* @example await flp.userSettings.setTimeFormatFromUserSettings("user", "password");
|
|
83
|
+
* @returns {Promise<void>} A promise that resolves when the time format has been set.
|
|
84
|
+
*/
|
|
48
85
|
async setTimeFormatFromUserSettings(user, password) {
|
|
49
86
|
const vl = this.vlf.initLog(this.setTimeFormatFromUserSettings);
|
|
50
|
-
await this.
|
|
87
|
+
await this._initS4UserSettingService(user, password);
|
|
51
88
|
process.env.USER_SETTINGS_TIME_FORMAT = await this._getTimeFormatResponse(this._srvInstance);
|
|
52
89
|
util.console.info(`Time Format: ${process.env.USER_SETTINGS_TIME_FORMAT} was set.`);
|
|
53
90
|
}
|
|
91
|
+
/**
|
|
92
|
+
* @function setTimeZoneFromUserSettings
|
|
93
|
+
* @memberOf flp.userSettings
|
|
94
|
+
* @description Sets the environment variable 'USER_SETTINGS_TIME_ZONE' time zone from user settings.
|
|
95
|
+
* @param {String} user - The username for authentication.
|
|
96
|
+
* @param {String} password - The password for authentication.
|
|
97
|
+
* @example await flp.userSettings.setTimeZoneFromUserSettings("user", "password");
|
|
98
|
+
* @returns {Promise<void>} A promise that resolves when the time zone has been set.
|
|
99
|
+
*/
|
|
54
100
|
async setTimeZoneFromUserSettings(user, password) {
|
|
55
101
|
const vl = this.vlf.initLog(this.setTimeZoneFromUserSettings);
|
|
56
|
-
await this.
|
|
102
|
+
await this._initS4UserSettingService(user, password);
|
|
57
103
|
const res = await service.odata.get(this._srvInstance, "UserProfileProperties", { id: "TIME_ZONE", shellType: "FLP" });
|
|
58
104
|
process.env.USER_SETTINGS_TIME_ZONE = await this._getTimeZoneResponse(this._srvInstance);
|
|
59
105
|
util.console.info(`Time Zone: ${process.env.USER_SETTINGS_TIME_ZONE} was set.`);
|
|
60
106
|
}
|
|
107
|
+
/**
|
|
108
|
+
* @function setNumberFormatFromUserSettings
|
|
109
|
+
* @memberOf flp.userSettings
|
|
110
|
+
* @description Sets the environment variable 'USER_SETTINGS_NUMBER_FORMAT' number format from user settings.
|
|
111
|
+
* @param {String} user - The username for authentication.
|
|
112
|
+
* @param {String} password - The password for authentication.
|
|
113
|
+
* @example await flp.userSettings.setNumberFormatFromUserSettings("user", "password");
|
|
114
|
+
* @returns {Promise<void>} A promise that resolves when the number format has been set.
|
|
115
|
+
*/
|
|
61
116
|
async setNumberFormatFromUserSettings(user, password) {
|
|
62
117
|
const vl = this.vlf.initLog(this.setNumberFormatFromUserSettings);
|
|
63
|
-
await this.
|
|
118
|
+
await this._initS4UserSettingService(user, password);
|
|
64
119
|
process.env.USER_SETTINGS_NUMBER_FORMAT = await this._getNumberFormatResponse(this._srvInstance);
|
|
65
120
|
util.console.info(`Number Format: ${process.env.USER_SETTINGS_NUMBER_FORMAT} was set.`);
|
|
66
121
|
}
|
|
122
|
+
/**
|
|
123
|
+
* @function setS4UserSettings
|
|
124
|
+
* @memberOf flp.userSettings
|
|
125
|
+
* @description Sets the user settings for S4.
|
|
126
|
+
* @param {String} user - The username for authentication.
|
|
127
|
+
* @param {String} password - The password for authentication.
|
|
128
|
+
* @example await flp.userSettings.setS4UserSettings("user", "password");
|
|
129
|
+
* @returns {Promise<void>} A promise that resolves when the user settings have been set.
|
|
130
|
+
*/
|
|
67
131
|
async setS4UserSettings(user, password) {
|
|
68
132
|
const vl = this.vlf.initLog(this.setS4UserSettings);
|
|
69
133
|
try {
|
|
70
|
-
await this.
|
|
134
|
+
await this._initS4UserSettingService(user, password);
|
|
71
135
|
await this.setDateFormatFromUserSettings(user, password);
|
|
72
136
|
await this.setLanguageFromUserSettings(user, password);
|
|
73
137
|
await this.setNumberFormatFromUserSettings(user, password);
|
|
@@ -78,30 +142,85 @@ class UserSettings {
|
|
|
78
142
|
vl.log(`Function: 'setUserSettingsForS4' failed: Unable to set the UserSettings: ${error}`);
|
|
79
143
|
}
|
|
80
144
|
}
|
|
145
|
+
/**
|
|
146
|
+
* @function getLanguageFromUserSettings
|
|
147
|
+
* @memberOf flp.userSettings
|
|
148
|
+
* @description Gets the language from user settings.
|
|
149
|
+
* @param {String} user - The username for authentication.
|
|
150
|
+
* @param {String} password - The password for authentication.
|
|
151
|
+
* @example const language = await flp.userSettings.getLanguageFromUserSettings("user", "password");
|
|
152
|
+
* @returns {Promise<String>} The language from user settings.
|
|
153
|
+
*/
|
|
81
154
|
async getLanguageFromUserSettings(user, password) {
|
|
82
155
|
const vl = this.vlf.initLog(this.getLanguageFromUserSettings);
|
|
83
|
-
await this.
|
|
156
|
+
await this._initS4UserSettingService(user, password);
|
|
84
157
|
return await this._getLanguageResponse(this._srvInstance);
|
|
85
158
|
}
|
|
159
|
+
/**
|
|
160
|
+
* @function getDateFormatFromUserSettings
|
|
161
|
+
* @memberOf flp.userSettings
|
|
162
|
+
* @description Gets the date format from user settings.
|
|
163
|
+
* @param {String} user - The username for authentication.
|
|
164
|
+
* @param {String} password - The password for authentication.
|
|
165
|
+
* @example const dateFormat = await flp.userSettings.getDateFormatFromUserSettings("user", "password");
|
|
166
|
+
* @returns {Promise<String>} The date format from user settings.
|
|
167
|
+
*/
|
|
86
168
|
async getDateFormatFromUserSettings(user, password) {
|
|
87
169
|
const vl = this.vlf.initLog(this.getDateFormatFromUserSettings);
|
|
88
|
-
await this.
|
|
170
|
+
await this._initS4UserSettingService(user, password);
|
|
89
171
|
return await this._getDateFormatsResponse(this._srvInstance);
|
|
90
172
|
}
|
|
173
|
+
/**
|
|
174
|
+
* @function getTimeFormatFromUserSettings
|
|
175
|
+
* @memberOf flp.userSettings
|
|
176
|
+
* @description Gets the time format from user settings.
|
|
177
|
+
* @param {String} user - The username for authentication.
|
|
178
|
+
* @param {String} password - The password for authentication.
|
|
179
|
+
* @example const timeFormat = await flp.userSettings.getTimeFormatFromUserSettings("user", "password");
|
|
180
|
+
* @returns {Promise<String>} The time format from user settings.
|
|
181
|
+
*/
|
|
91
182
|
async getTimeFormatFromUserSettings(user, password) {
|
|
92
183
|
const vl = this.vlf.initLog(this.getTimeFormatFromUserSettings);
|
|
93
|
-
await this.
|
|
184
|
+
await this._initS4UserSettingService(user, password);
|
|
94
185
|
return await this._getTimeFormatResponse(this._srvInstance);
|
|
95
186
|
}
|
|
187
|
+
/**
|
|
188
|
+
* @function getTimeZoneFromUserSettings
|
|
189
|
+
* @memberOf flp.userSettings
|
|
190
|
+
* @description Gets the time zone from user settings.
|
|
191
|
+
* @param {String} user - The username for authentication.
|
|
192
|
+
* @param {String} password - The password for authentication.
|
|
193
|
+
* @example const timeZone = await flp.userSettings.getTimeZoneFromUserSettings("user", "password");
|
|
194
|
+
* @returns {Promise<String>} The time zone from user settings.
|
|
195
|
+
*/
|
|
96
196
|
async getTimeZoneFromUserSettings(user, password) {
|
|
97
197
|
const vl = this.vlf.initLog(this.getTimeZoneFromUserSettings);
|
|
98
|
-
await this.
|
|
198
|
+
await this._initS4UserSettingService(user, password);
|
|
99
199
|
return await this._getTimeZoneResponse(this._srvInstance);
|
|
100
200
|
}
|
|
201
|
+
/**
|
|
202
|
+
* @function getNumberFormatFromUserSettings
|
|
203
|
+
* @memberOf flp.userSettings
|
|
204
|
+
* @description Gets the number format from user settings.
|
|
205
|
+
* @param {String} user - The username for authentication.
|
|
206
|
+
* @param {String} password - The password for authentication.
|
|
207
|
+
* @example const numberFormat = await flp.userSettings.getNumberFormatFromUserSettings("user", "password");
|
|
208
|
+
* @returns {Promise<String>} The number format from user settings.
|
|
209
|
+
*/
|
|
101
210
|
async getNumberFormatFromUserSettings(user, password) {
|
|
102
211
|
const vl = this.vlf.initLog(this.getNumberFormatFromUserSettings);
|
|
103
212
|
return await this._getNumberFormatResponse(this._srvInstance);
|
|
104
213
|
}
|
|
214
|
+
/**
|
|
215
|
+
* @private
|
|
216
|
+
* @function _getTimeZoneResponse
|
|
217
|
+
* @memberOf flp.userSettings
|
|
218
|
+
* @description Gets the time zone from user settings.
|
|
219
|
+
* @param {Object} srvInstance - The service instance.
|
|
220
|
+
* @example const timeZone = await flp.userSettings._getTimeZoneResponse(srvInstance);
|
|
221
|
+
* @returns {Promise<String>} The time zone from user settings.
|
|
222
|
+
* @throws {Error} Thrown if the time zone could not be retrieved.
|
|
223
|
+
*/
|
|
105
224
|
async _getTimeZoneResponse(srvInstance) {
|
|
106
225
|
try {
|
|
107
226
|
const res = await service.odata.get(srvInstance, "UserProfileProperties", { id: "TIME_ZONE", shellType: "FLP" });
|
|
@@ -116,6 +235,16 @@ class UserSettings {
|
|
|
116
235
|
}
|
|
117
236
|
}
|
|
118
237
|
}
|
|
238
|
+
/**
|
|
239
|
+
* @private
|
|
240
|
+
* @function _getTimeFormatResponse
|
|
241
|
+
* @memberOf flp.userSettings
|
|
242
|
+
* @description Gets the time format from user settings.
|
|
243
|
+
* @param {Object} srvInstance - The service instance.
|
|
244
|
+
* @example const timeFormat = await flp.userSettings._getTimeFormatResponse(srvInstance);
|
|
245
|
+
* @returns {Promise<String>} The time format from user settings.
|
|
246
|
+
* @throws {Error} Thrown if the time format could not be retrieved.
|
|
247
|
+
*/
|
|
119
248
|
async _getTimeFormatResponse(srvInstance) {
|
|
120
249
|
try {
|
|
121
250
|
const res = await service.odata.get(srvInstance, "UserProfileProperties", { id: "TIME_FORMAT", shellType: "FLP" });
|
|
@@ -131,6 +260,16 @@ class UserSettings {
|
|
|
131
260
|
}
|
|
132
261
|
}
|
|
133
262
|
}
|
|
263
|
+
/**
|
|
264
|
+
* @private
|
|
265
|
+
* @function _getDateFormatsResponse
|
|
266
|
+
* @memberOf flp.userSettings
|
|
267
|
+
* @description Gets the date format from user settings.
|
|
268
|
+
* @param {Object} srvInstance - The service instance.
|
|
269
|
+
* @example const dateFormat = await flp.userSettings._getDateFormatsResponse(srvInstance);
|
|
270
|
+
* @returns {Promise<String>} The date format from user settings.
|
|
271
|
+
* @throws {Error} Thrown if the date format could not be retrieved.
|
|
272
|
+
*/
|
|
134
273
|
async _getDateFormatsResponse(srvInstance) {
|
|
135
274
|
try {
|
|
136
275
|
const res = await service.odata.get(srvInstance, "UserProfileProperties", { id: "DATE_FORMAT", shellType: "FLP" });
|
|
@@ -146,6 +285,16 @@ class UserSettings {
|
|
|
146
285
|
}
|
|
147
286
|
}
|
|
148
287
|
}
|
|
288
|
+
/**
|
|
289
|
+
* @private
|
|
290
|
+
* @function _getLanguageResponse
|
|
291
|
+
* @memberOf flp.userSettings
|
|
292
|
+
* @description Gets the language from user settings.
|
|
293
|
+
* @param {Object} srvInstance - The service instance.
|
|
294
|
+
* @example const language = await flp.userSettings._getLanguageResponse(srvInstance);
|
|
295
|
+
* @returns {Promise<String>} The language from user settings.
|
|
296
|
+
* @throws {Error} Thrown if the language could not be retrieved.
|
|
297
|
+
*/
|
|
149
298
|
async _getLanguageResponse(srvInstance) {
|
|
150
299
|
try {
|
|
151
300
|
const res = await service.odata.get(srvInstance, "UserProfileProperties", { id: "LANGUAGE", shellType: "FLP" });
|
|
@@ -160,6 +309,16 @@ class UserSettings {
|
|
|
160
309
|
}
|
|
161
310
|
}
|
|
162
311
|
}
|
|
312
|
+
/**
|
|
313
|
+
* @private
|
|
314
|
+
* @function _getNumberFormatResponse
|
|
315
|
+
* @memberOf flp.userSettings
|
|
316
|
+
* @description Gets the number format from user settings.
|
|
317
|
+
* @param {Object} srvInstance - The service instance.
|
|
318
|
+
* @example const numberFormat = await flp.userSettings._getNumberFormatResponse(srvInstance);
|
|
319
|
+
* @returns {Promise<String>} The number format from user settings.
|
|
320
|
+
* @throws {Error} Thrown if the number format could not be retrieved.
|
|
321
|
+
*/
|
|
163
322
|
async _getNumberFormatResponse(srvInstance) {
|
|
164
323
|
try {
|
|
165
324
|
const res = await service.odata.get(srvInstance, "UserProfileProperties", { id: "NUMBER_FORMAT", shellType: "FLP" });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"userSettings.js","sourceRoot":"","sources":["../../../../src/reuse/modules/flp/userSettings.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;;;AAEb,8DAAkE;AAElE;;;GAGG;AAEH,MAAa,YAAY;IAAzB;QACU,QAAG,GAAG,IAAI,oCAAoB,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;QACvD,iBAAY,GAAG,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"userSettings.js","sourceRoot":"","sources":["../../../../src/reuse/modules/flp/userSettings.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,4 +6,4 @@
|
|
|
6
6
|
* @param {Array.<Object>} capabilities list of capabilities details
|
|
7
7
|
* @param {<Object>} results object containing test results
|
|
8
8
|
*/
|
|
9
|
-
export default function (exitCode: any, config: any, capabilities: any, results: any): Promise<void>;
|
|
9
|
+
export default function (exitCode: any, config: any, capabilities: any, results: any, statsUsageId: string | null): Promise<void>;
|
|
@@ -5,6 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.default = default_1;
|
|
7
7
|
const dataExchangeCommands_1 = __importDefault(require("./utils/dataExchangeCommands"));
|
|
8
|
+
const stats_1 = require("../stats/stats");
|
|
8
9
|
/**
|
|
9
10
|
* Gets executed after all workers got shut down and the process is about to exit. An error
|
|
10
11
|
* thrown in the onComplete hook will result in the test run failing.
|
|
@@ -13,8 +14,20 @@ const dataExchangeCommands_1 = __importDefault(require("./utils/dataExchangeComm
|
|
|
13
14
|
* @param {Array.<Object>} capabilities list of capabilities details
|
|
14
15
|
* @param {<Object>} results object containing test results
|
|
15
16
|
*/
|
|
16
|
-
async function default_1(exitCode, config, capabilities, results) {
|
|
17
|
+
async function default_1(exitCode, config, capabilities, results, statsUsageId) {
|
|
17
18
|
await dataExchangeCommands_1.default.writeExportData();
|
|
19
|
+
if (statsUsageId !== null) {
|
|
20
|
+
if (config.params && config.params.qmateStatsOptions) {
|
|
21
|
+
if (!config.params.qmateStatsOptions.optOut) {
|
|
22
|
+
if (exitCode === 0) {
|
|
23
|
+
(0, stats_1.updateUsageRequests)(statsUsageId, 'success');
|
|
24
|
+
}
|
|
25
|
+
else if (exitCode === 1) {
|
|
26
|
+
(0, stats_1.updateUsageRequests)(statsUsageId, 'fail');
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
|
18
31
|
}
|
|
19
32
|
;
|
|
20
33
|
//# sourceMappingURL=onComplete.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"onComplete.js","sourceRoot":"","sources":["../../../src/scripts/hooks/onComplete.ts"],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"onComplete.js","sourceRoot":"","sources":["../../../src/scripts/hooks/onComplete.ts"],"names":[],"mappings":";;;;;AAYA,4BAcC;AA1BD,wFAAgE;AAChE,0CAAqD;AAErD;;;;;;;GAOG;AAEY,KAAK,oBAAW,QAAa,EAAE,MAAW,EAAE,YAAiB,EAAE,OAAY,EAAE,YAA2B;IACrH,MAAM,8BAAoB,CAAC,eAAe,EAAE,CAAC;IAE7C,IAAI,YAAY,KAAK,IAAI,EAAE,CAAC;QAC1B,IAAI,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC;YACrD,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,MAAM,EAAE,CAAC;gBAC5C,IAAI,QAAQ,KAAK,CAAC,EAAC,CAAC;oBAClB,IAAA,2BAAmB,EAAC,YAAY,EAAG,SAAS,CAAC,CAAC;gBAChD,CAAC;qBAAM,IAAI,QAAQ,KAAK,CAAC,EAAE,CAAC;oBAC1B,IAAA,2BAAmB,EAAC,YAAY,EAAE,MAAM,CAAC,CAAC;gBAC5C,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAAA,CAAC"}
|
|
@@ -3,4 +3,4 @@
|
|
|
3
3
|
* @param {Object} config wdio configuration object
|
|
4
4
|
* @param {Array.<Object>} capabilities list of capabilities details
|
|
5
5
|
*/
|
|
6
|
-
export default function (config: any, capabilities: Array<object
|
|
6
|
+
export default function (config: any, capabilities: Array<object>, callbackStatsUsageId: (statsUsageId: string) => void): Promise<void>;
|
|
@@ -5,20 +5,39 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.default = default_1;
|
|
7
7
|
const path = require("path");
|
|
8
|
+
const stats_1 = require("../stats/stats");
|
|
8
9
|
const dataExchangeCommands_1 = __importDefault(require("./utils/dataExchangeCommands"));
|
|
9
10
|
/**
|
|
10
11
|
* Gets executed once before all workers get launched.
|
|
11
12
|
* @param {Object} config wdio configuration object
|
|
12
13
|
* @param {Array.<Object>} capabilities list of capabilities details
|
|
13
14
|
*/
|
|
14
|
-
async function default_1(config, capabilities) {
|
|
15
|
+
async function default_1(config, capabilities, callbackStatsUsageId) {
|
|
16
|
+
// Set the CONFIG_PATH environment variable to the directory of the config file
|
|
15
17
|
if (!process.env.CONFIG_PATH) {
|
|
16
18
|
process.env.CONFIG_PATH = path.dirname(config._[0]);
|
|
17
19
|
}
|
|
20
|
+
// Send usage requests
|
|
21
|
+
if (config.params && config.params.qmateStatsOptions) {
|
|
22
|
+
if (!config.params.qmateStatsOptions.optOut) {
|
|
23
|
+
try {
|
|
24
|
+
(0, stats_1.sendUsageRequests)().then((res) => {
|
|
25
|
+
if (res != null) {
|
|
26
|
+
callbackStatsUsageId(res);
|
|
27
|
+
}
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
catch (error) {
|
|
31
|
+
// Intentionally left empty -> call only succeeds when done SAP internally
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
// Set Qmate custom timeouts
|
|
18
36
|
if (config.params && config.params.qmateCustomTimeout) {
|
|
19
37
|
process.env.QMATE_CUSTOM_TIMEOUT = config.params.qmateCustomTimeout;
|
|
20
38
|
process.env.LOAD_PROPERTY_TIMEOUT = config.params.loadPropertyTimeout;
|
|
21
39
|
}
|
|
40
|
+
// Create a temporary data folder
|
|
22
41
|
await dataExchangeCommands_1.default.createTmpDataFolder();
|
|
23
42
|
}
|
|
24
43
|
;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"onPrepare.js","sourceRoot":"","sources":["../../../src/scripts/hooks/onPrepare.ts"],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"onPrepare.js","sourceRoot":"","sources":["../../../src/scripts/hooks/onPrepare.ts"],"names":[],"mappings":";;;;;AASA,4BA8BC;AAvCD,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;AAC7B,0CAAmD;AACnD,wFAAgE;AAEhE;;;;GAIG;AACY,KAAK,oBAAW,MAAW,EAAE,YAA2B,EAAE,oBAAoD;IAC3H,+EAA+E;IAC/E,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;QAC7B,OAAO,CAAC,GAAG,CAAC,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACtD,CAAC;IAED,sBAAsB;IACtB,IAAI,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC;QACrD,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,MAAM,EAAE,CAAC;YAC5C,IAAI,CAAC;gBACH,IAAA,yBAAiB,GAAE,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;oBAC/B,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;wBAChB,oBAAoB,CAAC,GAAG,CAAC,CAAC;oBAC5B,CAAC;gBACH,CAAC,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,0EAA0E;YAC5E,CAAC;QACH,CAAC;IACH,CAAC;IAED,4BAA4B;IAC5B,IAAI,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,kBAAkB,EAAE,CAAC;QACtD,OAAO,CAAC,GAAG,CAAC,oBAAoB,GAAG,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC;QACpE,OAAO,CAAC,GAAG,CAAC,qBAAqB,GAAG,MAAM,CAAC,MAAM,CAAC,mBAAmB,CAAC;IAExE,CAAC;IAED,iCAAiC;IACjC,MAAM,8BAAoB,CAAC,mBAAmB,EAAE,CAAC;AACnD,CAAC;AAAA,CAAC"}
|