codeceptjs 3.6.0-beta.1.ai-healers → 3.6.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 (129) hide show
  1. package/README.md +2 -2
  2. package/bin/codecept.js +2 -1
  3. package/docs/webapi/dontSeeTraffic.mustache +13 -0
  4. package/docs/webapi/flushNetworkTraffics.mustache +5 -0
  5. package/docs/webapi/grabRecordedNetworkTraffics.mustache +10 -0
  6. package/docs/webapi/seeTraffic.mustache +36 -0
  7. package/docs/webapi/startRecordingTraffic.mustache +8 -0
  8. package/docs/webapi/startRecordingWebSocketMessages.mustache +8 -0
  9. package/docs/webapi/stopRecordingTraffic.mustache +5 -0
  10. package/docs/webapi/stopRecordingWebSocketMessages.mustache +7 -0
  11. package/docs/webapi/waitForCookie.mustache +9 -0
  12. package/lib/actor.js +6 -3
  13. package/lib/command/dryRun.js +44 -13
  14. package/lib/helper/Appium.js +36 -12
  15. package/lib/helper/Expect.js +11 -8
  16. package/lib/helper/JSONResponse.js +8 -8
  17. package/lib/helper/MockServer.js +221 -0
  18. package/lib/helper/Playwright.js +107 -371
  19. package/lib/helper/Puppeteer.js +404 -71
  20. package/lib/helper/REST.js +4 -1
  21. package/lib/helper/WebDriver.js +189 -13
  22. package/lib/helper/errors/ElementAssertion.js +38 -0
  23. package/lib/helper/extras/PlaywrightReactVueLocator.js +6 -1
  24. package/lib/helper/network/actions.js +123 -0
  25. package/lib/helper/network/utils.js +187 -0
  26. package/lib/locator.js +36 -5
  27. package/lib/plugin/coverage.js +112 -99
  28. package/lib/step.js +3 -1
  29. package/package.json +48 -37
  30. package/typings/index.d.ts +19 -2
  31. package/typings/promiseBasedTypes.d.ts +505 -41
  32. package/typings/types.d.ts +609 -56
  33. package/docs/advanced.md +0 -351
  34. package/docs/ai.md +0 -365
  35. package/docs/api.md +0 -323
  36. package/docs/basics.md +0 -979
  37. package/docs/bdd.md +0 -539
  38. package/docs/best.md +0 -237
  39. package/docs/books.md +0 -37
  40. package/docs/bootstrap.md +0 -135
  41. package/docs/build/AI.js +0 -124
  42. package/docs/build/ApiDataFactory.js +0 -410
  43. package/docs/build/Appium.js +0 -2027
  44. package/docs/build/Expect.js +0 -422
  45. package/docs/build/FileSystem.js +0 -228
  46. package/docs/build/GraphQL.js +0 -229
  47. package/docs/build/GraphQLDataFactory.js +0 -309
  48. package/docs/build/JSONResponse.js +0 -338
  49. package/docs/build/Mochawesome.js +0 -71
  50. package/docs/build/Nightmare.js +0 -2152
  51. package/docs/build/OpenAI.js +0 -126
  52. package/docs/build/Playwright.js +0 -5110
  53. package/docs/build/Protractor.js +0 -2706
  54. package/docs/build/Puppeteer.js +0 -3905
  55. package/docs/build/REST.js +0 -344
  56. package/docs/build/TestCafe.js +0 -2125
  57. package/docs/build/WebDriver.js +0 -4240
  58. package/docs/changelog.md +0 -2572
  59. package/docs/commands.md +0 -266
  60. package/docs/community-helpers.md +0 -58
  61. package/docs/configuration.md +0 -157
  62. package/docs/continuous-integration.md +0 -22
  63. package/docs/custom-helpers.md +0 -306
  64. package/docs/data.md +0 -379
  65. package/docs/detox.md +0 -235
  66. package/docs/docker.md +0 -136
  67. package/docs/email.md +0 -183
  68. package/docs/examples.md +0 -149
  69. package/docs/heal.md +0 -186
  70. package/docs/helpers/ApiDataFactory.md +0 -266
  71. package/docs/helpers/Appium.md +0 -1374
  72. package/docs/helpers/Detox.md +0 -586
  73. package/docs/helpers/Expect.md +0 -275
  74. package/docs/helpers/FileSystem.md +0 -152
  75. package/docs/helpers/GraphQL.md +0 -151
  76. package/docs/helpers/GraphQLDataFactory.md +0 -226
  77. package/docs/helpers/JSONResponse.md +0 -254
  78. package/docs/helpers/Mochawesome.md +0 -8
  79. package/docs/helpers/MockRequest.md +0 -377
  80. package/docs/helpers/Nightmare.md +0 -1305
  81. package/docs/helpers/OpenAI.md +0 -70
  82. package/docs/helpers/Playwright.md +0 -2759
  83. package/docs/helpers/Polly.md +0 -44
  84. package/docs/helpers/Protractor.md +0 -1769
  85. package/docs/helpers/Puppeteer-firefox.md +0 -86
  86. package/docs/helpers/Puppeteer.md +0 -2317
  87. package/docs/helpers/REST.md +0 -218
  88. package/docs/helpers/TestCafe.md +0 -1321
  89. package/docs/helpers/WebDriver.md +0 -2547
  90. package/docs/hooks.md +0 -340
  91. package/docs/index.md +0 -111
  92. package/docs/installation.md +0 -75
  93. package/docs/internal-api.md +0 -266
  94. package/docs/locators.md +0 -339
  95. package/docs/mobile-react-native-locators.md +0 -67
  96. package/docs/mobile.md +0 -338
  97. package/docs/pageobjects.md +0 -291
  98. package/docs/parallel.md +0 -400
  99. package/docs/playwright.md +0 -632
  100. package/docs/plugins.md +0 -1247
  101. package/docs/puppeteer.md +0 -316
  102. package/docs/quickstart.md +0 -162
  103. package/docs/react.md +0 -70
  104. package/docs/reports.md +0 -392
  105. package/docs/secrets.md +0 -36
  106. package/docs/shadow.md +0 -68
  107. package/docs/shared/keys.mustache +0 -31
  108. package/docs/shared/react.mustache +0 -1
  109. package/docs/testcafe.md +0 -174
  110. package/docs/translation.md +0 -247
  111. package/docs/tutorial.md +0 -271
  112. package/docs/typescript.md +0 -180
  113. package/docs/ui.md +0 -59
  114. package/docs/videos.md +0 -28
  115. package/docs/visual.md +0 -202
  116. package/docs/vue.md +0 -143
  117. package/docs/webdriver.md +0 -701
  118. package/docs/wiki/Books-&-Posts.md +0 -27
  119. package/docs/wiki/Community-Helpers-&-Plugins.md +0 -53
  120. package/docs/wiki/Converting-Playwright-to-Istanbul-Coverage.md +0 -61
  121. package/docs/wiki/Examples.md +0 -145
  122. package/docs/wiki/Google-Summer-of-Code-(GSoC)-2020.md +0 -68
  123. package/docs/wiki/Home.md +0 -16
  124. package/docs/wiki/Migration-to-Appium-v2---CodeceptJS.md +0 -83
  125. package/docs/wiki/Release-Process.md +0 -24
  126. package/docs/wiki/Roadmap.md +0 -23
  127. package/docs/wiki/Tests.md +0 -1393
  128. package/docs/wiki/Upgrading-to-CodeceptJS-3.md +0 -153
  129. package/docs/wiki/Videos.md +0 -19
