@serenity-js/rest 3.25.0 → 3.25.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/CHANGELOG.md +11 -0
- package/README.md +1 -1
- package/lib/screenplay/abilities/CallAnApi.d.ts +17 -15
- package/lib/screenplay/abilities/CallAnApi.d.ts.map +1 -1
- package/lib/screenplay/abilities/CallAnApi.js +17 -15
- package/lib/screenplay/abilities/CallAnApi.js.map +1 -1
- package/lib/screenplay/interactions/ChangeApiConfig.d.ts +11 -11
- package/lib/screenplay/interactions/ChangeApiConfig.js +11 -11
- package/lib/screenplay/interactions/Send.d.ts +3 -3
- package/lib/screenplay/interactions/Send.js +3 -3
- package/lib/screenplay/models/DeleteRequest.d.ts +6 -6
- package/lib/screenplay/models/DeleteRequest.js +6 -6
- package/lib/screenplay/models/GetRequest.d.ts +6 -6
- package/lib/screenplay/models/GetRequest.js +6 -6
- package/lib/screenplay/models/HTTPRequest.d.ts +3 -3
- package/lib/screenplay/models/HTTPRequest.js +3 -3
- package/lib/screenplay/models/HeadRequest.d.ts +6 -6
- package/lib/screenplay/models/HeadRequest.js +6 -6
- package/lib/screenplay/models/OptionsRequest.d.ts +6 -6
- package/lib/screenplay/models/OptionsRequest.js +6 -6
- package/lib/screenplay/models/PatchRequest.d.ts +6 -6
- package/lib/screenplay/models/PatchRequest.js +6 -6
- package/lib/screenplay/models/PostRequest.d.ts +6 -6
- package/lib/screenplay/models/PostRequest.js +6 -6
- package/lib/screenplay/models/PutRequest.d.ts +6 -6
- package/lib/screenplay/models/PutRequest.js +6 -6
- package/lib/screenplay/questions/LastResponse.d.ts +6 -6
- package/lib/screenplay/questions/LastResponse.js +6 -6
- package/package.json +4 -4
- package/src/screenplay/abilities/CallAnApi.ts +17 -15
- package/src/screenplay/interactions/ChangeApiConfig.ts +11 -11
- package/src/screenplay/interactions/Send.ts +3 -3
- package/src/screenplay/models/DeleteRequest.ts +6 -6
- package/src/screenplay/models/GetRequest.ts +6 -6
- package/src/screenplay/models/HTTPRequest.ts +3 -3
- package/src/screenplay/models/HeadRequest.ts +6 -6
- package/src/screenplay/models/OptionsRequest.ts +6 -6
- package/src/screenplay/models/PatchRequest.ts +6 -6
- package/src/screenplay/models/PostRequest.ts +6 -6
- package/src/screenplay/models/PutRequest.ts +6 -6
- package/src/screenplay/questions/LastResponse.ts +6 -6
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,17 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
## [3.25.1](https://github.com/serenity-js/serenity-js/compare/v3.25.0...v3.25.1) (2024-07-10)
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
### Bug Fixes
|
|
10
|
+
|
|
11
|
+
* **core:** all the API docs now link to the online Serenity/JS API documentation ([f8f451d](https://github.com/serenity-js/serenity-js/commit/f8f451dffdb4caaa2e31a860f59d59470f4856ad))
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
6
17
|
# [3.25.0](https://github.com/serenity-js/serenity-js/compare/v3.24.1...v3.25.0) (2024-07-03)
|
|
7
18
|
|
|
8
19
|
|
package/README.md
CHANGED
|
@@ -17,7 +17,7 @@ of complex software systems faster, more collaborative and easier to scale.
|
|
|
17
17
|
👋 Join the Serenity/JS Community!
|
|
18
18
|
- Meet other Serenity/JS developers and maintainers on the [Serenity/JS Community chat channel](https://matrix.to/#/#serenity-js:gitter.im),
|
|
19
19
|
- Find answers to your Serenity/JS questions on the [Serenity/JS Forum](https://github.com/orgs/serenity-js/discussions/categories/how-do-i),
|
|
20
|
-
- Learn how to [contribute to Serenity/JS](https://serenity-js.org/contributing),
|
|
20
|
+
- Learn how to [contribute to Serenity/JS](https://serenity-js.org/community/contributing/),
|
|
21
21
|
- Support the project and gain access to [Serenity/JS Playbooks](https://github.com/serenity-js/playbooks) by becoming a [Serenity/JS GitHub Sponsor](https://github.com/sponsors/serenity-js)!
|
|
22
22
|
|
|
23
23
|
## Serenity/JS REST
|
|
@@ -3,8 +3,9 @@ import { Ability } from '@serenity-js/core';
|
|
|
3
3
|
import { type AxiosDefaults, type AxiosInstance, type AxiosRequestConfig, type AxiosResponse } from 'axios';
|
|
4
4
|
import type { AxiosRequestConfigDefaults } from '../../io';
|
|
5
5
|
/**
|
|
6
|
-
* An
|
|
7
|
-
* the
|
|
6
|
+
* An [ability](https://serenity-js.org/api/core/class/Ability/) that wraps [axios client](https://axios-http.com/docs/api_intro) and enables
|
|
7
|
+
* the [actor](https://serenity-js.org/api/core/class/Actor/) to [send](https://serenity-js.org/api/rest/class/Send/)
|
|
8
|
+
* [HTTP requests](https://serenity-js.org/api/rest/class/HTTPRequest/) to HTTP APIs.
|
|
8
9
|
*
|
|
9
10
|
* `CallAnApi` uses [`proxy-from-env`](https://www.npmjs.com/package/proxy-from-env) and an approach
|
|
10
11
|
* described in ["Node.js Axios behind corporate proxies"](https://janmolak.com/node-js-axios-behind-corporate-proxies-8b17a6f31f9d)
|
|
@@ -183,7 +184,7 @@ import type { AxiosRequestConfigDefaults } from '../../io';
|
|
|
183
184
|
*
|
|
184
185
|
* ### Serenity/JS defaults
|
|
185
186
|
*
|
|
186
|
-
* When using
|
|
187
|
+
* When using [`CallAnApi.at`](https://serenity-js.org/api/rest/class/CallAnApi/#at) or [`CallAnApi.using`](https://serenity-js.org/api/rest/class/CallAnApi/#using) with a configuration object, Serenity/JS
|
|
187
188
|
* merges your [Axios request configuration](https://axios-http.com/docs/req_config) with the following defaults:
|
|
188
189
|
* - `timeout`: 10 seconds
|
|
189
190
|
*
|
|
@@ -220,7 +221,7 @@ import type { AxiosRequestConfigDefaults } from '../../io';
|
|
|
220
221
|
*
|
|
221
222
|
* ### Using API-specific actors
|
|
222
223
|
*
|
|
223
|
-
* To create API-specific actors, configure your [test runner](/handbook/test-runners/) with a
|
|
224
|
+
* To create API-specific actors, configure your [test runner](https://serenity-js.org/handbook/test-runners/) with a [cast](https://serenity-js.org/api/core/class/Cast/)
|
|
224
225
|
* that gives your actors appropriate abilities based, for example, on their name:
|
|
225
226
|
*
|
|
226
227
|
* ```ts
|
|
@@ -244,7 +245,7 @@ import type { AxiosRequestConfigDefaults } from '../../io';
|
|
|
244
245
|
* beforeEach(() => engage(new MyActors()))
|
|
245
246
|
* ```
|
|
246
247
|
*
|
|
247
|
-
* Next, retrieve the appropriate actor in your test scenario using
|
|
248
|
+
* Next, retrieve the appropriate actor in your test scenario using [`actorCalled`](https://serenity-js.org/api/core/function/actorCalled/), for example:
|
|
248
249
|
*
|
|
249
250
|
* ```ts
|
|
250
251
|
* import { describe, it, beforeEach } from 'mocha'
|
|
@@ -315,7 +316,7 @@ export declare class CallAnApi extends Ability {
|
|
|
315
316
|
private readonly axiosInstance;
|
|
316
317
|
private lastResponse;
|
|
317
318
|
/**
|
|
318
|
-
* Produces an
|
|
319
|
+
* Produces an [ability](https://serenity-js.org/api/core/class/Ability/) to call a REST API at a specified `baseURL`;
|
|
319
320
|
*
|
|
320
321
|
* This is the same as invoking `CallAnApi.using({ baseURL: 'https://example.org' })`
|
|
321
322
|
*
|
|
@@ -323,7 +324,7 @@ export declare class CallAnApi extends Ability {
|
|
|
323
324
|
*/
|
|
324
325
|
static at(baseURL: URL | string): CallAnApi;
|
|
325
326
|
/**
|
|
326
|
-
* Produces an
|
|
327
|
+
* Produces an [ability](https://serenity-js.org/api/core/class/Ability/) to call an HTTP API using the given Axios instance,
|
|
327
328
|
* or an Axios request configuration object.
|
|
328
329
|
*
|
|
329
330
|
* When you provide an [Axios configuration object](https://axios-http.com/docs/req_config),
|
|
@@ -335,7 +336,7 @@ export declare class CallAnApi extends Ability {
|
|
|
335
336
|
* When you provide an Axios instance, it's enhanced with proxy support and no other modifications are made.
|
|
336
337
|
*
|
|
337
338
|
* If you don't want Serenity/JS to augment or modify your Axios instance in any way,
|
|
338
|
-
* please use the
|
|
339
|
+
* please use the [`CallAnApi.constructor`](https://serenity-js.org/api/rest/class/CallAnApi/#constructor) directly.
|
|
339
340
|
*
|
|
340
341
|
* @param axiosInstanceOrConfig
|
|
341
342
|
*/
|
|
@@ -350,8 +351,8 @@ export declare class CallAnApi extends Ability {
|
|
|
350
351
|
constructor(axiosInstance: AxiosInstance);
|
|
351
352
|
/**
|
|
352
353
|
* Allows for the original Axios config to be changed after
|
|
353
|
-
* the
|
|
354
|
-
* has been instantiated and given to the
|
|
354
|
+
* the [ability](https://serenity-js.org/api/core/class/Ability/) to [`CallAnApi`](https://serenity-js.org/api/rest/class/CallAnApi/)
|
|
355
|
+
* has been instantiated and given to the [`Actor`](https://serenity-js.org/api/core/class/Actor/).
|
|
355
356
|
*
|
|
356
357
|
* #### Learn more
|
|
357
358
|
* - [AxiosRequestConfig](https://axios-http.com/docs/req_config)
|
|
@@ -361,7 +362,7 @@ export declare class CallAnApi extends Ability {
|
|
|
361
362
|
modifyConfig(fn: (original: AxiosDefaults<any>) => any): void;
|
|
362
363
|
/**
|
|
363
364
|
* Sends an HTTP request to a specified url.
|
|
364
|
-
* Response will be cached and available via
|
|
365
|
+
* Response will be cached and available via [`CallAnApi.mapLastResponse`](https://serenity-js.org/api/rest/class/CallAnApi/#mapLastResponse).
|
|
365
366
|
*
|
|
366
367
|
* #### Learn more
|
|
367
368
|
* - [AxiosRequestConfig](https://axios-http.com/docs/req_config)
|
|
@@ -369,12 +370,13 @@ export declare class CallAnApi extends Ability {
|
|
|
369
370
|
*
|
|
370
371
|
* @param config
|
|
371
372
|
* Axios request configuration, which can be used to override the defaults
|
|
372
|
-
* provided when the
|
|
373
|
+
* provided when the [ability](https://serenity-js.org/api/core/class/Ability/)
|
|
374
|
+
* to [`CallAnApi`](https://serenity-js.org/api/rest/class/CallAnApi/) was instantiated.
|
|
373
375
|
*/
|
|
374
376
|
request(config: AxiosRequestConfig): Promise<AxiosResponse>;
|
|
375
377
|
/**
|
|
376
|
-
* Resolves the final URL, based on the
|
|
377
|
-
* and any defaults that the
|
|
378
|
+
* Resolves the final URL, based on the [`AxiosRequestConfig`](https://axios-http.com/docs/req_config) provided
|
|
379
|
+
* and any defaults that the [`AxiosInstance`](https://axios-http.com/docs/instance) has been configured with.
|
|
378
380
|
*
|
|
379
381
|
* Note that unlike Axios, this method uses the Node.js [WHATWG URL API](https://nodejs.org/api/url.html#new-urlinput-base)
|
|
380
382
|
* to ensure URLs are correctly resolved.
|
|
@@ -384,7 +386,7 @@ export declare class CallAnApi extends Ability {
|
|
|
384
386
|
resolveUrl(config: AxiosRequestConfig): string;
|
|
385
387
|
/**
|
|
386
388
|
* Maps the last cached response to another type.
|
|
387
|
-
* Useful when you need to extract a portion of the
|
|
389
|
+
* Useful when you need to extract a portion of the [`AxiosResponse`](https://axios-http.com/docs/res_schema) object.
|
|
388
390
|
*
|
|
389
391
|
* #### Learn more
|
|
390
392
|
* - [AxiosResponse](https://axios-http.com/docs/res_schema)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CallAnApi.d.ts","sourceRoot":"","sources":["../../../src/screenplay/abilities/CallAnApi.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,OAAO,EAAwD,MAAM,mBAAmB,CAAC;AAClG,OAAO,EACH,KAAK,aAAa,EAElB,KAAK,aAAa,EAClB,KAAK,kBAAkB,EACvB,KAAK,aAAa,EACrB,MAAM,OAAO,CAAC;AAEf,OAAO,KAAK,EAAE,0BAA0B,EAAC,MAAM,UAAU,CAAC;AAG1D
|
|
1
|
+
{"version":3,"file":"CallAnApi.d.ts","sourceRoot":"","sources":["../../../src/screenplay/abilities/CallAnApi.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,OAAO,EAAwD,MAAM,mBAAmB,CAAC;AAClG,OAAO,EACH,KAAK,aAAa,EAElB,KAAK,aAAa,EAClB,KAAK,kBAAkB,EACvB,KAAK,aAAa,EACrB,MAAM,OAAO,CAAC;AAEf,OAAO,KAAK,EAAE,0BAA0B,EAAC,MAAM,UAAU,CAAC;AAG1D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqTG;AACH,qBAAa,SAAU,SAAQ,OAAO;IA+CtB,OAAO,CAAC,QAAQ,CAAC,aAAa;IA7C1C,OAAO,CAAC,YAAY,CAAgB;IAEpC;;;;;;OAMG;IACH,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,GAAG,MAAM,GAAG,SAAS;IAQ3C;;;;;;;;;;;;;;;;OAgBG;IACH,MAAM,CAAC,KAAK,CAAC,qBAAqB,EAAE,aAAa,GAAG,0BAA0B,GAAG,SAAS;IAI1F;;;;;;OAMG;gBAC0B,aAAa,EAAE,aAAa;IAIzD;;;;;;;;;OASG;IACH,YAAY,CAAC,EAAE,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,GAAG,CAAC,KAAK,GAAG,GAAG,IAAI;IAI7D;;;;;;;;;;;;OAYG;IACG,OAAO,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,aAAa,CAAC;IAgCjE;;;;;;;;OAQG;IACH,UAAU,CAAC,MAAM,EAAE,kBAAkB,GAAG,MAAM;IAQ9C;;;;;;;;OAQG;IACH,eAAe,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC,QAAQ,EAAE,aAAa,KAAK,CAAC,GAAG,CAAC;CAOzE"}
|
|
@@ -4,8 +4,9 @@ exports.CallAnApi = void 0;
|
|
|
4
4
|
const core_1 = require("@serenity-js/core");
|
|
5
5
|
const io_1 = require("../../io");
|
|
6
6
|
/**
|
|
7
|
-
* An
|
|
8
|
-
* the
|
|
7
|
+
* An [ability](https://serenity-js.org/api/core/class/Ability/) that wraps [axios client](https://axios-http.com/docs/api_intro) and enables
|
|
8
|
+
* the [actor](https://serenity-js.org/api/core/class/Actor/) to [send](https://serenity-js.org/api/rest/class/Send/)
|
|
9
|
+
* [HTTP requests](https://serenity-js.org/api/rest/class/HTTPRequest/) to HTTP APIs.
|
|
9
10
|
*
|
|
10
11
|
* `CallAnApi` uses [`proxy-from-env`](https://www.npmjs.com/package/proxy-from-env) and an approach
|
|
11
12
|
* described in ["Node.js Axios behind corporate proxies"](https://janmolak.com/node-js-axios-behind-corporate-proxies-8b17a6f31f9d)
|
|
@@ -184,7 +185,7 @@ const io_1 = require("../../io");
|
|
|
184
185
|
*
|
|
185
186
|
* ### Serenity/JS defaults
|
|
186
187
|
*
|
|
187
|
-
* When using
|
|
188
|
+
* When using [`CallAnApi.at`](https://serenity-js.org/api/rest/class/CallAnApi/#at) or [`CallAnApi.using`](https://serenity-js.org/api/rest/class/CallAnApi/#using) with a configuration object, Serenity/JS
|
|
188
189
|
* merges your [Axios request configuration](https://axios-http.com/docs/req_config) with the following defaults:
|
|
189
190
|
* - `timeout`: 10 seconds
|
|
190
191
|
*
|
|
@@ -221,7 +222,7 @@ const io_1 = require("../../io");
|
|
|
221
222
|
*
|
|
222
223
|
* ### Using API-specific actors
|
|
223
224
|
*
|
|
224
|
-
* To create API-specific actors, configure your [test runner](/handbook/test-runners/) with a
|
|
225
|
+
* To create API-specific actors, configure your [test runner](https://serenity-js.org/handbook/test-runners/) with a [cast](https://serenity-js.org/api/core/class/Cast/)
|
|
225
226
|
* that gives your actors appropriate abilities based, for example, on their name:
|
|
226
227
|
*
|
|
227
228
|
* ```ts
|
|
@@ -245,7 +246,7 @@ const io_1 = require("../../io");
|
|
|
245
246
|
* beforeEach(() => engage(new MyActors()))
|
|
246
247
|
* ```
|
|
247
248
|
*
|
|
248
|
-
* Next, retrieve the appropriate actor in your test scenario using
|
|
249
|
+
* Next, retrieve the appropriate actor in your test scenario using [`actorCalled`](https://serenity-js.org/api/core/function/actorCalled/), for example:
|
|
249
250
|
*
|
|
250
251
|
* ```ts
|
|
251
252
|
* import { describe, it, beforeEach } from 'mocha'
|
|
@@ -316,7 +317,7 @@ class CallAnApi extends core_1.Ability {
|
|
|
316
317
|
axiosInstance;
|
|
317
318
|
lastResponse;
|
|
318
319
|
/**
|
|
319
|
-
* Produces an
|
|
320
|
+
* Produces an [ability](https://serenity-js.org/api/core/class/Ability/) to call a REST API at a specified `baseURL`;
|
|
320
321
|
*
|
|
321
322
|
* This is the same as invoking `CallAnApi.using({ baseURL: 'https://example.org' })`
|
|
322
323
|
*
|
|
@@ -330,7 +331,7 @@ class CallAnApi extends core_1.Ability {
|
|
|
330
331
|
});
|
|
331
332
|
}
|
|
332
333
|
/**
|
|
333
|
-
* Produces an
|
|
334
|
+
* Produces an [ability](https://serenity-js.org/api/core/class/Ability/) to call an HTTP API using the given Axios instance,
|
|
334
335
|
* or an Axios request configuration object.
|
|
335
336
|
*
|
|
336
337
|
* When you provide an [Axios configuration object](https://axios-http.com/docs/req_config),
|
|
@@ -342,7 +343,7 @@ class CallAnApi extends core_1.Ability {
|
|
|
342
343
|
* When you provide an Axios instance, it's enhanced with proxy support and no other modifications are made.
|
|
343
344
|
*
|
|
344
345
|
* If you don't want Serenity/JS to augment or modify your Axios instance in any way,
|
|
345
|
-
* please use the
|
|
346
|
+
* please use the [`CallAnApi.constructor`](https://serenity-js.org/api/rest/class/CallAnApi/#constructor) directly.
|
|
346
347
|
*
|
|
347
348
|
* @param axiosInstanceOrConfig
|
|
348
349
|
*/
|
|
@@ -362,8 +363,8 @@ class CallAnApi extends core_1.Ability {
|
|
|
362
363
|
}
|
|
363
364
|
/**
|
|
364
365
|
* Allows for the original Axios config to be changed after
|
|
365
|
-
* the
|
|
366
|
-
* has been instantiated and given to the
|
|
366
|
+
* the [ability](https://serenity-js.org/api/core/class/Ability/) to [`CallAnApi`](https://serenity-js.org/api/rest/class/CallAnApi/)
|
|
367
|
+
* has been instantiated and given to the [`Actor`](https://serenity-js.org/api/core/class/Actor/).
|
|
367
368
|
*
|
|
368
369
|
* #### Learn more
|
|
369
370
|
* - [AxiosRequestConfig](https://axios-http.com/docs/req_config)
|
|
@@ -375,7 +376,7 @@ class CallAnApi extends core_1.Ability {
|
|
|
375
376
|
}
|
|
376
377
|
/**
|
|
377
378
|
* Sends an HTTP request to a specified url.
|
|
378
|
-
* Response will be cached and available via
|
|
379
|
+
* Response will be cached and available via [`CallAnApi.mapLastResponse`](https://serenity-js.org/api/rest/class/CallAnApi/#mapLastResponse).
|
|
379
380
|
*
|
|
380
381
|
* #### Learn more
|
|
381
382
|
* - [AxiosRequestConfig](https://axios-http.com/docs/req_config)
|
|
@@ -383,7 +384,8 @@ class CallAnApi extends core_1.Ability {
|
|
|
383
384
|
*
|
|
384
385
|
* @param config
|
|
385
386
|
* Axios request configuration, which can be used to override the defaults
|
|
386
|
-
* provided when the
|
|
387
|
+
* provided when the [ability](https://serenity-js.org/api/core/class/Ability/)
|
|
388
|
+
* to [`CallAnApi`](https://serenity-js.org/api/rest/class/CallAnApi/) was instantiated.
|
|
387
389
|
*/
|
|
388
390
|
async request(config) {
|
|
389
391
|
let url;
|
|
@@ -413,8 +415,8 @@ class CallAnApi extends core_1.Ability {
|
|
|
413
415
|
}
|
|
414
416
|
}
|
|
415
417
|
/**
|
|
416
|
-
* Resolves the final URL, based on the
|
|
417
|
-
* and any defaults that the
|
|
418
|
+
* Resolves the final URL, based on the [`AxiosRequestConfig`](https://axios-http.com/docs/req_config) provided
|
|
419
|
+
* and any defaults that the [`AxiosInstance`](https://axios-http.com/docs/instance) has been configured with.
|
|
418
420
|
*
|
|
419
421
|
* Note that unlike Axios, this method uses the Node.js [WHATWG URL API](https://nodejs.org/api/url.html#new-urlinput-base)
|
|
420
422
|
* to ensure URLs are correctly resolved.
|
|
@@ -429,7 +431,7 @@ class CallAnApi extends core_1.Ability {
|
|
|
429
431
|
}
|
|
430
432
|
/**
|
|
431
433
|
* Maps the last cached response to another type.
|
|
432
|
-
* Useful when you need to extract a portion of the
|
|
434
|
+
* Useful when you need to extract a portion of the [`AxiosResponse`](https://axios-http.com/docs/res_schema) object.
|
|
433
435
|
*
|
|
434
436
|
* #### Learn more
|
|
435
437
|
* - [AxiosResponse](https://axios-http.com/docs/res_schema)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CallAnApi.js","sourceRoot":"","sources":["../../../src/screenplay/abilities/CallAnApi.ts"],"names":[],"mappings":";;;AAAA,4CAAkG;AAUlG,iCAAuC;AAEvC
|
|
1
|
+
{"version":3,"file":"CallAnApi.js","sourceRoot":"","sources":["../../../src/screenplay/abilities/CallAnApi.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import type { Answerable } from '@serenity-js/core';
|
|
2
2
|
import { Interaction } from '@serenity-js/core';
|
|
3
3
|
/**
|
|
4
|
-
* Changes configuration of the
|
|
5
|
-
* that the
|
|
4
|
+
* Changes configuration of the [ability](https://serenity-js.org/api/core/class/Ability/) to [`CallAnApi`](https://serenity-js.org/api/rest/class/CallAnApi/)
|
|
5
|
+
* that the [actor](https://serenity-js.org/api/core/class/Actor/) executing this [interaction](https://serenity-js.org/api/core/class/Interaction/) has been configured with.
|
|
6
6
|
*
|
|
7
7
|
* ## Changing API URL for all subsequent requests
|
|
8
8
|
*
|
|
@@ -86,7 +86,7 @@ import { Interaction } from '@serenity-js/core';
|
|
|
86
86
|
* ## Handling sensitive information
|
|
87
87
|
*
|
|
88
88
|
* By design, any data handled by an actor appears in Serenity/JS reports.
|
|
89
|
-
* To prevent the exposure of any sensitive information, such as passwords or tokens, you should use
|
|
89
|
+
* To prevent the exposure of any sensitive information, such as passwords or tokens, you should use [`Masked`](https://serenity-js.org/api/core/class/Masked/).
|
|
90
90
|
*
|
|
91
91
|
* ```ts
|
|
92
92
|
* import { actorCalled, Masked } from '@serenity-js/core'
|
|
@@ -108,24 +108,24 @@ import { Interaction } from '@serenity-js/core';
|
|
|
108
108
|
*/
|
|
109
109
|
export declare class ChangeApiConfig {
|
|
110
110
|
/**
|
|
111
|
-
* Instructs the
|
|
112
|
-
* of their
|
|
111
|
+
* Instructs the [actor](https://serenity-js.org/api/core/class/Actor/) to change the base URL
|
|
112
|
+
* of their [ability](https://serenity-js.org/api/core/class/Ability/) to [`CallAnApi`](https://serenity-js.org/api/rest/class/CallAnApi/)
|
|
113
113
|
*
|
|
114
114
|
* @param newApiUrl
|
|
115
115
|
*/
|
|
116
116
|
static setUrlTo(newApiUrl: Answerable<string>): Interaction;
|
|
117
117
|
/**
|
|
118
|
-
* Instructs the
|
|
119
|
-
* of their
|
|
118
|
+
* Instructs the [actor](https://serenity-js.org/api/core/class/Actor/) to change the port configured in the base URL
|
|
119
|
+
* of their [ability](https://serenity-js.org/api/core/class/Ability/) to [`CallAnApi`](https://serenity-js.org/api/rest/class/CallAnApi/)
|
|
120
120
|
*
|
|
121
121
|
* @param newApiPort
|
|
122
122
|
*/
|
|
123
123
|
static setPortTo(newApiPort: Answerable<number>): Interaction;
|
|
124
124
|
/**
|
|
125
|
-
* Instructs the
|
|
126
|
-
* used by their
|
|
127
|
-
* and set an HTTP request header for any subsequent
|
|
128
|
-
* issued via
|
|
125
|
+
* Instructs the [actor](https://serenity-js.org/api/core/class/Actor/) to change the configuration of the [`AxiosInstance`](https://axios-http.com/docs/instance)
|
|
126
|
+
* used by their [ability](https://serenity-js.org/api/core/class/Ability/) to [`CallAnApi`](https://serenity-js.org/api/rest/class/CallAnApi/)
|
|
127
|
+
* and set an HTTP request header for any subsequent [HTTP requests](https://serenity-js.org/api/rest/class/HTTPRequest/)
|
|
128
|
+
* issued via [`Send`](https://serenity-js.org/api/rest/class/Send/).
|
|
129
129
|
*
|
|
130
130
|
* @param name
|
|
131
131
|
* @param value
|
|
@@ -5,8 +5,8 @@ const core_1 = require("@serenity-js/core");
|
|
|
5
5
|
const url_1 = require("url");
|
|
6
6
|
const abilities_1 = require("../abilities");
|
|
7
7
|
/**
|
|
8
|
-
* Changes configuration of the
|
|
9
|
-
* that the
|
|
8
|
+
* Changes configuration of the [ability](https://serenity-js.org/api/core/class/Ability/) to [`CallAnApi`](https://serenity-js.org/api/rest/class/CallAnApi/)
|
|
9
|
+
* that the [actor](https://serenity-js.org/api/core/class/Actor/) executing this [interaction](https://serenity-js.org/api/core/class/Interaction/) has been configured with.
|
|
10
10
|
*
|
|
11
11
|
* ## Changing API URL for all subsequent requests
|
|
12
12
|
*
|
|
@@ -90,7 +90,7 @@ const abilities_1 = require("../abilities");
|
|
|
90
90
|
* ## Handling sensitive information
|
|
91
91
|
*
|
|
92
92
|
* By design, any data handled by an actor appears in Serenity/JS reports.
|
|
93
|
-
* To prevent the exposure of any sensitive information, such as passwords or tokens, you should use
|
|
93
|
+
* To prevent the exposure of any sensitive information, such as passwords or tokens, you should use [`Masked`](https://serenity-js.org/api/core/class/Masked/).
|
|
94
94
|
*
|
|
95
95
|
* ```ts
|
|
96
96
|
* import { actorCalled, Masked } from '@serenity-js/core'
|
|
@@ -112,8 +112,8 @@ const abilities_1 = require("../abilities");
|
|
|
112
112
|
*/
|
|
113
113
|
class ChangeApiConfig {
|
|
114
114
|
/**
|
|
115
|
-
* Instructs the
|
|
116
|
-
* of their
|
|
115
|
+
* Instructs the [actor](https://serenity-js.org/api/core/class/Actor/) to change the base URL
|
|
116
|
+
* of their [ability](https://serenity-js.org/api/core/class/Ability/) to [`CallAnApi`](https://serenity-js.org/api/rest/class/CallAnApi/)
|
|
117
117
|
*
|
|
118
118
|
* @param newApiUrl
|
|
119
119
|
*/
|
|
@@ -121,8 +121,8 @@ class ChangeApiConfig {
|
|
|
121
121
|
return new ChangeApiConfigSetUrl(newApiUrl);
|
|
122
122
|
}
|
|
123
123
|
/**
|
|
124
|
-
* Instructs the
|
|
125
|
-
* of their
|
|
124
|
+
* Instructs the [actor](https://serenity-js.org/api/core/class/Actor/) to change the port configured in the base URL
|
|
125
|
+
* of their [ability](https://serenity-js.org/api/core/class/Ability/) to [`CallAnApi`](https://serenity-js.org/api/rest/class/CallAnApi/)
|
|
126
126
|
*
|
|
127
127
|
* @param newApiPort
|
|
128
128
|
*/
|
|
@@ -130,10 +130,10 @@ class ChangeApiConfig {
|
|
|
130
130
|
return new ChangeApiConfigSetPort(newApiPort);
|
|
131
131
|
}
|
|
132
132
|
/**
|
|
133
|
-
* Instructs the
|
|
134
|
-
* used by their
|
|
135
|
-
* and set an HTTP request header for any subsequent
|
|
136
|
-
* issued via
|
|
133
|
+
* Instructs the [actor](https://serenity-js.org/api/core/class/Actor/) to change the configuration of the [`AxiosInstance`](https://axios-http.com/docs/instance)
|
|
134
|
+
* used by their [ability](https://serenity-js.org/api/core/class/Ability/) to [`CallAnApi`](https://serenity-js.org/api/rest/class/CallAnApi/)
|
|
135
|
+
* and set an HTTP request header for any subsequent [HTTP requests](https://serenity-js.org/api/rest/class/HTTPRequest/)
|
|
136
|
+
* issued via [`Send`](https://serenity-js.org/api/rest/class/Send/).
|
|
137
137
|
*
|
|
138
138
|
* @param name
|
|
139
139
|
* @param value
|
|
@@ -2,9 +2,9 @@ import type { Answerable, AnswersQuestions, CollectsArtifacts, UsesAbilities } f
|
|
|
2
2
|
import { Interaction } from '@serenity-js/core';
|
|
3
3
|
import type { AxiosRequestConfig } from 'axios';
|
|
4
4
|
/**
|
|
5
|
-
* Sends a
|
|
5
|
+
* Sends a [`HTTPRequest`](https://serenity-js.org/api/rest/class/HTTPRequest/) to a specified URL.
|
|
6
6
|
*
|
|
7
|
-
* The response to the request is made available via
|
|
7
|
+
* The response to the request is made available via [`LastResponse`](https://serenity-js.org/api/rest/class/LastResponse/).
|
|
8
8
|
*
|
|
9
9
|
* ## Send a GET request
|
|
10
10
|
*
|
|
@@ -26,7 +26,7 @@ import type { AxiosRequestConfig } from 'axios';
|
|
|
26
26
|
export declare class Send extends Interaction {
|
|
27
27
|
private readonly request;
|
|
28
28
|
/**
|
|
29
|
-
* Instantiates a new
|
|
29
|
+
* Instantiates a new [interaction](https://serenity-js.org/api/core/class/Interaction/) to [`Send`](https://serenity-js.org/api/rest/class/Send/).
|
|
30
30
|
*
|
|
31
31
|
* #### Learn more
|
|
32
32
|
* - [AxiosRequestConfig](https://axios-http.com/docs/req_config)
|
|
@@ -6,9 +6,9 @@ const model_1 = require("@serenity-js/core/lib/model");
|
|
|
6
6
|
const axios_1 = require("axios");
|
|
7
7
|
const abilities_1 = require("../abilities");
|
|
8
8
|
/**
|
|
9
|
-
* Sends a
|
|
9
|
+
* Sends a [`HTTPRequest`](https://serenity-js.org/api/rest/class/HTTPRequest/) to a specified URL.
|
|
10
10
|
*
|
|
11
|
-
* The response to the request is made available via
|
|
11
|
+
* The response to the request is made available via [`LastResponse`](https://serenity-js.org/api/rest/class/LastResponse/).
|
|
12
12
|
*
|
|
13
13
|
* ## Send a GET request
|
|
14
14
|
*
|
|
@@ -30,7 +30,7 @@ const abilities_1 = require("../abilities");
|
|
|
30
30
|
class Send extends core_1.Interaction {
|
|
31
31
|
request;
|
|
32
32
|
/**
|
|
33
|
-
* Instantiates a new
|
|
33
|
+
* Instantiates a new [interaction](https://serenity-js.org/api/core/class/Interaction/) to [`Send`](https://serenity-js.org/api/rest/class/Send/).
|
|
34
34
|
*
|
|
35
35
|
* #### Learn more
|
|
36
36
|
* - [AxiosRequestConfig](https://axios-http.com/docs/req_config)
|
|
@@ -42,20 +42,20 @@ export declare class DeleteRequest extends HTTPRequest {
|
|
|
42
42
|
*
|
|
43
43
|
* When the `resourceUri` is not a fully qualified URL but a path, such as `/products/2`,
|
|
44
44
|
* it gets concatenated with the URL provided to the Axios instance
|
|
45
|
-
* when the
|
|
45
|
+
* when the [ability](https://serenity-js.org/api/core/class/Ability/) to [`CallAnApi`](https://serenity-js.org/api/rest/class/CallAnApi/) was instantiated.
|
|
46
46
|
*
|
|
47
47
|
* @param resourceUri
|
|
48
|
-
* The URI where the
|
|
49
|
-
* should send the
|
|
48
|
+
* The URI where the [`Actor`](https://serenity-js.org/api/core/class/Actor/)
|
|
49
|
+
* should send the [`HTTPRequest`](https://serenity-js.org/api/rest/class/HTTPRequest/)
|
|
50
50
|
*/
|
|
51
51
|
static to(resourceUri: Answerable<string>): DeleteRequest;
|
|
52
52
|
/**
|
|
53
53
|
* Overrides the default Axios request configuration provided
|
|
54
|
-
* when the
|
|
54
|
+
* when the [ability](https://serenity-js.org/api/core/class/Ability/) to [`CallAnApi`](https://serenity-js.org/api/rest/class/CallAnApi/) was instantiated.
|
|
55
55
|
*
|
|
56
56
|
* #### Learn more
|
|
57
|
-
* -
|
|
58
|
-
* -
|
|
57
|
+
* - [`Answerable`](https://serenity-js.org/api/core/#Answerable)
|
|
58
|
+
* - [`WithAnswerableProperties`](https://serenity-js.org/api/core/#WithAnswerableProperties)
|
|
59
59
|
* - [AxiosRequestConfig](https://axios-http.com/docs/req_config)
|
|
60
60
|
*
|
|
61
61
|
* @param {Answerable<WithAnswerableProperties<AxiosRequestConfig>>} config
|
|
@@ -44,22 +44,22 @@ class DeleteRequest extends HTTPRequest_1.HTTPRequest {
|
|
|
44
44
|
*
|
|
45
45
|
* When the `resourceUri` is not a fully qualified URL but a path, such as `/products/2`,
|
|
46
46
|
* it gets concatenated with the URL provided to the Axios instance
|
|
47
|
-
* when the
|
|
47
|
+
* when the [ability](https://serenity-js.org/api/core/class/Ability/) to [`CallAnApi`](https://serenity-js.org/api/rest/class/CallAnApi/) was instantiated.
|
|
48
48
|
*
|
|
49
49
|
* @param resourceUri
|
|
50
|
-
* The URI where the
|
|
51
|
-
* should send the
|
|
50
|
+
* The URI where the [`Actor`](https://serenity-js.org/api/core/class/Actor/)
|
|
51
|
+
* should send the [`HTTPRequest`](https://serenity-js.org/api/rest/class/HTTPRequest/)
|
|
52
52
|
*/
|
|
53
53
|
static to(resourceUri) {
|
|
54
54
|
return new DeleteRequest(resourceUri);
|
|
55
55
|
}
|
|
56
56
|
/**
|
|
57
57
|
* Overrides the default Axios request configuration provided
|
|
58
|
-
* when the
|
|
58
|
+
* when the [ability](https://serenity-js.org/api/core/class/Ability/) to [`CallAnApi`](https://serenity-js.org/api/rest/class/CallAnApi/) was instantiated.
|
|
59
59
|
*
|
|
60
60
|
* #### Learn more
|
|
61
|
-
* -
|
|
62
|
-
* -
|
|
61
|
+
* - [`Answerable`](https://serenity-js.org/api/core/#Answerable)
|
|
62
|
+
* - [`WithAnswerableProperties`](https://serenity-js.org/api/core/#WithAnswerableProperties)
|
|
63
63
|
* - [AxiosRequestConfig](https://axios-http.com/docs/req_config)
|
|
64
64
|
*
|
|
65
65
|
* @param {Answerable<WithAnswerableProperties<AxiosRequestConfig>>} config
|
|
@@ -49,20 +49,20 @@ export declare class GetRequest extends HTTPRequest {
|
|
|
49
49
|
*
|
|
50
50
|
* When the `resourceUri` is not a fully qualified URL but a path, such as `/products/2`,
|
|
51
51
|
* it gets concatenated with the URL provided to the Axios instance
|
|
52
|
-
* when the
|
|
52
|
+
* when the [ability](https://serenity-js.org/api/core/class/Ability/) to [`CallAnApi`](https://serenity-js.org/api/rest/class/CallAnApi/) was instantiated.
|
|
53
53
|
*
|
|
54
54
|
* @param resourceUri
|
|
55
|
-
* The URI where the
|
|
56
|
-
* should send the
|
|
55
|
+
* The URI where the [`Actor`](https://serenity-js.org/api/core/class/Actor/)
|
|
56
|
+
* should send the [`HTTPRequest`](https://serenity-js.org/api/rest/class/HTTPRequest/)
|
|
57
57
|
*/
|
|
58
58
|
static to(resourceUri: Answerable<string>): GetRequest;
|
|
59
59
|
/**
|
|
60
60
|
* Overrides the default Axios request configuration provided
|
|
61
|
-
* when the
|
|
61
|
+
* when the [ability](https://serenity-js.org/api/core/class/Ability/) to [`CallAnApi`](https://serenity-js.org/api/rest/class/CallAnApi/) was instantiated.
|
|
62
62
|
*
|
|
63
63
|
* #### Learn more
|
|
64
|
-
* -
|
|
65
|
-
* -
|
|
64
|
+
* - [`Answerable`](https://serenity-js.org/api/core/#Answerable)
|
|
65
|
+
* - [`WithAnswerableProperties`](https://serenity-js.org/api/core/#WithAnswerableProperties)
|
|
66
66
|
* - [AxiosRequestConfig](https://axios-http.com/docs/req_config)
|
|
67
67
|
*
|
|
68
68
|
* @param {Answerable<WithAnswerableProperties<AxiosRequestConfig>>} config
|
|
@@ -51,22 +51,22 @@ class GetRequest extends HTTPRequest_1.HTTPRequest {
|
|
|
51
51
|
*
|
|
52
52
|
* When the `resourceUri` is not a fully qualified URL but a path, such as `/products/2`,
|
|
53
53
|
* it gets concatenated with the URL provided to the Axios instance
|
|
54
|
-
* when the
|
|
54
|
+
* when the [ability](https://serenity-js.org/api/core/class/Ability/) to [`CallAnApi`](https://serenity-js.org/api/rest/class/CallAnApi/) was instantiated.
|
|
55
55
|
*
|
|
56
56
|
* @param resourceUri
|
|
57
|
-
* The URI where the
|
|
58
|
-
* should send the
|
|
57
|
+
* The URI where the [`Actor`](https://serenity-js.org/api/core/class/Actor/)
|
|
58
|
+
* should send the [`HTTPRequest`](https://serenity-js.org/api/rest/class/HTTPRequest/)
|
|
59
59
|
*/
|
|
60
60
|
static to(resourceUri) {
|
|
61
61
|
return new GetRequest(resourceUri);
|
|
62
62
|
}
|
|
63
63
|
/**
|
|
64
64
|
* Overrides the default Axios request configuration provided
|
|
65
|
-
* when the
|
|
65
|
+
* when the [ability](https://serenity-js.org/api/core/class/Ability/) to [`CallAnApi`](https://serenity-js.org/api/rest/class/CallAnApi/) was instantiated.
|
|
66
66
|
*
|
|
67
67
|
* #### Learn more
|
|
68
|
-
* -
|
|
69
|
-
* -
|
|
68
|
+
* - [`Answerable`](https://serenity-js.org/api/core/#Answerable)
|
|
69
|
+
* - [`WithAnswerableProperties`](https://serenity-js.org/api/core/#WithAnswerableProperties)
|
|
70
70
|
* - [AxiosRequestConfig](https://axios-http.com/docs/req_config)
|
|
71
71
|
*
|
|
72
72
|
* @param {Answerable<WithAnswerableProperties<AxiosRequestConfig>>} config
|
|
@@ -2,8 +2,8 @@ import type { Answerable, AnswersQuestions, UsesAbilities, WithAnswerablePropert
|
|
|
2
2
|
import { Question } from '@serenity-js/core';
|
|
3
3
|
import type { AxiosRequestConfig } from 'axios';
|
|
4
4
|
/**
|
|
5
|
-
* HTTP Request sent by the
|
|
6
|
-
* using the
|
|
5
|
+
* HTTP Request sent by the [`Actor`](https://serenity-js.org/api/core/class/Actor/)
|
|
6
|
+
* using the [interaction](https://serenity-js.org/api/core/class/Interaction/) to [`Send`](https://serenity-js.org/api/rest/class/Send/)
|
|
7
7
|
*
|
|
8
8
|
* @group Models
|
|
9
9
|
*/
|
|
@@ -20,7 +20,7 @@ export declare abstract class HTTPRequest extends Question<Promise<AxiosRequestC
|
|
|
20
20
|
*
|
|
21
21
|
* @param {Answerable<WithAnswerableProperties<AxiosRequestConfig>>} [config]
|
|
22
22
|
* Axios request configuration, which can be used to override the defaults
|
|
23
|
-
* provided when the
|
|
23
|
+
* provided when the [ability](https://serenity-js.org/api/core/class/Ability/) to [`CallAnApi`](https://serenity-js.org/api/rest/class/CallAnApi/) is instantiated
|
|
24
24
|
*/
|
|
25
25
|
protected constructor(resourceUri?: Answerable<string>, data?: Answerable<any>, config?: Answerable<WithAnswerableProperties<AxiosRequestConfig>>);
|
|
26
26
|
/**
|
|
@@ -4,8 +4,8 @@ exports.HTTPRequest = void 0;
|
|
|
4
4
|
const core_1 = require("@serenity-js/core");
|
|
5
5
|
const io_1 = require("@serenity-js/core/lib/io");
|
|
6
6
|
/**
|
|
7
|
-
* HTTP Request sent by the
|
|
8
|
-
* using the
|
|
7
|
+
* HTTP Request sent by the [`Actor`](https://serenity-js.org/api/core/class/Actor/)
|
|
8
|
+
* using the [interaction](https://serenity-js.org/api/core/class/Interaction/) to [`Send`](https://serenity-js.org/api/rest/class/Send/)
|
|
9
9
|
*
|
|
10
10
|
* @group Models
|
|
11
11
|
*/
|
|
@@ -22,7 +22,7 @@ class HTTPRequest extends core_1.Question {
|
|
|
22
22
|
*
|
|
23
23
|
* @param {Answerable<WithAnswerableProperties<AxiosRequestConfig>>} [config]
|
|
24
24
|
* Axios request configuration, which can be used to override the defaults
|
|
25
|
-
* provided when the
|
|
25
|
+
* provided when the [ability](https://serenity-js.org/api/core/class/Ability/) to [`CallAnApi`](https://serenity-js.org/api/rest/class/CallAnApi/) is instantiated
|
|
26
26
|
*/
|
|
27
27
|
constructor(resourceUri, data, config) {
|
|
28
28
|
super(`${HTTPRequest.requestDescription(new.target.name)} to ${(0, io_1.d) `${resourceUri}`}`);
|