codeceptjs 3.7.0-rc.1 → 3.7.1-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/codecept.js +1 -1
- package/lib/command/check.js +24 -9
- package/lib/effects.js +7 -2
- package/lib/event.js +2 -0
- package/lib/helper/Playwright.js +1 -1
- package/lib/helper/Puppeteer.js +1 -1
- package/lib/helper/extras/Popup.js +22 -22
- package/lib/mocha/test.js +5 -2
- package/lib/plugin/analyze.js +51 -3
- package/lib/plugin/retryFailedStep.js +13 -14
- package/lib/plugin/retryTo.js +1 -1
- package/lib/plugin/screenshotOnFail.js +3 -4
- package/lib/plugin/tryTo.js +1 -1
- package/lib/recorder.js +1 -0
- package/lib/store.js +29 -5
- package/lib/utils.js +5 -5
- package/lib/within.js +2 -0
- package/package.json +2 -2
- package/typings/promiseBasedTypes.d.ts +506 -30
- package/typings/types.d.ts +536 -37
|
@@ -1179,6 +1179,228 @@ declare namespace CodeceptJS {
|
|
|
1179
1179
|
*/
|
|
1180
1180
|
waitForText(text: string, sec?: number, context?: CodeceptJS.LocatorOrString): Promise<any>;
|
|
1181
1181
|
}
|
|
1182
|
+
/**
|
|
1183
|
+
* This helper allows performing assertions based on Chai.
|
|
1184
|
+
*
|
|
1185
|
+
* ### Examples
|
|
1186
|
+
*
|
|
1187
|
+
* Zero-configuration when paired with other helpers like REST, Playwright:
|
|
1188
|
+
*
|
|
1189
|
+
* ```js
|
|
1190
|
+
* // inside codecept.conf.js
|
|
1191
|
+
* {
|
|
1192
|
+
* helpers: {
|
|
1193
|
+
* Playwright: {...},
|
|
1194
|
+
* ExpectHelper: {},
|
|
1195
|
+
* }
|
|
1196
|
+
* }
|
|
1197
|
+
* ```
|
|
1198
|
+
*
|
|
1199
|
+
* ## Methods
|
|
1200
|
+
*/
|
|
1201
|
+
class ExpectHelper {
|
|
1202
|
+
expectEqual(actualValue: any, expectedValue: any, customErrorMsg?: any): Promise<any>;
|
|
1203
|
+
expectNotEqual(actualValue: any, expectedValue: any, customErrorMsg?: any): Promise<any>;
|
|
1204
|
+
expectDeepEqual(actualValue: any, expectedValue: any, customErrorMsg?: any): Promise<any>;
|
|
1205
|
+
expectNotDeepEqual(actualValue: any, expectedValue: any, customErrorMsg?: any): Promise<any>;
|
|
1206
|
+
expectContain(actualValue: any, expectedValueToContain: any, customErrorMsg?: any): Promise<any>;
|
|
1207
|
+
expectNotContain(actualValue: any, expectedValueToNotContain: any, customErrorMsg?: any): Promise<any>;
|
|
1208
|
+
expectStartsWith(actualValue: any, expectedValueToStartWith: any, customErrorMsg?: any): Promise<any>;
|
|
1209
|
+
expectNotStartsWith(actualValue: any, expectedValueToNotStartWith: any, customErrorMsg?: any): Promise<any>;
|
|
1210
|
+
expectEndsWith(actualValue: any, expectedValueToEndWith: any, customErrorMsg?: any): Promise<any>;
|
|
1211
|
+
expectNotEndsWith(actualValue: any, expectedValueToNotEndWith: any, customErrorMsg?: any): Promise<any>;
|
|
1212
|
+
expectJsonSchema(targetData: any, jsonSchema: any, customErrorMsg?: any): Promise<any>;
|
|
1213
|
+
/**
|
|
1214
|
+
* @param [ajvOptions] - Pass AJV options
|
|
1215
|
+
*/
|
|
1216
|
+
expectJsonSchemaUsingAJV(targetData: any, jsonSchema: any, customErrorMsg?: any, ajvOptions?: any): Promise<any>;
|
|
1217
|
+
expectHasProperty(targetData: any, propertyName: any, customErrorMsg?: any): Promise<any>;
|
|
1218
|
+
expectHasAProperty(targetData: any, propertyName: any, customErrorMsg?: any): Promise<any>;
|
|
1219
|
+
expectToBeA(targetData: any, type: any, customErrorMsg?: any): Promise<any>;
|
|
1220
|
+
expectToBeAn(targetData: any, type: any, customErrorMsg?: any): Promise<any>;
|
|
1221
|
+
expectMatchRegex(targetData: any, regex: any, customErrorMsg?: any): Promise<any>;
|
|
1222
|
+
expectLengthOf(targetData: any, length: any, customErrorMsg?: any): Promise<any>;
|
|
1223
|
+
expectEmpty(targetData: any, customErrorMsg?: any): Promise<any>;
|
|
1224
|
+
expectTrue(targetData: any, customErrorMsg?: any): Promise<any>;
|
|
1225
|
+
expectFalse(targetData: any, customErrorMsg?: any): Promise<any>;
|
|
1226
|
+
expectAbove(targetData: any, aboveThan: any, customErrorMsg?: any): Promise<any>;
|
|
1227
|
+
expectBelow(targetData: any, belowThan: any, customErrorMsg?: any): Promise<any>;
|
|
1228
|
+
expectLengthAboveThan(targetData: any, lengthAboveThan: any, customErrorMsg?: any): Promise<any>;
|
|
1229
|
+
expectLengthBelowThan(targetData: any, lengthBelowThan: any, customErrorMsg?: any): Promise<any>;
|
|
1230
|
+
expectEqualIgnoreCase(actualValue: any, expectedValue: any, customErrorMsg?: any): Promise<any>;
|
|
1231
|
+
/**
|
|
1232
|
+
* expects members of two arrays are deeply equal
|
|
1233
|
+
*/
|
|
1234
|
+
expectDeepMembers(actualValue: any, expectedValue: any, customErrorMsg?: any): Promise<any>;
|
|
1235
|
+
/**
|
|
1236
|
+
* expects an array to be a superset of another array
|
|
1237
|
+
*/
|
|
1238
|
+
expectDeepIncludeMembers(superset: any, set: any, customErrorMsg?: any): Promise<any>;
|
|
1239
|
+
/**
|
|
1240
|
+
* expects members of two JSON objects are deeply equal excluding some properties
|
|
1241
|
+
*/
|
|
1242
|
+
expectDeepEqualExcluding(actualValue: any, expectedValue: any, fieldsToExclude: any, customErrorMsg?: any): Promise<any>;
|
|
1243
|
+
/**
|
|
1244
|
+
* expects a JSON object matches a provided pattern
|
|
1245
|
+
*/
|
|
1246
|
+
expectMatchesPattern(actualValue: any, expectedPattern: any, customErrorMsg?: any): Promise<any>;
|
|
1247
|
+
expectEqual(actualValue: any, expectedValue: any, customErrorMsg?: any): Promise<any>;
|
|
1248
|
+
expectNotEqual(actualValue: any, expectedValue: any, customErrorMsg?: any): Promise<any>;
|
|
1249
|
+
expectDeepEqual(actualValue: any, expectedValue: any, customErrorMsg?: any): Promise<any>;
|
|
1250
|
+
expectNotDeepEqual(actualValue: any, expectedValue: any, customErrorMsg?: any): Promise<any>;
|
|
1251
|
+
expectContain(actualValue: any, expectedValueToContain: any, customErrorMsg?: any): Promise<any>;
|
|
1252
|
+
expectNotContain(actualValue: any, expectedValueToNotContain: any, customErrorMsg?: any): Promise<any>;
|
|
1253
|
+
expectStartsWith(actualValue: any, expectedValueToStartWith: any, customErrorMsg?: any): Promise<any>;
|
|
1254
|
+
expectNotStartsWith(actualValue: any, expectedValueToNotStartWith: any, customErrorMsg?: any): Promise<any>;
|
|
1255
|
+
expectEndsWith(actualValue: any, expectedValueToEndWith: any, customErrorMsg?: any): Promise<any>;
|
|
1256
|
+
expectNotEndsWith(actualValue: any, expectedValueToNotEndWith: any, customErrorMsg?: any): Promise<any>;
|
|
1257
|
+
expectJsonSchema(targetData: any, jsonSchema: any, customErrorMsg?: any): Promise<any>;
|
|
1258
|
+
/**
|
|
1259
|
+
* @param [ajvOptions] - Pass AJV options
|
|
1260
|
+
*/
|
|
1261
|
+
expectJsonSchemaUsingAJV(targetData: any, jsonSchema: any, customErrorMsg?: any, ajvOptions?: any): Promise<any>;
|
|
1262
|
+
expectHasProperty(targetData: any, propertyName: any, customErrorMsg?: any): Promise<any>;
|
|
1263
|
+
expectHasAProperty(targetData: any, propertyName: any, customErrorMsg?: any): Promise<any>;
|
|
1264
|
+
expectToBeA(targetData: any, type: any, customErrorMsg?: any): Promise<any>;
|
|
1265
|
+
expectToBeAn(targetData: any, type: any, customErrorMsg?: any): Promise<any>;
|
|
1266
|
+
expectMatchRegex(targetData: any, regex: any, customErrorMsg?: any): Promise<any>;
|
|
1267
|
+
expectLengthOf(targetData: any, length: any, customErrorMsg?: any): Promise<any>;
|
|
1268
|
+
expectEmpty(targetData: any, customErrorMsg?: any): Promise<any>;
|
|
1269
|
+
expectTrue(targetData: any, customErrorMsg?: any): Promise<any>;
|
|
1270
|
+
expectFalse(targetData: any, customErrorMsg?: any): Promise<any>;
|
|
1271
|
+
expectAbove(targetData: any, aboveThan: any, customErrorMsg?: any): Promise<any>;
|
|
1272
|
+
expectBelow(targetData: any, belowThan: any, customErrorMsg?: any): Promise<any>;
|
|
1273
|
+
expectLengthAboveThan(targetData: any, lengthAboveThan: any, customErrorMsg?: any): Promise<any>;
|
|
1274
|
+
expectLengthBelowThan(targetData: any, lengthBelowThan: any, customErrorMsg?: any): Promise<any>;
|
|
1275
|
+
expectEqualIgnoreCase(actualValue: any, expectedValue: any, customErrorMsg?: any): Promise<any>;
|
|
1276
|
+
/**
|
|
1277
|
+
* expects members of two arrays are deeply equal
|
|
1278
|
+
*/
|
|
1279
|
+
expectDeepMembers(actualValue: any, expectedValue: any, customErrorMsg?: any): Promise<any>;
|
|
1280
|
+
/**
|
|
1281
|
+
* expects an array to be a superset of another array
|
|
1282
|
+
*/
|
|
1283
|
+
expectDeepIncludeMembers(superset: any, set: any, customErrorMsg?: any): Promise<any>;
|
|
1284
|
+
/**
|
|
1285
|
+
* expects members of two JSON objects are deeply equal excluding some properties
|
|
1286
|
+
*/
|
|
1287
|
+
expectDeepEqualExcluding(actualValue: any, expectedValue: any, fieldsToExclude: any, customErrorMsg?: any): Promise<any>;
|
|
1288
|
+
/**
|
|
1289
|
+
* expects a JSON object matches a provided pattern
|
|
1290
|
+
*/
|
|
1291
|
+
expectMatchesPattern(actualValue: any, expectedPattern: any, customErrorMsg?: any): Promise<any>;
|
|
1292
|
+
}
|
|
1293
|
+
/**
|
|
1294
|
+
* This helper allows performing assertions based on Chai.
|
|
1295
|
+
*
|
|
1296
|
+
* ### Examples
|
|
1297
|
+
*
|
|
1298
|
+
* Zero-configuration when paired with other helpers like REST, Playwright:
|
|
1299
|
+
*
|
|
1300
|
+
* ```js
|
|
1301
|
+
* // inside codecept.conf.js
|
|
1302
|
+
* {
|
|
1303
|
+
* helpers: {
|
|
1304
|
+
* Playwright: {...},
|
|
1305
|
+
* ExpectHelper: {},
|
|
1306
|
+
* }
|
|
1307
|
+
* }
|
|
1308
|
+
* ```
|
|
1309
|
+
*
|
|
1310
|
+
* ## Methods
|
|
1311
|
+
*/
|
|
1312
|
+
class ExpectHelper {
|
|
1313
|
+
expectEqual(actualValue: any, expectedValue: any, customErrorMsg?: any): Promise<any>;
|
|
1314
|
+
expectNotEqual(actualValue: any, expectedValue: any, customErrorMsg?: any): Promise<any>;
|
|
1315
|
+
expectDeepEqual(actualValue: any, expectedValue: any, customErrorMsg?: any): Promise<any>;
|
|
1316
|
+
expectNotDeepEqual(actualValue: any, expectedValue: any, customErrorMsg?: any): Promise<any>;
|
|
1317
|
+
expectContain(actualValue: any, expectedValueToContain: any, customErrorMsg?: any): Promise<any>;
|
|
1318
|
+
expectNotContain(actualValue: any, expectedValueToNotContain: any, customErrorMsg?: any): Promise<any>;
|
|
1319
|
+
expectStartsWith(actualValue: any, expectedValueToStartWith: any, customErrorMsg?: any): Promise<any>;
|
|
1320
|
+
expectNotStartsWith(actualValue: any, expectedValueToNotStartWith: any, customErrorMsg?: any): Promise<any>;
|
|
1321
|
+
expectEndsWith(actualValue: any, expectedValueToEndWith: any, customErrorMsg?: any): Promise<any>;
|
|
1322
|
+
expectNotEndsWith(actualValue: any, expectedValueToNotEndWith: any, customErrorMsg?: any): Promise<any>;
|
|
1323
|
+
expectJsonSchema(targetData: any, jsonSchema: any, customErrorMsg?: any): Promise<any>;
|
|
1324
|
+
/**
|
|
1325
|
+
* @param [ajvOptions] - Pass AJV options
|
|
1326
|
+
*/
|
|
1327
|
+
expectJsonSchemaUsingAJV(targetData: any, jsonSchema: any, customErrorMsg?: any, ajvOptions?: any): Promise<any>;
|
|
1328
|
+
expectHasProperty(targetData: any, propertyName: any, customErrorMsg?: any): Promise<any>;
|
|
1329
|
+
expectHasAProperty(targetData: any, propertyName: any, customErrorMsg?: any): Promise<any>;
|
|
1330
|
+
expectToBeA(targetData: any, type: any, customErrorMsg?: any): Promise<any>;
|
|
1331
|
+
expectToBeAn(targetData: any, type: any, customErrorMsg?: any): Promise<any>;
|
|
1332
|
+
expectMatchRegex(targetData: any, regex: any, customErrorMsg?: any): Promise<any>;
|
|
1333
|
+
expectLengthOf(targetData: any, length: any, customErrorMsg?: any): Promise<any>;
|
|
1334
|
+
expectEmpty(targetData: any, customErrorMsg?: any): Promise<any>;
|
|
1335
|
+
expectTrue(targetData: any, customErrorMsg?: any): Promise<any>;
|
|
1336
|
+
expectFalse(targetData: any, customErrorMsg?: any): Promise<any>;
|
|
1337
|
+
expectAbove(targetData: any, aboveThan: any, customErrorMsg?: any): Promise<any>;
|
|
1338
|
+
expectBelow(targetData: any, belowThan: any, customErrorMsg?: any): Promise<any>;
|
|
1339
|
+
expectLengthAboveThan(targetData: any, lengthAboveThan: any, customErrorMsg?: any): Promise<any>;
|
|
1340
|
+
expectLengthBelowThan(targetData: any, lengthBelowThan: any, customErrorMsg?: any): Promise<any>;
|
|
1341
|
+
expectEqualIgnoreCase(actualValue: any, expectedValue: any, customErrorMsg?: any): Promise<any>;
|
|
1342
|
+
/**
|
|
1343
|
+
* expects members of two arrays are deeply equal
|
|
1344
|
+
*/
|
|
1345
|
+
expectDeepMembers(actualValue: any, expectedValue: any, customErrorMsg?: any): Promise<any>;
|
|
1346
|
+
/**
|
|
1347
|
+
* expects an array to be a superset of another array
|
|
1348
|
+
*/
|
|
1349
|
+
expectDeepIncludeMembers(superset: any, set: any, customErrorMsg?: any): Promise<any>;
|
|
1350
|
+
/**
|
|
1351
|
+
* expects members of two JSON objects are deeply equal excluding some properties
|
|
1352
|
+
*/
|
|
1353
|
+
expectDeepEqualExcluding(actualValue: any, expectedValue: any, fieldsToExclude: any, customErrorMsg?: any): Promise<any>;
|
|
1354
|
+
/**
|
|
1355
|
+
* expects a JSON object matches a provided pattern
|
|
1356
|
+
*/
|
|
1357
|
+
expectMatchesPattern(actualValue: any, expectedPattern: any, customErrorMsg?: any): Promise<any>;
|
|
1358
|
+
expectEqual(actualValue: any, expectedValue: any, customErrorMsg?: any): Promise<any>;
|
|
1359
|
+
expectNotEqual(actualValue: any, expectedValue: any, customErrorMsg?: any): Promise<any>;
|
|
1360
|
+
expectDeepEqual(actualValue: any, expectedValue: any, customErrorMsg?: any): Promise<any>;
|
|
1361
|
+
expectNotDeepEqual(actualValue: any, expectedValue: any, customErrorMsg?: any): Promise<any>;
|
|
1362
|
+
expectContain(actualValue: any, expectedValueToContain: any, customErrorMsg?: any): Promise<any>;
|
|
1363
|
+
expectNotContain(actualValue: any, expectedValueToNotContain: any, customErrorMsg?: any): Promise<any>;
|
|
1364
|
+
expectStartsWith(actualValue: any, expectedValueToStartWith: any, customErrorMsg?: any): Promise<any>;
|
|
1365
|
+
expectNotStartsWith(actualValue: any, expectedValueToNotStartWith: any, customErrorMsg?: any): Promise<any>;
|
|
1366
|
+
expectEndsWith(actualValue: any, expectedValueToEndWith: any, customErrorMsg?: any): Promise<any>;
|
|
1367
|
+
expectNotEndsWith(actualValue: any, expectedValueToNotEndWith: any, customErrorMsg?: any): Promise<any>;
|
|
1368
|
+
expectJsonSchema(targetData: any, jsonSchema: any, customErrorMsg?: any): Promise<any>;
|
|
1369
|
+
/**
|
|
1370
|
+
* @param [ajvOptions] - Pass AJV options
|
|
1371
|
+
*/
|
|
1372
|
+
expectJsonSchemaUsingAJV(targetData: any, jsonSchema: any, customErrorMsg?: any, ajvOptions?: any): Promise<any>;
|
|
1373
|
+
expectHasProperty(targetData: any, propertyName: any, customErrorMsg?: any): Promise<any>;
|
|
1374
|
+
expectHasAProperty(targetData: any, propertyName: any, customErrorMsg?: any): Promise<any>;
|
|
1375
|
+
expectToBeA(targetData: any, type: any, customErrorMsg?: any): Promise<any>;
|
|
1376
|
+
expectToBeAn(targetData: any, type: any, customErrorMsg?: any): Promise<any>;
|
|
1377
|
+
expectMatchRegex(targetData: any, regex: any, customErrorMsg?: any): Promise<any>;
|
|
1378
|
+
expectLengthOf(targetData: any, length: any, customErrorMsg?: any): Promise<any>;
|
|
1379
|
+
expectEmpty(targetData: any, customErrorMsg?: any): Promise<any>;
|
|
1380
|
+
expectTrue(targetData: any, customErrorMsg?: any): Promise<any>;
|
|
1381
|
+
expectFalse(targetData: any, customErrorMsg?: any): Promise<any>;
|
|
1382
|
+
expectAbove(targetData: any, aboveThan: any, customErrorMsg?: any): Promise<any>;
|
|
1383
|
+
expectBelow(targetData: any, belowThan: any, customErrorMsg?: any): Promise<any>;
|
|
1384
|
+
expectLengthAboveThan(targetData: any, lengthAboveThan: any, customErrorMsg?: any): Promise<any>;
|
|
1385
|
+
expectLengthBelowThan(targetData: any, lengthBelowThan: any, customErrorMsg?: any): Promise<any>;
|
|
1386
|
+
expectEqualIgnoreCase(actualValue: any, expectedValue: any, customErrorMsg?: any): Promise<any>;
|
|
1387
|
+
/**
|
|
1388
|
+
* expects members of two arrays are deeply equal
|
|
1389
|
+
*/
|
|
1390
|
+
expectDeepMembers(actualValue: any, expectedValue: any, customErrorMsg?: any): Promise<any>;
|
|
1391
|
+
/**
|
|
1392
|
+
* expects an array to be a superset of another array
|
|
1393
|
+
*/
|
|
1394
|
+
expectDeepIncludeMembers(superset: any, set: any, customErrorMsg?: any): Promise<any>;
|
|
1395
|
+
/**
|
|
1396
|
+
* expects members of two JSON objects are deeply equal excluding some properties
|
|
1397
|
+
*/
|
|
1398
|
+
expectDeepEqualExcluding(actualValue: any, expectedValue: any, fieldsToExclude: any, customErrorMsg?: any): Promise<any>;
|
|
1399
|
+
/**
|
|
1400
|
+
* expects a JSON object matches a provided pattern
|
|
1401
|
+
*/
|
|
1402
|
+
expectMatchesPattern(actualValue: any, expectedPattern: any, customErrorMsg?: any): Promise<any>;
|
|
1403
|
+
}
|
|
1182
1404
|
/**
|
|
1183
1405
|
* Helper for testing filesystem.
|
|
1184
1406
|
* Can be easily used to check file structures:
|
|
@@ -1759,11 +1981,6 @@ declare namespace CodeceptJS {
|
|
|
1759
1981
|
* @property [host = "0.0.0.0"] - Mock server host
|
|
1760
1982
|
* @property [httpsOpts] - key & cert values are the paths to .key and .crt files
|
|
1761
1983
|
*/
|
|
1762
|
-
// @ts-ignore
|
|
1763
|
-
// @ts-ignore
|
|
1764
|
-
// @ts-ignore
|
|
1765
|
-
// @ts-ignore
|
|
1766
|
-
// @ts-ignore
|
|
1767
1984
|
type MockServerConfig = {
|
|
1768
1985
|
port?: number;
|
|
1769
1986
|
host?: string;
|
|
@@ -1888,11 +2105,6 @@ declare namespace CodeceptJS {
|
|
|
1888
2105
|
*
|
|
1889
2106
|
* ## Methods
|
|
1890
2107
|
*/
|
|
1891
|
-
// @ts-ignore
|
|
1892
|
-
// @ts-ignore
|
|
1893
|
-
// @ts-ignore
|
|
1894
|
-
// @ts-ignore
|
|
1895
|
-
// @ts-ignore
|
|
1896
2108
|
class MockServer {
|
|
1897
2109
|
/**
|
|
1898
2110
|
* Start the mock server
|
|
@@ -2882,6 +3094,46 @@ declare namespace CodeceptJS {
|
|
|
2882
3094
|
*/
|
|
2883
3095
|
grabPageScrollPosition(): Promise<PageScrollPosition>;
|
|
2884
3096
|
}
|
|
3097
|
+
/**
|
|
3098
|
+
* OpenAI Helper for CodeceptJS.
|
|
3099
|
+
*
|
|
3100
|
+
* This helper class provides integration with the OpenAI GPT-3.5 or 4 language model for generating responses to questions or prompts within the context of web pages. It allows you to interact with the GPT-3.5 model to obtain intelligent responses based on HTML fragments or general prompts.
|
|
3101
|
+
* This helper should be enabled with any web helpers like Playwright or Puppeteer or WebDrvier to ensure the HTML context is available.
|
|
3102
|
+
*
|
|
3103
|
+
* ## Configuration
|
|
3104
|
+
*
|
|
3105
|
+
* This helper should be configured in codecept.json or codecept.conf.js
|
|
3106
|
+
*
|
|
3107
|
+
* * `chunkSize`: (optional, default: 80000) - The maximum number of characters to send to the OpenAI API at once. We split HTML fragments by 8000 chars to not exceed token limit. Increase this value if you use GPT-4.
|
|
3108
|
+
*/
|
|
3109
|
+
class OpenAITs {
|
|
3110
|
+
/**
|
|
3111
|
+
* Asks the OpenAI GPT language model a question based on the provided prompt within the context of the current page's HTML.
|
|
3112
|
+
*
|
|
3113
|
+
* ```js
|
|
3114
|
+
* I.askGptOnPage('what does this page do?');
|
|
3115
|
+
* ```
|
|
3116
|
+
* @param prompt - The question or prompt to ask the GPT model.
|
|
3117
|
+
* @returns - A Promise that resolves to the generated responses from the GPT model, joined by newlines.
|
|
3118
|
+
*/
|
|
3119
|
+
askGptOnPage(prompt: string): Promise<string>;
|
|
3120
|
+
/**
|
|
3121
|
+
* Asks the OpenAI GPT-3.5 language model a question based on the provided prompt within the context of a specific HTML fragment on the current page.
|
|
3122
|
+
*
|
|
3123
|
+
* ```js
|
|
3124
|
+
* I.askGptOnPageFragment('describe features of this screen', '.screen');
|
|
3125
|
+
* ```
|
|
3126
|
+
* @param prompt - The question or prompt to ask the GPT-3.5 model.
|
|
3127
|
+
* @param locator - The locator or selector used to identify the HTML fragment on the page.
|
|
3128
|
+
* @returns - A Promise that resolves to the generated response from the GPT model.
|
|
3129
|
+
*/
|
|
3130
|
+
askGptOnPageFragment(prompt: string, locator: string): Promise<string>;
|
|
3131
|
+
/**
|
|
3132
|
+
* Send a general request to ChatGPT and return response.
|
|
3133
|
+
* @returns - A Promise that resolves to the generated response from the GPT model.
|
|
3134
|
+
*/
|
|
3135
|
+
askGptGeneralPrompt(prompt: string): Promise<string>;
|
|
3136
|
+
}
|
|
2885
3137
|
/**
|
|
2886
3138
|
* ## Configuration
|
|
2887
3139
|
*
|
|
@@ -2926,11 +3178,6 @@ declare namespace CodeceptJS {
|
|
|
2926
3178
|
* @property [recordHar] - record HAR and will be saved to `output/har`. See more of [HAR options](https://playwright.dev/docs/api/class-browser#browser-new-context-option-record-har).
|
|
2927
3179
|
* @property [testIdAttribute = data-testid] - locate elements based on the testIdAttribute. See more of [locate by test id](https://playwright.dev/docs/locators#locate-by-test-id).
|
|
2928
3180
|
*/
|
|
2929
|
-
// @ts-ignore
|
|
2930
|
-
// @ts-ignore
|
|
2931
|
-
// @ts-ignore
|
|
2932
|
-
// @ts-ignore
|
|
2933
|
-
// @ts-ignore
|
|
2934
3181
|
type PlaywrightConfig = {
|
|
2935
3182
|
url?: string;
|
|
2936
3183
|
browser?: 'chromium' | 'firefox' | 'webkit' | 'electron';
|
|
@@ -6307,11 +6554,6 @@ declare namespace CodeceptJS {
|
|
|
6307
6554
|
* @property [chrome] - pass additional [Puppeteer run options](https://github.com/GoogleChrome/puppeteer/blob/master/docs/api.md#puppeteerlaunchoptions).
|
|
6308
6555
|
* @property [highlightElement] - highlight the interacting elements. Default: false. Note: only activate under verbose mode (--verbose).
|
|
6309
6556
|
*/
|
|
6310
|
-
// @ts-ignore
|
|
6311
|
-
// @ts-ignore
|
|
6312
|
-
// @ts-ignore
|
|
6313
|
-
// @ts-ignore
|
|
6314
|
-
// @ts-ignore
|
|
6315
6557
|
type PuppeteerConfig = {
|
|
6316
6558
|
url: string;
|
|
6317
6559
|
basicAuth?: any;
|
|
@@ -8118,11 +8360,6 @@ declare namespace CodeceptJS {
|
|
|
8118
8360
|
* @property [onResponse] - an async function which can update response object.
|
|
8119
8361
|
* @property [maxUploadFileSize] - set the max content file size in MB when performing api calls.
|
|
8120
8362
|
*/
|
|
8121
|
-
// @ts-ignore
|
|
8122
|
-
// @ts-ignore
|
|
8123
|
-
// @ts-ignore
|
|
8124
|
-
// @ts-ignore
|
|
8125
|
-
// @ts-ignore
|
|
8126
8363
|
type RESTConfig = {
|
|
8127
8364
|
endpoint?: string;
|
|
8128
8365
|
prettyPrintJson?: boolean;
|
|
@@ -8315,6 +8552,250 @@ declare namespace CodeceptJS {
|
|
|
8315
8552
|
*/
|
|
8316
8553
|
sendDeleteRequestWithPayload(url: any, payload?: any, headers?: any): Promise<any>;
|
|
8317
8554
|
}
|
|
8555
|
+
/**
|
|
8556
|
+
* SoftAssertHelper is a utility class for performing soft assertions.
|
|
8557
|
+
* Unlike traditional assertions that stop the execution on failure,
|
|
8558
|
+
* soft assertions allow the execution to continue and report all failures at the end.
|
|
8559
|
+
*
|
|
8560
|
+
* ### Examples
|
|
8561
|
+
*
|
|
8562
|
+
* Zero-configuration when paired with other helpers like REST, Playwright:
|
|
8563
|
+
*
|
|
8564
|
+
* ```js
|
|
8565
|
+
* // inside codecept.conf.js
|
|
8566
|
+
* {
|
|
8567
|
+
* helpers: {
|
|
8568
|
+
* Playwright: {...},
|
|
8569
|
+
* SoftExpectHelper: {},
|
|
8570
|
+
* }
|
|
8571
|
+
* }
|
|
8572
|
+
* ```
|
|
8573
|
+
*
|
|
8574
|
+
* ```js
|
|
8575
|
+
* // in scenario
|
|
8576
|
+
* I.softExpectEqual('a', 'b')
|
|
8577
|
+
* I.flushSoftAssertions() // Throws an error if any soft assertions have failed. The error message contains all the accumulated failures.
|
|
8578
|
+
* ```
|
|
8579
|
+
*
|
|
8580
|
+
* ## Methods
|
|
8581
|
+
*/
|
|
8582
|
+
class SoftAssertHelperTs {
|
|
8583
|
+
/**
|
|
8584
|
+
* Performs a soft assertion by executing the provided assertion function.
|
|
8585
|
+
* If the assertion fails, the error is caught and stored without halting the execution.
|
|
8586
|
+
* @param assertionFn - The assertion function to execute.
|
|
8587
|
+
* @param [customErrorMsg = ''] - A custom error message to display if the assertion fails.
|
|
8588
|
+
*/
|
|
8589
|
+
softAssert(assertionFn: (...params: any[]) => any, customErrorMsg?: string): Promise<any>;
|
|
8590
|
+
/**
|
|
8591
|
+
* Throws an error if any soft assertions have failed.
|
|
8592
|
+
* The error message contains all the accumulated failures.
|
|
8593
|
+
*/
|
|
8594
|
+
flushSoftAssertions(): Promise<any>;
|
|
8595
|
+
/**
|
|
8596
|
+
* Softly asserts that two values are equal.
|
|
8597
|
+
* @param actualValue - The actual value.
|
|
8598
|
+
* @param expectedValue - The expected value.
|
|
8599
|
+
* @param [customErrorMsg = ''] - A custom error message to display if the assertion fails.
|
|
8600
|
+
*/
|
|
8601
|
+
softExpectEqual(actualValue: any, expectedValue: any, customErrorMsg?: string): Promise<any>;
|
|
8602
|
+
/**
|
|
8603
|
+
* Softly asserts that two values are not equal.
|
|
8604
|
+
* @param actualValue - The actual value.
|
|
8605
|
+
* @param expectedValue - The expected value.
|
|
8606
|
+
* @param [customErrorMsg = ''] - A custom error message to display if the assertion fails.
|
|
8607
|
+
*/
|
|
8608
|
+
softExpectNotEqual(actualValue: any, expectedValue: any, customErrorMsg?: string): Promise<any>;
|
|
8609
|
+
/**
|
|
8610
|
+
* Softly asserts that two values are deeply equal.
|
|
8611
|
+
* @param actualValue - The actual value.
|
|
8612
|
+
* @param expectedValue - The expected value.
|
|
8613
|
+
* @param [customErrorMsg = ''] - A custom error message to display if the assertion fails.
|
|
8614
|
+
*/
|
|
8615
|
+
softExpectDeepEqual(actualValue: any, expectedValue: any, customErrorMsg?: string): Promise<any>;
|
|
8616
|
+
/**
|
|
8617
|
+
* Softly asserts that two values are not deeply equal.
|
|
8618
|
+
* @param actualValue - The actual value.
|
|
8619
|
+
* @param expectedValue - The expected value.
|
|
8620
|
+
* @param [customErrorMsg = ''] - A custom error message to display if the assertion fails.
|
|
8621
|
+
*/
|
|
8622
|
+
softExpectNotDeepEqual(actualValue: any, expectedValue: any, customErrorMsg?: string): Promise<any>;
|
|
8623
|
+
/**
|
|
8624
|
+
* Softly asserts that a value contains the expected value.
|
|
8625
|
+
* @param actualValue - The actual value.
|
|
8626
|
+
* @param expectedValueToContain - The value that should be contained within the actual value.
|
|
8627
|
+
* @param [customErrorMsg = ''] - A custom error message to display if the assertion fails.
|
|
8628
|
+
*/
|
|
8629
|
+
softExpectContain(actualValue: any, expectedValueToContain: any, customErrorMsg?: string): Promise<any>;
|
|
8630
|
+
/**
|
|
8631
|
+
* Softly asserts that a value does not contain the expected value.
|
|
8632
|
+
* @param actualValue - The actual value.
|
|
8633
|
+
* @param expectedValueToNotContain - The value that should not be contained within the actual value.
|
|
8634
|
+
* @param [customErrorMsg = ''] - A custom error message to display if the assertion fails.
|
|
8635
|
+
*/
|
|
8636
|
+
softExpectNotContain(actualValue: any, expectedValueToNotContain: any, customErrorMsg?: string): Promise<any>;
|
|
8637
|
+
/**
|
|
8638
|
+
* Softly asserts that a value starts with the expected value.
|
|
8639
|
+
* @param actualValue - The actual value.
|
|
8640
|
+
* @param expectedValueToStartWith - The value that the actual value should start with.
|
|
8641
|
+
* @param [customErrorMsg = ''] - A custom error message to display if the assertion fails.
|
|
8642
|
+
*/
|
|
8643
|
+
softExpectStartsWith(actualValue: any, expectedValueToStartWith: any, customErrorMsg?: string): Promise<any>;
|
|
8644
|
+
/**
|
|
8645
|
+
* Softly asserts that a value does not start with the expected value.
|
|
8646
|
+
* @param actualValue - The actual value.
|
|
8647
|
+
* @param expectedValueToNotStartWith - The value that the actual value should not start with.
|
|
8648
|
+
* @param [customErrorMsg = ''] - A custom error message to display if the assertion fails.
|
|
8649
|
+
*/
|
|
8650
|
+
softExpectNotStartsWith(actualValue: any, expectedValueToNotStartWith: any, customErrorMsg?: string): Promise<any>;
|
|
8651
|
+
/**
|
|
8652
|
+
* Softly asserts that a value ends with the expected value.
|
|
8653
|
+
* @param actualValue - The actual value.
|
|
8654
|
+
* @param expectedValueToEndWith - The value that the actual value should end with.
|
|
8655
|
+
* @param [customErrorMsg = ''] - A custom error message to display if the assertion fails.
|
|
8656
|
+
*/
|
|
8657
|
+
softExpectEndsWith(actualValue: any, expectedValueToEndWith: any, customErrorMsg?: string): Promise<any>;
|
|
8658
|
+
/**
|
|
8659
|
+
* Softly asserts that a value does not end with the expected value.
|
|
8660
|
+
* @param actualValue - The actual value.
|
|
8661
|
+
* @param expectedValueToNotEndWith - The value that the actual value should not end with.
|
|
8662
|
+
* @param [customErrorMsg = ''] - A custom error message to display if the assertion fails.
|
|
8663
|
+
*/
|
|
8664
|
+
softExpectNotEndsWith(actualValue: any, expectedValueToNotEndWith: any, customErrorMsg?: string): Promise<any>;
|
|
8665
|
+
/**
|
|
8666
|
+
* Softly asserts that the target data matches the given JSON schema.
|
|
8667
|
+
* @param targetData - The data to validate.
|
|
8668
|
+
* @param jsonSchema - The JSON schema to validate against.
|
|
8669
|
+
* @param [customErrorMsg = ''] - A custom error message to display if the assertion fails.
|
|
8670
|
+
*/
|
|
8671
|
+
softExpectJsonSchema(targetData: any, jsonSchema: any, customErrorMsg?: string): Promise<any>;
|
|
8672
|
+
/**
|
|
8673
|
+
* Softly asserts that the target data matches the given JSON schema using AJV.
|
|
8674
|
+
* @param targetData - The data to validate.
|
|
8675
|
+
* @param jsonSchema - The JSON schema to validate against.
|
|
8676
|
+
* @param [customErrorMsg = ''] - A custom error message to display if the assertion fails.
|
|
8677
|
+
* @param [ajvOptions = { allErrors: true }] - Options to pass to AJV.
|
|
8678
|
+
*/
|
|
8679
|
+
softExpectJsonSchemaUsingAJV(targetData: any, jsonSchema: any, customErrorMsg?: string, ajvOptions?: any): Promise<any>;
|
|
8680
|
+
/**
|
|
8681
|
+
* Softly asserts that the target data has the specified property.
|
|
8682
|
+
* @param targetData - The data to check.
|
|
8683
|
+
* @param propertyName - The property name to check for.
|
|
8684
|
+
* @param [customErrorMsg = ''] - A custom error message to display if the assertion
|
|
8685
|
+
* fails.
|
|
8686
|
+
*/
|
|
8687
|
+
softExpectHasProperty(targetData: any, propertyName: string, customErrorMsg?: string): Promise<any>;
|
|
8688
|
+
/**
|
|
8689
|
+
* Softly asserts that the target data has a property with the specified name.
|
|
8690
|
+
* @param targetData - The data to check.
|
|
8691
|
+
* @param propertyName - The property name to check for.
|
|
8692
|
+
* @param [customErrorMsg = ''] - A custom error message to display if the assertion fails.
|
|
8693
|
+
*/
|
|
8694
|
+
softExpectHasAProperty(targetData: any, propertyName: string, customErrorMsg?: string): Promise<any>;
|
|
8695
|
+
/**
|
|
8696
|
+
* Softly asserts that the target data is of a specific type.
|
|
8697
|
+
* @param targetData - The data to check.
|
|
8698
|
+
* @param type - The expected type (e.g., 'string', 'number').
|
|
8699
|
+
* @param [customErrorMsg = ''] - A custom error message to display if the assertion fails.
|
|
8700
|
+
*/
|
|
8701
|
+
softExpectToBeA(targetData: any, type: string, customErrorMsg?: string): Promise<any>;
|
|
8702
|
+
/**
|
|
8703
|
+
* Softly asserts that the target data is of a specific type (alternative for articles).
|
|
8704
|
+
* @param targetData - The data to check.
|
|
8705
|
+
* @param type - The expected type (e.g., 'string', 'number').
|
|
8706
|
+
* @param [customErrorMsg = ''] - A custom error message to display if the assertion fails.
|
|
8707
|
+
*/
|
|
8708
|
+
softExpectToBeAn(targetData: any, type: string, customErrorMsg?: string): Promise<any>;
|
|
8709
|
+
/**
|
|
8710
|
+
* Softly asserts that the target data has a specified length.
|
|
8711
|
+
* @param targetData - The data to check.
|
|
8712
|
+
* @param length - The expected length.
|
|
8713
|
+
* @param [customErrorMsg = ''] - A custom error message to display if the assertion fails.
|
|
8714
|
+
*/
|
|
8715
|
+
softExpectLengthOf(targetData: any, length: number, customErrorMsg?: string): Promise<any>;
|
|
8716
|
+
/**
|
|
8717
|
+
* Softly asserts that the target data is empty.
|
|
8718
|
+
* @param targetData - The data to check.
|
|
8719
|
+
* @param [customErrorMsg = ''] - A custom error message to display if the assertion fails.
|
|
8720
|
+
*/
|
|
8721
|
+
softExpectEmpty(targetData: any, customErrorMsg?: string): Promise<any>;
|
|
8722
|
+
/**
|
|
8723
|
+
* Softly asserts that the target data is true.
|
|
8724
|
+
* @param targetData - The data to check.
|
|
8725
|
+
* @param [customErrorMsg = ''] - A custom error message to display if the assertion fails.
|
|
8726
|
+
*/
|
|
8727
|
+
softExpectTrue(targetData: any, customErrorMsg?: string): Promise<any>;
|
|
8728
|
+
/**
|
|
8729
|
+
* Softly asserts that the target data is false.
|
|
8730
|
+
* @param targetData - The data to check.
|
|
8731
|
+
* @param [customErrorMsg = ''] - A custom error message to display if the assertion fails.
|
|
8732
|
+
*/
|
|
8733
|
+
softExpectFalse(targetData: any, customErrorMsg?: string): Promise<any>;
|
|
8734
|
+
/**
|
|
8735
|
+
* Softly asserts that the target data is above a specified value.
|
|
8736
|
+
* @param targetData - The data to check.
|
|
8737
|
+
* @param aboveThan - The value that the target data should be above.
|
|
8738
|
+
* @param [customErrorMsg = ''] - A custom error message to display if the assertion fails.
|
|
8739
|
+
*/
|
|
8740
|
+
softExpectAbove(targetData: any, aboveThan: any, customErrorMsg?: string): Promise<any>;
|
|
8741
|
+
/**
|
|
8742
|
+
* Softly asserts that the target data is below a specified value.
|
|
8743
|
+
* @param targetData - The data to check.
|
|
8744
|
+
* @param belowThan - The value that the target data should be below.
|
|
8745
|
+
* @param [customErrorMsg = ''] - A custom error message to display if the assertion fails.
|
|
8746
|
+
*/
|
|
8747
|
+
softExpectBelow(targetData: any, belowThan: any, customErrorMsg?: string): Promise<any>;
|
|
8748
|
+
/**
|
|
8749
|
+
* Softly asserts that the length of the target data is above a specified value.
|
|
8750
|
+
* @param targetData - The data to check.
|
|
8751
|
+
* @param lengthAboveThan - The length that the target data should be above.
|
|
8752
|
+
* @param [customErrorMsg = ''] - A custom error message to display if the assertion fails.
|
|
8753
|
+
*/
|
|
8754
|
+
softExpectLengthAboveThan(targetData: any, lengthAboveThan: number, customErrorMsg?: string): Promise<any>;
|
|
8755
|
+
/**
|
|
8756
|
+
* Softly asserts that the length of the target data is below a specified value.
|
|
8757
|
+
* @param targetData - The data to check.
|
|
8758
|
+
* @param lengthBelowThan - The length that the target data should be below.
|
|
8759
|
+
* @param [customErrorMsg = ''] - A custom error message to display if the assertion fails.
|
|
8760
|
+
*/
|
|
8761
|
+
softExpectLengthBelowThan(targetData: any, lengthBelowThan: number, customErrorMsg?: string): Promise<any>;
|
|
8762
|
+
/**
|
|
8763
|
+
* Softly asserts that two values are equal, ignoring case.
|
|
8764
|
+
* @param actualValue - The actual string value.
|
|
8765
|
+
* @param expectedValue - The expected string value.
|
|
8766
|
+
* @param [customErrorMsg = ''] - A custom error message to display if the assertion fails.
|
|
8767
|
+
*/
|
|
8768
|
+
softExpectEqualIgnoreCase(actualValue: string, expectedValue: string, customErrorMsg?: string): Promise<any>;
|
|
8769
|
+
/**
|
|
8770
|
+
* Softly asserts that two arrays have deep equality, considering members in any order.
|
|
8771
|
+
* @param actualValue - The actual array.
|
|
8772
|
+
* @param expectedValue - The expected array.
|
|
8773
|
+
* @param [customErrorMsg = ''] - A custom error message to display if the assertion fails.
|
|
8774
|
+
*/
|
|
8775
|
+
softExpectDeepMembers(actualValue: any[], expectedValue: any[], customErrorMsg?: string): Promise<any>;
|
|
8776
|
+
/**
|
|
8777
|
+
* Softly asserts that an array (superset) deeply includes all members of another array (set).
|
|
8778
|
+
* @param superset - The array that should contain the expected members.
|
|
8779
|
+
* @param set - The array with members that should be included.
|
|
8780
|
+
* @param [customErrorMsg = ''] - A custom error message to display if the assertion fails.
|
|
8781
|
+
*/
|
|
8782
|
+
softExpectDeepIncludeMembers(superset: any[], set: any[], customErrorMsg?: string): Promise<any>;
|
|
8783
|
+
/**
|
|
8784
|
+
* Softly asserts that two objects are deeply equal, excluding specified fields.
|
|
8785
|
+
* @param actualValue - The actual object.
|
|
8786
|
+
* @param expectedValue - The expected object.
|
|
8787
|
+
* @param fieldsToExclude - The fields to exclude from the comparison.
|
|
8788
|
+
* @param [customErrorMsg = ''] - A custom error message to display if the assertion fails.
|
|
8789
|
+
*/
|
|
8790
|
+
softExpectDeepEqualExcluding(actualValue: any, expectedValue: any, fieldsToExclude: string[], customErrorMsg?: string): Promise<any>;
|
|
8791
|
+
/**
|
|
8792
|
+
* Softly asserts that a value matches the expected pattern.
|
|
8793
|
+
* @param actualValue - The actual value.
|
|
8794
|
+
* @param expectedPattern - The pattern the value should match.
|
|
8795
|
+
* @param [customErrorMsg = ''] - A custom error message to display if the assertion fails.
|
|
8796
|
+
*/
|
|
8797
|
+
softExpectMatchesPattern(actualValue: any, expectedPattern: any, customErrorMsg?: string): Promise<any>;
|
|
8798
|
+
}
|
|
8318
8799
|
/**
|
|
8319
8800
|
* Client Functions
|
|
8320
8801
|
*/
|
|
@@ -9267,11 +9748,6 @@ declare namespace CodeceptJS {
|
|
|
9267
9748
|
* @property [highlightElement] - highlight the interacting elements. Default: false. Note: only activate under verbose mode (--verbose).
|
|
9268
9749
|
* @property [logLevel = silent] - level of logging verbosity. Default: silent. Options: trace | debug | info | warn | error | silent. More info: https://webdriver.io/docs/configuration/#loglevel
|
|
9269
9750
|
*/
|
|
9270
|
-
// @ts-ignore
|
|
9271
|
-
// @ts-ignore
|
|
9272
|
-
// @ts-ignore
|
|
9273
|
-
// @ts-ignore
|
|
9274
|
-
// @ts-ignore
|
|
9275
9751
|
type WebDriverConfig = {
|
|
9276
9752
|
url: string;
|
|
9277
9753
|
browser: string;
|