codeceptjs 3.5.12-beta.2 → 3.5.12-beta.3

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