File tree Expand file tree Collapse file tree 7 files changed +51
-1
lines changed Expand file tree Collapse file tree 7 files changed +51
-1
lines changed Original file line number Diff line number Diff line change @@ -148,6 +148,7 @@ REST helper can send GET/POST/PATCH/etc requests to REST API endpoint:
148148* [ ` I.sendPutRequest() ` ] ( /helpers/REST#sendPutRequest )
149149* [ ` I.sendPatchRequest() ` ] ( /helpers/REST#sendPatchRequest )
150150* [ ` I.sendDeleteRequest() ` ] ( /helpers/REST#sendDeleteRequest )
151+ * [ ` I.sendDeleteRequestWithPayload() ` ] ( /helpers/REST#sendDeleteRequestWithPayload )
151152* ...
152153
153154Authentication headers can be set in [ helper's config] ( https://codecept.io/helpers/REST/#configuration ) or per test with headers or special methods like ` I.amBearerAuthenticated ` .
Original file line number Diff line number Diff line change @@ -54,6 +54,7 @@ I.sendPostRequest()
5454I .sendPutRequest ()
5555I .sendPatchRequest ()
5656I .sendDeleteRequest ()
57+ I .sendDeleteRequestWithPayload ()
5758```
5859
5960As well as a method for setting headers: ` haveRequestHeaders ` .
Original file line number Diff line number Diff line change @@ -156,6 +156,22 @@ I.sendDeleteRequest('/api/users/1');
156156
157157Returns ** [ Promise] [ 2 ] < ; any>** response
158158
159+ ### sendDeleteRequestWithPayload
160+
161+ Sends DELETE request to API with payload.
162+
163+ ``` js
164+ I .sendDeleteRequestWithPayload (' /api/users/1' , { author: ' john' });
165+ ```
166+
167+ #### Parameters
168+
169+ - ` url ` ** any**
170+ - ` payload ` ** any** the payload to be sent. By default it is sent as an empty object
171+ - ` headers ` ** [ object] [ 4 ] ** the headers object to be sent. By default, it is sent as an empty object
172+
173+ Returns ** [ Promise] [ 2 ] < ; any>** response
174+
159175### sendGetRequest
160176
161177Send GET request to REST API
Original file line number Diff line number Diff line change @@ -408,6 +408,30 @@ class REST extends Helper {
408408
409409 return this . _executeRequest ( request )
410410 }
411+
412+ /**
413+ * Sends DELETE request to API with payload.
414+ *
415+ * ```js
416+ * I.sendDeleteRequestWithPayload('/api/users/1', { author: 'john' });
417+ * ```
418+ *
419+ * @param {* } url
420+ * @param {* } [payload={}] - the payload to be sent. By default it is sent as an empty object
421+ * @param {object } [headers={}] - the headers object to be sent. By default, it is sent as an empty object
422+ *
423+ * @returns {Promise<*> } response
424+ */
425+ async sendDeleteRequestWithPayload ( url , payload = { } , headers = { } ) {
426+ const request = {
427+ baseURL : this . _url ( url ) ,
428+ method : 'DELETE' ,
429+ data : payload ,
430+ headers,
431+ }
432+
433+ return this . _executeRequest ( request )
434+ }
411435}
412436
413437module . exports = REST
Original file line number Diff line number Diff line change @@ -109,6 +109,13 @@ describe('REST', () => {
109109 getResponse . data . should . be . empty
110110 } )
111111
112+ it ( 'should send DELETE requests with payload' , async ( ) => {
113+ await I . sendDeleteRequestWithPayload ( '/posts/1' , { author : 'john' } )
114+ const getResponse = await I . sendGetRequest ( '/posts' )
115+
116+ getResponse . data . should . be . empty
117+ } )
118+
112119 it ( 'should update request with onRequest' , async ( ) => {
113120 I . config . onRequest = ( request ) => ( request . data = { name : 'Vasya' } )
114121
Original file line number Diff line number Diff line change @@ -68,6 +68,7 @@ module.exports = {
6868 sendGetRequest : 'mache_einen_get_request' ,
6969 sendPutRequest : 'mache_einen_put_request' ,
7070 sendDeleteRequest : 'mache_einen_delete_request' ,
71+ sendDeleteRequestWithPayload : 'mache_einen_delete_request_mit_payload' ,
7172 sendPostRequest : 'mache_einen_post_request' ,
7273 switchTo : 'wechlse_in_iframe' ,
7374 } ,
Original file line number Diff line number Diff line change @@ -70,7 +70,7 @@ module.exports = {
7070 scrollTo : 'défileVers' ,
7171 sendGetRequest : 'envoieLaRequêteGet' ,
7272 sendPutRequest : 'envoieLaRequêtePut' ,
73- sendDeleteRequest : 'envoieLaRequêteDelete ' ,
73+ sendDeleteRequest : 'envoieLaRequêteDeleteAvecPayload ' ,
7474 sendPostRequest : 'envoieLaRequêtePost' ,
7575 } ,
7676}
You can’t perform that action at this time.
0 commit comments