codeceptjs 3.5.12-beta.5 → 3.5.12-beta.7

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 (217) hide show
  1. package/lib/helper/MockServer.js +215 -0
  2. package/lib/helper/Playwright.js +43 -22
  3. package/lib/helper/Puppeteer.js +25 -6
  4. package/lib/helper/WebDriver.js +25 -4
  5. package/lib/helper/errors/ElementAssertion.js +38 -0
  6. package/package.json +6 -5
  7. package/typings/index.d.ts +16 -0
  8. package/typings/promiseBasedTypes.d.ts +182 -0
  9. package/typings/types.d.ts +182 -0
  10. package/docs/advanced.md +0 -351
  11. package/docs/ai.md +0 -248
  12. package/docs/api.md +0 -323
  13. package/docs/basics.md +0 -979
  14. package/docs/bdd.md +0 -539
  15. package/docs/best.md +0 -237
  16. package/docs/books.md +0 -37
  17. package/docs/bootstrap.md +0 -135
  18. package/docs/build/ApiDataFactory.js +0 -410
  19. package/docs/build/Appium.js +0 -2027
  20. package/docs/build/Expect.js +0 -422
  21. package/docs/build/FileSystem.js +0 -228
  22. package/docs/build/GraphQL.js +0 -229
  23. package/docs/build/GraphQLDataFactory.js +0 -309
  24. package/docs/build/JSONResponse.js +0 -338
  25. package/docs/build/Mochawesome.js +0 -71
  26. package/docs/build/Nightmare.js +0 -2152
  27. package/docs/build/OpenAI.js +0 -126
  28. package/docs/build/Playwright.js +0 -5110
  29. package/docs/build/Protractor.js +0 -2706
  30. package/docs/build/Puppeteer.js +0 -3905
  31. package/docs/build/REST.js +0 -344
  32. package/docs/build/TestCafe.js +0 -2125
  33. package/docs/build/WebDriver.js +0 -4240
  34. package/docs/changelog.md +0 -2572
  35. package/docs/commands.md +0 -266
  36. package/docs/community-helpers.md +0 -58
  37. package/docs/configuration.md +0 -157
  38. package/docs/continuous-integration.md +0 -22
  39. package/docs/custom-helpers.md +0 -306
  40. package/docs/data.md +0 -379
  41. package/docs/detox.md +0 -235
  42. package/docs/docker.md +0 -136
  43. package/docs/email.md +0 -183
  44. package/docs/examples.md +0 -149
  45. package/docs/helpers/ApiDataFactory.md +0 -266
  46. package/docs/helpers/Appium.md +0 -1374
  47. package/docs/helpers/Detox.md +0 -586
  48. package/docs/helpers/Expect.md +0 -275
  49. package/docs/helpers/FileSystem.md +0 -152
  50. package/docs/helpers/GraphQL.md +0 -151
  51. package/docs/helpers/GraphQLDataFactory.md +0 -226
  52. package/docs/helpers/JSONResponse.md +0 -254
  53. package/docs/helpers/Mochawesome.md +0 -8
  54. package/docs/helpers/MockRequest.md +0 -377
  55. package/docs/helpers/Nightmare.md +0 -1305
  56. package/docs/helpers/OpenAI.md +0 -70
  57. package/docs/helpers/Playwright.md +0 -2759
  58. package/docs/helpers/Polly.md +0 -44
  59. package/docs/helpers/Protractor.md +0 -1769
  60. package/docs/helpers/Puppeteer-firefox.md +0 -86
  61. package/docs/helpers/Puppeteer.md +0 -2317
  62. package/docs/helpers/REST.md +0 -218
  63. package/docs/helpers/TestCafe.md +0 -1321
  64. package/docs/helpers/WebDriver.md +0 -2547
  65. package/docs/hooks.md +0 -340
  66. package/docs/index.md +0 -111
  67. package/docs/installation.md +0 -75
  68. package/docs/internal-api.md +0 -266
  69. package/docs/locators.md +0 -339
  70. package/docs/mobile-react-native-locators.md +0 -67
  71. package/docs/mobile.md +0 -338
  72. package/docs/pageobjects.md +0 -291
  73. package/docs/parallel.md +0 -400
  74. package/docs/playwright.md +0 -632
  75. package/docs/plugins.md +0 -1259
  76. package/docs/puppeteer.md +0 -316
  77. package/docs/quickstart.md +0 -162
  78. package/docs/react.md +0 -70
  79. package/docs/reports.md +0 -392
  80. package/docs/secrets.md +0 -36
  81. package/docs/shadow.md +0 -68
  82. package/docs/shared/keys.mustache +0 -31
  83. package/docs/shared/react.mustache +0 -1
  84. package/docs/testcafe.md +0 -174
  85. package/docs/translation.md +0 -247
  86. package/docs/tutorial.md +0 -271
  87. package/docs/typescript.md +0 -180
  88. package/docs/ui.md +0 -59
  89. package/docs/videos.md +0 -28
  90. package/docs/visual.md +0 -202
  91. package/docs/vue.md +0 -143
  92. package/docs/webapi/amOnPage.mustache +0 -11
  93. package/docs/webapi/appendField.mustache +0 -11
  94. package/docs/webapi/attachFile.mustache +0 -12
  95. package/docs/webapi/blur.mustache +0 -18
  96. package/docs/webapi/checkOption.mustache +0 -13
  97. package/docs/webapi/clearCookie.mustache +0 -9
  98. package/docs/webapi/clearField.mustache +0 -9
  99. package/docs/webapi/click.mustache +0 -25
  100. package/docs/webapi/clickLink.mustache +0 -8
  101. package/docs/webapi/closeCurrentTab.mustache +0 -7
  102. package/docs/webapi/closeOtherTabs.mustache +0 -8
  103. package/docs/webapi/dontSee.mustache +0 -11
  104. package/docs/webapi/dontSeeCheckboxIsChecked.mustache +0 -10
  105. package/docs/webapi/dontSeeCookie.mustache +0 -8
  106. package/docs/webapi/dontSeeCurrentUrlEquals.mustache +0 -10
  107. package/docs/webapi/dontSeeElement.mustache +0 -8
  108. package/docs/webapi/dontSeeElementInDOM.mustache +0 -8
  109. package/docs/webapi/dontSeeInCurrentUrl.mustache +0 -4
  110. package/docs/webapi/dontSeeInField.mustache +0 -11
  111. package/docs/webapi/dontSeeInSource.mustache +0 -8
  112. package/docs/webapi/dontSeeInTitle.mustache +0 -8
  113. package/docs/webapi/doubleClick.mustache +0 -13
  114. package/docs/webapi/downloadFile.mustache +0 -12
  115. package/docs/webapi/dragAndDrop.mustache +0 -9
  116. package/docs/webapi/dragSlider.mustache +0 -11
  117. package/docs/webapi/executeAsyncScript.mustache +0 -24
  118. package/docs/webapi/executeScript.mustache +0 -26
  119. package/docs/webapi/fillField.mustache +0 -16
  120. package/docs/webapi/focus.mustache +0 -13
  121. package/docs/webapi/forceClick.mustache +0 -28
  122. package/docs/webapi/forceRightClick.mustache +0 -18
  123. package/docs/webapi/grabAllWindowHandles.mustache +0 -7
  124. package/docs/webapi/grabAttributeFrom.mustache +0 -10
  125. package/docs/webapi/grabAttributeFromAll.mustache +0 -9
  126. package/docs/webapi/grabBrowserLogs.mustache +0 -9
  127. package/docs/webapi/grabCookie.mustache +0 -11
  128. package/docs/webapi/grabCssPropertyFrom.mustache +0 -11
  129. package/docs/webapi/grabCssPropertyFromAll.mustache +0 -10
  130. package/docs/webapi/grabCurrentUrl.mustache +0 -9
  131. package/docs/webapi/grabCurrentWindowHandle.mustache +0 -6
  132. package/docs/webapi/grabDataFromPerformanceTiming.mustache +0 -20
  133. package/docs/webapi/grabElementBoundingRect.mustache +0 -20
  134. package/docs/webapi/grabGeoLocation.mustache +0 -8
  135. package/docs/webapi/grabHTMLFrom.mustache +0 -10
  136. package/docs/webapi/grabHTMLFromAll.mustache +0 -9
  137. package/docs/webapi/grabNumberOfOpenTabs.mustache +0 -8
  138. package/docs/webapi/grabNumberOfVisibleElements.mustache +0 -9
  139. package/docs/webapi/grabPageScrollPosition.mustache +0 -8
  140. package/docs/webapi/grabPopupText.mustache +0 -5
  141. package/docs/webapi/grabSource.mustache +0 -8
  142. package/docs/webapi/grabTextFrom.mustache +0 -10
  143. package/docs/webapi/grabTextFromAll.mustache +0 -9
  144. package/docs/webapi/grabTitle.mustache +0 -8
  145. package/docs/webapi/grabValueFrom.mustache +0 -9
  146. package/docs/webapi/grabValueFromAll.mustache +0 -8
  147. package/docs/webapi/grabWebElement.mustache +0 -9
  148. package/docs/webapi/grabWebElements.mustache +0 -9
  149. package/docs/webapi/moveCursorTo.mustache +0 -12
  150. package/docs/webapi/openNewTab.mustache +0 -7
  151. package/docs/webapi/pressKey.mustache +0 -12
  152. package/docs/webapi/pressKeyDown.mustache +0 -12
  153. package/docs/webapi/pressKeyUp.mustache +0 -12
  154. package/docs/webapi/pressKeyWithKeyNormalization.mustache +0 -60
  155. package/docs/webapi/refreshPage.mustache +0 -6
  156. package/docs/webapi/resizeWindow.mustache +0 -6
  157. package/docs/webapi/rightClick.mustache +0 -14
  158. package/docs/webapi/saveElementScreenshot.mustache +0 -10
  159. package/docs/webapi/saveScreenshot.mustache +0 -12
  160. package/docs/webapi/say.mustache +0 -10
  161. package/docs/webapi/scrollIntoView.mustache +0 -11
  162. package/docs/webapi/scrollPageToBottom.mustache +0 -6
  163. package/docs/webapi/scrollPageToTop.mustache +0 -6
  164. package/docs/webapi/scrollTo.mustache +0 -12
  165. package/docs/webapi/see.mustache +0 -11
  166. package/docs/webapi/seeAttributesOnElements.mustache +0 -9
  167. package/docs/webapi/seeCheckboxIsChecked.mustache +0 -10
  168. package/docs/webapi/seeCookie.mustache +0 -8
  169. package/docs/webapi/seeCssPropertiesOnElements.mustache +0 -9
  170. package/docs/webapi/seeCurrentUrlEquals.mustache +0 -11
  171. package/docs/webapi/seeElement.mustache +0 -8
  172. package/docs/webapi/seeElementInDOM.mustache +0 -8
  173. package/docs/webapi/seeInCurrentUrl.mustache +0 -8
  174. package/docs/webapi/seeInField.mustache +0 -12
  175. package/docs/webapi/seeInPopup.mustache +0 -8
  176. package/docs/webapi/seeInSource.mustache +0 -7
  177. package/docs/webapi/seeInTitle.mustache +0 -8
  178. package/docs/webapi/seeNumberOfElements.mustache +0 -11
  179. package/docs/webapi/seeNumberOfVisibleElements.mustache +0 -10
  180. package/docs/webapi/seeTextEquals.mustache +0 -9
  181. package/docs/webapi/seeTitleEquals.mustache +0 -8
  182. package/docs/webapi/selectOption.mustache +0 -21
  183. package/docs/webapi/setCookie.mustache +0 -16
  184. package/docs/webapi/setGeoLocation.mustache +0 -12
  185. package/docs/webapi/switchTo.mustache +0 -9
  186. package/docs/webapi/switchToNextTab.mustache +0 -10
  187. package/docs/webapi/switchToPreviousTab.mustache +0 -10
  188. package/docs/webapi/type.mustache +0 -21
  189. package/docs/webapi/uncheckOption.mustache +0 -13
  190. package/docs/webapi/wait.mustache +0 -8
  191. package/docs/webapi/waitForClickable.mustache +0 -11
  192. package/docs/webapi/waitForDetached.mustache +0 -10
  193. package/docs/webapi/waitForElement.mustache +0 -11
  194. package/docs/webapi/waitForEnabled.mustache +0 -6
  195. package/docs/webapi/waitForFunction.mustache +0 -17
  196. package/docs/webapi/waitForInvisible.mustache +0 -10
  197. package/docs/webapi/waitForNumberOfTabs.mustache +0 -9
  198. package/docs/webapi/waitForText.mustache +0 -13
  199. package/docs/webapi/waitForValue.mustache +0 -10
  200. package/docs/webapi/waitForVisible.mustache +0 -10
  201. package/docs/webapi/waitInUrl.mustache +0 -9
  202. package/docs/webapi/waitNumberOfVisibleElements.mustache +0 -10
  203. package/docs/webapi/waitToHide.mustache +0 -10
  204. package/docs/webapi/waitUrlEquals.mustache +0 -10
  205. package/docs/webdriver.md +0 -701
  206. package/docs/wiki/Books-&-Posts.md +0 -27
  207. package/docs/wiki/Community-Helpers-&-Plugins.md +0 -53
  208. package/docs/wiki/Converting-Playwright-to-Istanbul-Coverage.md +0 -61
  209. package/docs/wiki/Examples.md +0 -145
  210. package/docs/wiki/Google-Summer-of-Code-(GSoC)-2020.md +0 -68
  211. package/docs/wiki/Home.md +0 -16
  212. package/docs/wiki/Migration-to-Appium-v2---CodeceptJS.md +0 -83
  213. package/docs/wiki/Release-Process.md +0 -24
  214. package/docs/wiki/Roadmap.md +0 -23
  215. package/docs/wiki/Tests.md +0 -1393
  216. package/docs/wiki/Upgrading-to-CodeceptJS-3.md +0 -153
  217. 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