@@ -1,275 +0,0 @@
1
- ---
2
- permalink: /helpers/Expect
3
- editLink: false
4
- sidebar: auto
5
- title: Expect
6
- ---
7
-
8
- <!-- Generated by documentation.js. Update this documentation by updating the source code. -->
9
-
10
- ## ExpectHelper
11
-
12
- This helper allows performing assertions based on Chai.
13
-
14
- ### Examples
15
-
16
- Zero-configuration when paired with other helpers like REST, Playwright:
17
-
18
- ```js
19
- // inside codecept.conf.js
20
- {
21
- helpers: {
22
- Playwright: {...},
23
- Expect: {},
24
- }
25
- }
26
- ```
27
-
28
- ## Methods
29
-
30
- ### expectAbove
31
-
32
- #### Parameters
33
-
34
- - `targetData` **any**
35
- - `aboveThan` **any**
36
- - `customErrorMsg` **any?**
37
-
38
- ### expectBelow
39
-
40
- #### Parameters
41
-
42
- - `targetData` **any**
43
- - `belowThan` **any**
44
- - `customErrorMsg` **any?**
45
-
46
- ### expectContain
47
-
48
- #### Parameters
49
-
50
- - `actualValue` **any**
51
- - `expectedValueToContain` **any**
52
- - `customErrorMsg` **any?**
53
-
54
- ### expectDeepEqual
55
-
56
- #### Parameters
57
-
58
- - `actualValue` **any**
59
- - `expectedValue` **any**
60
- - `customErrorMsg` **any?**
61
-
62
- ### expectDeepEqualExcluding
63
-
64
- expects members of two JSON objects are deeply equal excluding some properties
65
-
66
- #### Parameters
67
-
68
- - `actualValue` **any**
69
- - `expectedValue` **any**
70
- - `fieldsToExclude` **any**
71
- - `customErrorMsg` **any?**
72
-
73
- ### expectDeepIncludeMembers
74
-
75
- expects an array to be a superset of another array
76
-
77
- #### Parameters
78
-
79
- - `superset` **any**
80
- - `set` **any**
81
- - `customErrorMsg` **any?**
82
-
83
- ### expectDeepMembers
84
-
85
- expects members of two arrays are deeply equal
86
-
87
- #### Parameters
88
-
89
- - `actualValue` **any**
90
- - `expectedValue` **any**
91
- - `customErrorMsg` **any?**
92
-
93
- ### expectEmpty
94
-
95
- #### Parameters
96
-
97
- - `targetData` **any**
98
- - `customErrorMsg` **any?**
99
-
100
- ### expectEndsWith
101
-
102
- #### Parameters
103
-
104
- - `actualValue` **any**
105
- - `expectedValueToEndWith` **any**
106
- - `customErrorMsg` **any?**
107
-
108
- ### expectEqual
109
-
110
- #### Parameters
111
-
112
- - `actualValue` **any**
113
- - `expectedValue` **any**
114
- - `customErrorMsg` **any?**
115
-
116
- ### expectEqualIgnoreCase
117
-
118
- #### Parameters
119
-
120
- - `actualValue` **any**
121
- - `expectedValue` **any**
122
- - `customErrorMsg` **any?**
123
-
124
- ### expectFalse
125
-
126
- #### Parameters
127
-
128
- - `targetData` **any**
129
- - `customErrorMsg` **any?**
130
-
131
- ### expectHasAProperty
132
-
133
- #### Parameters
134
-
135
- - `targetData` **any**
136
- - `propertyName` **any**
137
- - `customErrorMsg` **any?**
138
-
139
- ### expectHasProperty
140
-
141
- #### Parameters
142
-
143
- - `targetData` **any**
144
- - `propertyName` **any**
145
- - `customErrorMsg` **any?**
146
-
147
- ### expectJsonSchema
148
-
149
- #### Parameters
150
-
151
- - `targetData` **any**
152
- - `jsonSchema` **any**
153
- - `customErrorMsg` **any?**
154
-
155
- ### expectJsonSchemaUsingAJV
156
-
157
- #### Parameters
158
-
159
- - `targetData` **any**
160
- - `jsonSchema` **any**
161
- - `customErrorMsg` **any?**
162
- - `ajvOptions` **any** Pass AJV options
163
-
164
- ### expectLengthAboveThan
165
-
166
- #### Parameters
167
-
168
- - `targetData` **any**
169
- - `lengthAboveThan` **any**
170
- - `customErrorMsg` **any?**
171
-
172
- ### expectLengthBelowThan
173
-
174
- #### Parameters
175
-
176
- - `targetData` **any**
177
- - `lengthBelowThan` **any**
178
- - `customErrorMsg` **any?**
179
-
180
- ### expectLengthOf
181
-
182
- #### Parameters
183
-
184
- - `targetData` **any**
185
- - `length` **any**
186
- - `customErrorMsg` **any?**
187
-
188
- ### expectMatchesPattern
189
-
190
- expects a JSON object matches a provided pattern
191
-
192
- #### Parameters
193
-
194
- - `actualValue` **any**
195
- - `expectedPattern` **any**
196
- - `customErrorMsg` **any?**
197
-
198
- ### expectMatchRegex
199
-
200
- #### Parameters
201
-
202
- - `targetData` **any**
203
- - `regex` **any**
204
- - `customErrorMsg` **any?**
205
-
206
- ### expectNotContain
207
-
208
- #### Parameters
209
-
210
- - `actualValue` **any**
211
- - `expectedValueToNotContain` **any**
212
- - `customErrorMsg` **any?**
213
-
214
- ### expectNotDeepEqual
215
-
216
- #### Parameters
217
-
218
- - `actualValue` **any**
219
- - `expectedValue` **any**
220
- - `customErrorMsg` **any?**
221
-
222
- ### expectNotEndsWith
223
-
224
- #### Parameters
225
-
226
- - `actualValue` **any**
227
- - `expectedValueToNotEndWith` **any**
228
- - `customErrorMsg` **any?**
229
-
230
- ### expectNotEqual
231
-
232
- #### Parameters
233
-
234
- - `actualValue` **any**
235
- - `expectedValue` **any**
236
- - `customErrorMsg` **any?**
237
-
238
- ### expectNotStartsWith
239
-
240
- #### Parameters
241
-
242
- - `actualValue` **any**
243
- - `expectedValueToNotStartWith` **any**
244
- - `customErrorMsg` **any?**
245
-
246
- ### expectStartsWith
247
-
248
- #### Parameters
249
-
250
- - `actualValue` **any**
251
- - `expectedValueToStartWith` **any**
252
- - `customErrorMsg` **any?**
253
-
254
- ### expectToBeA
255
-
256
- #### Parameters
257
-
258
- - `targetData` **any**
259
- - `type` **any**
260
- - `customErrorMsg` **any?**
261
-
262
- ### expectToBeAn
263
-
264
- #### Parameters
265
-
266
- - `targetData` **any**
267
- - `type` **any**
268
- - `customErrorMsg` **any?**
269
-
270
- ### expectTrue
271
-
272
- #### Parameters
273
-
274
- - `targetData` **any**
275
- - `customErrorMsg` **any?**
@@ -1,152 +0,0 @@
1
- ---
2
- permalink: /helpers/FileSystem
3
- editLink: false
4
- sidebar: auto
5
- title: FileSystem
6
- ---
7
-
8
- <!-- Generated by documentation.js. Update this documentation by updating the source code. -->
9
-
10
- ## FileSystem
11
-
12
- **Extends Helper**
13
-
14
- Helper for testing filesystem.
15
- Can be easily used to check file structures:
16
-
17
- ```js
18
- I.amInPath('test');
19
- I.seeFile('codecept.js');
20
- I.seeInThisFile('FileSystem');
21
- I.dontSeeInThisFile("WebDriver");
22
- ```
23
-
24
- ## Configuration
25
-
26
- Enable helper in config file:
27
-
28
- ```js
29
- helpers: {
30
- FileSystem: {},
31
- }
32
- ```
33
-
34
- ## Methods
35
-
36
- ### amInPath
37
-
38
- Enters a directory In local filesystem.
39
- Starts from a current directory
40
-
41
- #### Parameters
42
-
43
- - `openPath` **[string][1]**
44
-
45
- ### dontSeeFileContentsEqual
46
-
47
- Checks that contents of file found by `seeFile` doesn't equal to text.
48
-
49
- #### Parameters
50
-
51
- - `text` **[string][1]**
52
- - `encoding` **[string][1]**
53
-
54
- ### dontSeeInThisFile
55
-
56
- Checks that file found by `seeFile` doesn't include text.
57
-
58
- #### Parameters
59
-
60
- - `text` **[string][1]**
61
- - `encoding` **[string][1]**
62
-
63
- ### grabFileNames
64
-
65
- Returns file names in current directory.
66
-
67
- ```js
68
- I.handleDownloads();
69
- I.click('Download Files');
70
- I.amInPath('output/downloads');
71
- const downloadedFileNames = I.grabFileNames();
72
- ```
73
-
74
- ### seeFile
75
-
76
- Checks that file exists
77
-
78
- #### Parameters
79
-
80
- - `name` **[string][1]**
81
-
82
- ### seeFileContentsEqual
83
-
84
- Checks that contents of file found by `seeFile` equal to text.
85
-
86
- #### Parameters
87
-
88
- - `text` **[string][1]**
89
- - `encoding` **[string][1]**
90
-
91
- ### seeFileContentsEqualReferenceFile
92
-
93
- Checks that contents of the file found by `seeFile` equal to contents of the file at `pathToReferenceFile`.
94
-
95
- #### Parameters
96
-
97
- - `pathToReferenceFile` **[string][1]**
98
- - `encoding` **[string][1]**
99
- - `encodingReference` **[string][1]**
100
-
101
- ### seeFileNameMatching
102
-
103
- Checks that file with a name including given text exists in the current directory.
104
-
105
- ```js
106
- I.handleDownloads();
107
- I.click('Download as PDF');
108
- I.amInPath('output/downloads');
109
- I.seeFileNameMatching('.pdf');
110
- ```
111
-
112
- #### Parameters
113
-
114
- - `text` **[string][1]**
115
-
116
- ### seeInThisFile
117
-
118
- Checks that file found by `seeFile` includes a text.
119
-
120
- #### Parameters
121
-
122
- - `text` **[string][1]**
123
- - `encoding` **[string][1]**
124
-
125
- ### waitForFile
126
-
127
- Waits for the file to be present in the current directory.
128
-
129
- ```js
130
- I.handleDownloads('downloads/largeFilesName.txt');
131
- I.click('Download large File');
132
- I.amInPath('output/downloads');
133
- I.waitForFile('largeFilesName.txt', 10); // wait 10 seconds for file
134
- ```
135
-
136
- #### Parameters
137
-
138
- - `name` **[string][1]**
139
- - `sec` **[number][2]** seconds to wait
140
-
141
- ### writeToFile
142
-
143
- Writes text to file
144
-
145
- #### Parameters
146
-
147
- - `name` **[string][1]**
148
- - `text` **[string][1]**
149
-
150
- [1]: https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String
151
-
152
- [2]: https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Number
@@ -1,151 +0,0 @@
1
- ---
2
- permalink: /helpers/GraphQL
3
- editLink: false
4
- sidebar: auto
5
- title: GraphQL
6
- ---
7
-
8
- <!-- Generated by documentation.js. Update this documentation by updating the source code. -->
9
-
10
- ## GraphQL
11
-
12
- **Extends Helper**
13
-
14
- GraphQL helper allows to send additional requests to a GraphQl endpoint during acceptance tests.
15
- [Axios][1] library is used to perform requests.
16
-
17
- ## Configuration
18
-
19
- - endpoint: GraphQL base URL
20
- - timeout: timeout for requests in milliseconds. 10000ms by default
21
- - defaultHeaders: a list of default headers
22
- - onRequest: a async function which can update request object.
23
-
24
- ## Example
25
-
26
- ```js
27
- GraphQL: {
28
- endpoint: 'http://site.com/graphql/',
29
- onRequest: (request) => {
30
- request.headers.auth = '123';
31
- }
32
- }
33
- ```
34
-
35
- ## Access From Helpers
36
-
37
- Send GraphQL requests by accessing `_executeQuery` method:
38
-
39
- ```js
40
- this.helpers['GraphQL']._executeQuery({
41
- url,
42
- data,
43
- });
44
- ```
45
-
46
- ## Methods
47
-
48
- ### Parameters
49
-
50
- - `config`
51
-
52
- ### _executeQuery
53
-
54
- Executes query via axios call
55
-
56
- #### Parameters
57
-
58
- - `request` **[object][2]**
59
-
60
- ### _prepareGraphQLRequest
61
-
62
- Prepares request for axios call
63
-
64
- #### Parameters
65
-
66
- - `operation` **[object][2]**
67
- - `headers` **[object][2]**
68
-
69
- Returns **[object][2]** graphQLRequest
70
-
71
- ### amBearerAuthenticated
72
-
73
- Adds a header for Bearer authentication
74
-
75
- ```js
76
- // we use secret function to hide token from logs
77
- I.amBearerAuthenticated(secret('heregoestoken'))
78
- ```
79
-
80
- #### Parameters
81
-
82
- - `accessToken` **([string][3] | CodeceptJS.Secret)** Bearer access token
83
-
84
- ### haveRequestHeaders
85
-
86
- Sets request headers for all requests of this test
87
-
88
- #### Parameters
89
-
90
- - `headers` **[object][2]** headers list
91
-
92
- ### sendMutation
93
-
94
- Send query to GraphQL endpoint over http
95
-
96
- ```js
97
- I.sendMutation(`
98
- mutation createUser($user: UserInput!) {
99
- createUser(user: $user) {
100
- id
101
- name
102
- email
103
- }
104
- }
105
- `,
106
- { user: {
107
- name: 'John Doe',
108
- email: 'john@xmail.com'
109
- }
110
- },
111
- });
112
- ```
113
-
114
- #### Parameters
115
-
116
- - `mutation` **[String][3]**
117
- - `variables` **[object][2]?** that may go along with the mutation
118
- - `options` **[object][2]?** are additional query options
119
- - `headers` **[object][2]?**
120
-
121
- Returns **any** Promise<any>
122
-
123
- ### sendQuery
124
-
125
- Send query to GraphQL endpoint over http.
126
- Returns a response as a promise.
127
-
128
- ```js
129
- const response = await I.sendQuery('{ users { name email }}');
130
- // with variables
131
- const response = await I.sendQuery(
132
- 'query getUser($id: ID) { user(id: $id) { name email }}',
133
- { id: 1 },
134
- )
135
- const user = response.data.data;
136
- ```
137
-
138
- #### Parameters
139
-
140
- - `query` **[String][3]**
141
- - `variables` **[object][2]?** that may go along with the query
142
- - `options` **[object][2]?** are additional query options
143
- - `headers` **[object][2]?**
144
-
145
- Returns **any** Promise<any>
146
-
147
- [1]: https://github.com/axios/axios
148
-
149
- [2]: https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object
150
-
151
- [3]: https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/String