@serenity-js/local-server 3.0.0-rc.27 → 3.0.0-rc.29
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 +25 -0
- package/lib/screenplay/abilities/ManageALocalServer.js +25 -2
- package/lib/screenplay/abilities/ManageALocalServer.js.map +1 -1
- package/lib/screenplay/interactions/StartLocalServer.js +6 -15
- package/lib/screenplay/interactions/StartLocalServer.js.map +1 -1
- package/lib/screenplay/interactions/StopLocalServer.d.ts +0 -4
- package/lib/screenplay/interactions/StopLocalServer.d.ts.map +1 -1
- package/lib/screenplay/interactions/StopLocalServer.js +1 -7
- package/lib/screenplay/interactions/StopLocalServer.js.map +1 -1
- package/package.json +7 -6
- package/src/screenplay/interactions/StartLocalServer.ts +7 -19
- package/src/screenplay/interactions/StopLocalServer.ts +1 -8
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,31 @@
|
|
|
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.0.0-rc.29](https://github.com/serenity-js/serenity-js/compare/v3.0.0-rc.28...v3.0.0-rc.29) (2022-10-01)
|
|
7
|
+
|
|
8
|
+
**Note:** Version bump only for package @serenity-js/local-server
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
# [3.0.0-rc.28](https://github.com/serenity-js/serenity-js/compare/v3.0.0-rc.27...v3.0.0-rc.28) (2022-09-30)
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
### Bug Fixes
|
|
18
|
+
|
|
19
|
+
* **core:** activity is now able to detect invocation location on Node 14 ([41f4776](https://github.com/serenity-js/serenity-js/commit/41f4776736620bc32d474d9b66f69c742f8eca96)), closes [#1240](https://github.com/serenity-js/serenity-js/issues/1240)
|
|
20
|
+
* **core:** enabled support for synthetic default imports and ES module interop ([3e63d07](https://github.com/serenity-js/serenity-js/commit/3e63d07d793cea169ebc4234ab096593f5aa9d97)), closes [#1240](https://github.com/serenity-js/serenity-js/issues/1240)
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
### Features
|
|
24
|
+
|
|
25
|
+
* **playwright-test:** improved Playwright Test reports ([6c6b537](https://github.com/serenity-js/serenity-js/commit/6c6b5379dfc324a4fb75d758daa7782109f1c5ab)), closes [#1240](https://github.com/serenity-js/serenity-js/issues/1240)
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
|
|
6
31
|
# [3.0.0-rc.27](https://github.com/serenity-js/serenity-js/compare/v3.0.0-rc.26...v3.0.0-rc.27) (2022-08-26)
|
|
7
32
|
|
|
8
33
|
**Note:** Version bump only for package @serenity-js/local-server
|
|
@@ -1,10 +1,33 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
2
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
26
|
exports.SupportedProtocols = exports.ManageALocalServer = void 0;
|
|
4
27
|
const core_1 = require("@serenity-js/core");
|
|
5
|
-
const http = require("http");
|
|
28
|
+
const http = __importStar(require("http"));
|
|
6
29
|
const withShutdownSupport = require("http-shutdown");
|
|
7
|
-
const https = require("https");
|
|
30
|
+
const https = __importStar(require("https"));
|
|
8
31
|
const portfinder_1 = require("portfinder");
|
|
9
32
|
/**
|
|
10
33
|
* An {@apilink Ability} that enables an {@apilink Actor}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ManageALocalServer.js","sourceRoot":"","sources":["../../../src/screenplay/abilities/ManageALocalServer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ManageALocalServer.js","sourceRoot":"","sources":["../../../src/screenplay/abilities/ManageALocalServer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,4CAA+E;AAC/E,2CAA6B;AAC7B,qDAAsD;AACtD,6CAA+B;AAE/B,2CAA4C;AAE5C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AACH,MAAa,kBAAkB;IA4C3B;;;;;;;;OAQG;IACH,YAA6B,QAA4B,EAAE,MAAkB;QAAhD,aAAQ,GAAR,QAAQ,CAAoB;QACrD,IAAI,CAAC,MAAM,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAC;IAC9C,CAAC;IAnDD;;;;OAIG;IACH,MAAM,CAAC,oBAAoB,CAAC,QAAsC;QAC9D,MAAM,MAAM,GAAG,OAAO,QAAQ,KAAK,UAAU;YACzC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC;YAC7B,CAAC,CAAC,QAAQ,CAAC;QAEf,OAAO,IAAI,kBAAkB,CAAC,kBAAkB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACnE,CAAC;IAED;;;;;;;;OAQG;IACH,MAAM,CAAC,qBAAqB,CAAC,QAAwC,EAAE,UAA+B,EAAE;QACpG,MAAM,MAAM,GAAG,OAAO,QAAQ,KAAK,UAAU;YACzC,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,EAAE,QAAQ,CAAC;YACvC,CAAC,CAAC,QAAQ,CAAC;QAEf,OAAO,IAAI,kBAAkB,CAAC,kBAAkB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACpE,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,EAAE,CAAC,KAAoB;QAC1B,OAAO,KAAK,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC;IAC/C,CAAC;IAeD;;;;;;;;OAQG;IACH,MAAM,CAAC,aAAa,GAAG,IAAI,EAAE,WAAW,GAAG,KAAK;QAC5C,OAAO,IAAA,2BAAc,EAAC,EAAE,IAAI,EAAE,aAAa,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC;aAChE,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAChD,SAAS,YAAY,CAAC,KAA6B;gBAC/C,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE;oBAC7B,OAAO,MAAM,CAAC,IAAI,yBAAkB,CAAC,qEAAsE,IAAK,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;iBAChI;gBAED,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;YACzB,CAAC;YAED,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;YAExC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,WAAW,EAAE,GAAG,EAAE;gBACvC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;gBAElD,OAAO,EAAE,CAAC;YACd,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC,CAAC;IACZ,CAAC;IAED;;;;OAIG;IACH,WAAW,CAAI,EAAoE;QAC/E,OAAO,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC1C,CAAC;CACJ;AA/FD,gDA+FC;AAmBD;;;;;GAKG;AACH,IAAY,kBAGX;AAHD,WAAY,kBAAkB;IAC1B,mCAAa,CAAA;IACb,qCAAe,CAAA;AACnB,CAAC,EAHW,kBAAkB,GAAlB,0BAAkB,KAAlB,0BAAkB,QAG7B"}
|
|
@@ -59,35 +59,32 @@ exports.StartLocalServer = StartLocalServer;
|
|
|
59
59
|
* @package
|
|
60
60
|
*/
|
|
61
61
|
class StartLocalServerOnRandomPort extends core_1.Interaction {
|
|
62
|
+
constructor() {
|
|
63
|
+
super(`#actor starts local server on a random port`);
|
|
64
|
+
}
|
|
62
65
|
performAs(actor) {
|
|
63
66
|
return abilities_1.ManageALocalServer.as(actor).listen();
|
|
64
67
|
}
|
|
65
|
-
toString() {
|
|
66
|
-
return `#actor starts local server on a random port`;
|
|
67
|
-
}
|
|
68
68
|
}
|
|
69
69
|
/**
|
|
70
70
|
* @package
|
|
71
71
|
*/
|
|
72
72
|
class StartLocalServerOnPort extends core_1.Interaction {
|
|
73
73
|
constructor(preferredPort) {
|
|
74
|
-
super();
|
|
74
|
+
super(`#actor starts local server on port ${preferredPort}`);
|
|
75
75
|
this.preferredPort = preferredPort;
|
|
76
76
|
}
|
|
77
77
|
performAs(actor) {
|
|
78
78
|
return actor.answer(this.preferredPort)
|
|
79
79
|
.then(port => abilities_1.ManageALocalServer.as(actor).listen(port));
|
|
80
80
|
}
|
|
81
|
-
toString() {
|
|
82
|
-
return `#actor starts local server on port ${this.preferredPort}`;
|
|
83
|
-
}
|
|
84
81
|
}
|
|
85
82
|
/**
|
|
86
83
|
* @package
|
|
87
84
|
*/
|
|
88
85
|
class StartLocalServerOnRandomPortBetween extends core_1.Interaction {
|
|
89
86
|
constructor(lowestPort, highestPort) {
|
|
90
|
-
super();
|
|
87
|
+
super(`#actor starts local server on port between ${lowestPort} and ${highestPort}`);
|
|
91
88
|
this.lowestPort = lowestPort;
|
|
92
89
|
this.highestPort = highestPort;
|
|
93
90
|
}
|
|
@@ -98,24 +95,18 @@ class StartLocalServerOnRandomPortBetween extends core_1.Interaction {
|
|
|
98
95
|
]).
|
|
99
96
|
then(([lowestPort, highestPort]) => abilities_1.ManageALocalServer.as(actor).listen(lowestPort, highestPort));
|
|
100
97
|
}
|
|
101
|
-
toString() {
|
|
102
|
-
return `#actor starts local server on port between ${this.lowestPort} and ${this.highestPort}`;
|
|
103
|
-
}
|
|
104
98
|
}
|
|
105
99
|
/**
|
|
106
100
|
* @package
|
|
107
101
|
*/
|
|
108
102
|
class StartLocalServerOnFirstOf extends core_1.Interaction {
|
|
109
103
|
constructor(preferredPorts) {
|
|
110
|
-
super();
|
|
104
|
+
super(`#actor starts local server on first port of ${preferredPorts}`);
|
|
111
105
|
this.preferredPorts = preferredPorts;
|
|
112
106
|
}
|
|
113
107
|
performAs(actor) {
|
|
114
108
|
return actor.answer(this.preferredPorts)
|
|
115
109
|
.then(preferredPorts => abilities_1.ManageALocalServer.as(actor).listen(preferredPorts[0]));
|
|
116
110
|
}
|
|
117
|
-
toString() {
|
|
118
|
-
return `#actor starts local server on first port of ${this.preferredPorts}`;
|
|
119
|
-
}
|
|
120
111
|
}
|
|
121
112
|
//# sourceMappingURL=StartLocalServer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StartLocalServer.js","sourceRoot":"","sources":["../../../src/screenplay/interactions/StartLocalServer.ts"],"names":[],"mappings":";;;AAAA,4CAAgH;AAEhH,4CAAkD;AAElD;;;;GAIG;AACH,MAAa,gBAAgB;IAEzB;;OAEG;IACH,MAAM,CAAC,YAAY;QACf,OAAO,IAAI,4BAA4B,EAAE,CAAC;IAC9C,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,MAAM,CAAC,wBAAwB,CAAC,cAAoC;QAChE,OAAO,IAAI,yBAAyB,CAAC,cAAc,CAAC,CAAC;IACzD,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,MAAM,CAAC,aAAiC;QAC3C,OAAO,IAAI,sBAAsB,CAAC,aAAa,CAAC,CAAC;IACrD,CAAC;IAED;;;;;;;;;OASG;IACH,MAAM,CAAC,mBAAmB,CAAC,UAA8B,EAAE,WAA+B;QACtF,OAAO,IAAI,mCAAmC,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;IAC5E,CAAC;CACJ;AAjDD,4CAiDC;AAED;;GAEG;AACH,MAAM,4BAA6B,SAAQ,kBAAW;IAElD,SAAS,CAAC,KAA2D;QACjE,OAAO,8BAAkB,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC;IACjD,CAAC;
|
|
1
|
+
{"version":3,"file":"StartLocalServer.js","sourceRoot":"","sources":["../../../src/screenplay/interactions/StartLocalServer.ts"],"names":[],"mappings":";;;AAAA,4CAAgH;AAEhH,4CAAkD;AAElD;;;;GAIG;AACH,MAAa,gBAAgB;IAEzB;;OAEG;IACH,MAAM,CAAC,YAAY;QACf,OAAO,IAAI,4BAA4B,EAAE,CAAC;IAC9C,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,MAAM,CAAC,wBAAwB,CAAC,cAAoC;QAChE,OAAO,IAAI,yBAAyB,CAAC,cAAc,CAAC,CAAC;IACzD,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,MAAM,CAAC,aAAiC;QAC3C,OAAO,IAAI,sBAAsB,CAAC,aAAa,CAAC,CAAC;IACrD,CAAC;IAED;;;;;;;;;OASG;IACH,MAAM,CAAC,mBAAmB,CAAC,UAA8B,EAAE,WAA+B;QACtF,OAAO,IAAI,mCAAmC,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;IAC5E,CAAC;CACJ;AAjDD,4CAiDC;AAED;;GAEG;AACH,MAAM,4BAA6B,SAAQ,kBAAW;IAElD;QACI,KAAK,CAAC,6CAA6C,CAAC,CAAC;IACzD,CAAC;IAED,SAAS,CAAC,KAA2D;QACjE,OAAO,8BAAkB,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC;IACjD,CAAC;CACJ;AAED;;GAEG;AACH,MAAM,sBAAuB,SAAQ,kBAAW;IAE5C,YAA6B,aAAiC;QAC1D,KAAK,CAAC,sCAAuC,aAAc,EAAE,CAAC,CAAC;QADtC,kBAAa,GAAb,aAAa,CAAoB;IAE9D,CAAC;IAED,SAAS,CAAC,KAA2D;QACjE,OAAO,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC;aAClC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,8BAAkB,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IACjE,CAAC;CACJ;AAED;;GAEG;AACH,MAAM,mCAAoC,SAAQ,kBAAW;IAEzD,YACqB,UAA8B,EAC9B,WAA+B;QAEhD,KAAK,CAAC,8CAA+C,UAAW,QAAS,WAAY,EAAE,CAAC,CAAC;QAHxE,eAAU,GAAV,UAAU,CAAoB;QAC9B,gBAAW,GAAX,WAAW,CAAoB;IAGpD,CAAC;IAED,SAAS,CAAC,KAA2D;QACjE,OAAO,OAAO,CAAC,GAAG,CAAC;YACf,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC;YAC7B,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC;SACjC,CAAC;YACF,IAAI,CAAC,CAAC,CAAC,UAAU,EAAE,WAAW,CAAC,EAAE,EAAE,CAAC,8BAAkB,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC,CAAC;IACtG,CAAC;CACJ;AAED;;GAEG;AACH,MAAM,yBAA0B,SAAQ,kBAAW;IAE/C,YAA6B,cAAoC;QAC7D,KAAK,CAAC,+CAAgD,cAAe,EAAE,CAAC,CAAC;QADhD,mBAAc,GAAd,cAAc,CAAsB;IAEjE,CAAC;IAED,SAAS,CAAC,KAA2D;QACjE,OAAO,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC;aACnC,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC,8BAAkB,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACxF,CAAC;CACJ"}
|
|
@@ -14,9 +14,5 @@ export declare class StopLocalServer extends Interaction {
|
|
|
14
14
|
* @inheritDoc
|
|
15
15
|
*/
|
|
16
16
|
performAs(actor: UsesAbilities & CollectsArtifacts & AnswersQuestions): Promise<void>;
|
|
17
|
-
/**
|
|
18
|
-
* @inheritDoc
|
|
19
|
-
*/
|
|
20
|
-
toString(): string;
|
|
21
17
|
}
|
|
22
18
|
//# sourceMappingURL=StopLocalServer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StopLocalServer.d.ts","sourceRoot":"","sources":["../../../src/screenplay/interactions/StopLocalServer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAIpG;;;;;GAKG;AACH,qBAAa,eAAgB,SAAQ,WAAW;IAE5C;;OAEG;IACH,MAAM,CAAC,SAAS,IAAI,WAAW;IAI/B;;OAEG;IACH,SAAS,CAAC,KAAK,EAAE,aAAa,GAAG,iBAAiB,GAAG,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"StopLocalServer.d.ts","sourceRoot":"","sources":["../../../src/screenplay/interactions/StopLocalServer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAIpG;;;;;GAKG;AACH,qBAAa,eAAgB,SAAQ,WAAW;IAE5C;;OAEG;IACH,MAAM,CAAC,SAAS,IAAI,WAAW;IAI/B;;OAEG;IACH,SAAS,CAAC,KAAK,EAAE,aAAa,GAAG,iBAAiB,GAAG,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;CAaxF"}
|
|
@@ -14,7 +14,7 @@ class StopLocalServer extends core_1.Interaction {
|
|
|
14
14
|
* Stops the server if it's running. If the server hasn't been started, this interaction does nothing.
|
|
15
15
|
*/
|
|
16
16
|
static ifRunning() {
|
|
17
|
-
return new StopLocalServer();
|
|
17
|
+
return new StopLocalServer(`#actor stops the local server`);
|
|
18
18
|
}
|
|
19
19
|
/**
|
|
20
20
|
* @inheritDoc
|
|
@@ -29,12 +29,6 @@ class StopLocalServer extends core_1.Interaction {
|
|
|
29
29
|
: resolve());
|
|
30
30
|
}));
|
|
31
31
|
}
|
|
32
|
-
/**
|
|
33
|
-
* @inheritDoc
|
|
34
|
-
*/
|
|
35
|
-
toString() {
|
|
36
|
-
return `#actor stops the local server`;
|
|
37
|
-
}
|
|
38
32
|
}
|
|
39
33
|
exports.StopLocalServer = StopLocalServer;
|
|
40
34
|
//# sourceMappingURL=StopLocalServer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StopLocalServer.js","sourceRoot":"","sources":["../../../src/screenplay/interactions/StopLocalServer.ts"],"names":[],"mappings":";;;AAAA,4CAAoG;AAEpG,4CAAkD;AAElD;;;;;GAKG;AACH,MAAa,eAAgB,SAAQ,kBAAW;IAE5C;;OAEG;IACH,MAAM,CAAC,SAAS;QACZ,OAAO,IAAI,eAAe,
|
|
1
|
+
{"version":3,"file":"StopLocalServer.js","sourceRoot":"","sources":["../../../src/screenplay/interactions/StopLocalServer.ts"],"names":[],"mappings":";;;AAAA,4CAAoG;AAEpG,4CAAkD;AAElD;;;;;GAKG;AACH,MAAa,eAAgB,SAAQ,kBAAW;IAE5C;;OAEG;IACH,MAAM,CAAC,SAAS;QACZ,OAAO,IAAI,eAAe,CAAC,+BAA+B,CAAC,CAAC;IAChE,CAAC;IAED;;OAEG;IACH,SAAS,CAAC,KAA2D;QACjE,OAAO,8BAAkB,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACtF,IAAI,CAAE,MAAM,CAAC,OAAO,EAAE,EAAE;gBACpB,OAAO,OAAO,EAAE,CAAC;aACpB;YAED,MAAM,CAAC,QAAQ,CAAC,CAAC,KAAY,EAAE,EAAE,CAC7B,KAAK;gBACD,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;gBACf,CAAC,CAAC,OAAO,EAAE,CAClB,CAAC;QACN,CAAC,CAAC,CAAC,CAAC;IACR,CAAC;CACJ;AAzBD,0CAyBC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@serenity-js/local-server",
|
|
3
|
-
"version": "3.0.0-rc.
|
|
3
|
+
"version": "3.0.0-rc.29",
|
|
4
4
|
"description": "Enables Serenity/JS Actors to manage local Node.js test servers, such as Express, Koa or Restify",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Jan Molak",
|
|
@@ -49,15 +49,15 @@
|
|
|
49
49
|
"npm": "^6 || ^7 || ^8"
|
|
50
50
|
},
|
|
51
51
|
"dependencies": {
|
|
52
|
-
"@serenity-js/core": "3.0.0-rc.
|
|
52
|
+
"@serenity-js/core": "3.0.0-rc.29",
|
|
53
53
|
"http-shutdown": "^1.2.2",
|
|
54
54
|
"portfinder": "^1.0.32"
|
|
55
55
|
},
|
|
56
56
|
"devDependencies": {
|
|
57
57
|
"@hapi/hapi": "^20.2.2",
|
|
58
58
|
"@integration/testing-tools": "3.0.0",
|
|
59
|
-
"@serenity-js/assertions": "3.0.0-rc.
|
|
60
|
-
"@serenity-js/rest": "3.0.0-rc.
|
|
59
|
+
"@serenity-js/assertions": "3.0.0-rc.29",
|
|
60
|
+
"@serenity-js/rest": "3.0.0-rc.29",
|
|
61
61
|
"@types/chai": "^4.3.3",
|
|
62
62
|
"@types/express": "^4.17.13",
|
|
63
63
|
"@types/hapi": "^18.0.7",
|
|
@@ -67,10 +67,11 @@
|
|
|
67
67
|
"express": "^4.18.1",
|
|
68
68
|
"koa": "^2.13.4",
|
|
69
69
|
"mocha": "^10.0.0",
|
|
70
|
+
"nyc": "15.1.0",
|
|
70
71
|
"restify": "^8.6.1",
|
|
71
72
|
"semver": "^7.3.7",
|
|
72
73
|
"ts-node": "^10.9.1",
|
|
73
|
-
"typescript": "^4.
|
|
74
|
+
"typescript": "^4.8.4"
|
|
74
75
|
},
|
|
75
|
-
"gitHead": "
|
|
76
|
+
"gitHead": "c7db9619128025b61ab99fc530f3b0ae731374a7"
|
|
76
77
|
}
|
|
@@ -63,12 +63,12 @@ export class StartLocalServer {
|
|
|
63
63
|
*/
|
|
64
64
|
class StartLocalServerOnRandomPort extends Interaction {
|
|
65
65
|
|
|
66
|
-
|
|
67
|
-
|
|
66
|
+
constructor() {
|
|
67
|
+
super(`#actor starts local server on a random port`);
|
|
68
68
|
}
|
|
69
69
|
|
|
70
|
-
|
|
71
|
-
return
|
|
70
|
+
performAs(actor: UsesAbilities & CollectsArtifacts & AnswersQuestions): Promise<void> {
|
|
71
|
+
return ManageALocalServer.as(actor).listen();
|
|
72
72
|
}
|
|
73
73
|
}
|
|
74
74
|
|
|
@@ -78,17 +78,13 @@ class StartLocalServerOnRandomPort extends Interaction {
|
|
|
78
78
|
class StartLocalServerOnPort extends Interaction {
|
|
79
79
|
|
|
80
80
|
constructor(private readonly preferredPort: Answerable<number>) {
|
|
81
|
-
super();
|
|
81
|
+
super(`#actor starts local server on port ${ preferredPort }`);
|
|
82
82
|
}
|
|
83
83
|
|
|
84
84
|
performAs(actor: UsesAbilities & CollectsArtifacts & AnswersQuestions): Promise<void> {
|
|
85
85
|
return actor.answer(this.preferredPort)
|
|
86
86
|
.then(port => ManageALocalServer.as(actor).listen(port));
|
|
87
87
|
}
|
|
88
|
-
|
|
89
|
-
toString(): string {
|
|
90
|
-
return `#actor starts local server on port ${ this.preferredPort }`;
|
|
91
|
-
}
|
|
92
88
|
}
|
|
93
89
|
|
|
94
90
|
/**
|
|
@@ -100,7 +96,7 @@ class StartLocalServerOnRandomPortBetween extends Interaction {
|
|
|
100
96
|
private readonly lowestPort: Answerable<number>,
|
|
101
97
|
private readonly highestPort: Answerable<number>,
|
|
102
98
|
) {
|
|
103
|
-
super();
|
|
99
|
+
super(`#actor starts local server on port between ${ lowestPort } and ${ highestPort }`);
|
|
104
100
|
}
|
|
105
101
|
|
|
106
102
|
performAs(actor: UsesAbilities & CollectsArtifacts & AnswersQuestions): Promise<void> {
|
|
@@ -110,10 +106,6 @@ class StartLocalServerOnRandomPortBetween extends Interaction {
|
|
|
110
106
|
]).
|
|
111
107
|
then(([lowestPort, highestPort]) => ManageALocalServer.as(actor).listen(lowestPort, highestPort));
|
|
112
108
|
}
|
|
113
|
-
|
|
114
|
-
toString(): string {
|
|
115
|
-
return `#actor starts local server on port between ${ this.lowestPort } and ${ this.highestPort }`;
|
|
116
|
-
}
|
|
117
109
|
}
|
|
118
110
|
|
|
119
111
|
/**
|
|
@@ -122,15 +114,11 @@ class StartLocalServerOnRandomPortBetween extends Interaction {
|
|
|
122
114
|
class StartLocalServerOnFirstOf extends Interaction {
|
|
123
115
|
|
|
124
116
|
constructor(private readonly preferredPorts: Answerable<number[]>) {
|
|
125
|
-
super();
|
|
117
|
+
super(`#actor starts local server on first port of ${ preferredPorts }`);
|
|
126
118
|
}
|
|
127
119
|
|
|
128
120
|
performAs(actor: UsesAbilities & CollectsArtifacts & AnswersQuestions): Promise<void> {
|
|
129
121
|
return actor.answer(this.preferredPorts)
|
|
130
122
|
.then(preferredPorts => ManageALocalServer.as(actor).listen(preferredPorts[0]));
|
|
131
123
|
}
|
|
132
|
-
|
|
133
|
-
toString(): string {
|
|
134
|
-
return `#actor starts local server on first port of ${ this.preferredPorts }`;
|
|
135
|
-
}
|
|
136
124
|
}
|
|
@@ -14,7 +14,7 @@ export class StopLocalServer extends Interaction {
|
|
|
14
14
|
* Stops the server if it's running. If the server hasn't been started, this interaction does nothing.
|
|
15
15
|
*/
|
|
16
16
|
static ifRunning(): Interaction {
|
|
17
|
-
return new StopLocalServer();
|
|
17
|
+
return new StopLocalServer(`#actor stops the local server`);
|
|
18
18
|
}
|
|
19
19
|
|
|
20
20
|
/**
|
|
@@ -33,11 +33,4 @@ export class StopLocalServer extends Interaction {
|
|
|
33
33
|
);
|
|
34
34
|
}));
|
|
35
35
|
}
|
|
36
|
-
|
|
37
|
-
/**
|
|
38
|
-
* @inheritDoc
|
|
39
|
-
*/
|
|
40
|
-
toString(): string {
|
|
41
|
-
return `#actor stops the local server`;
|
|
42
|
-
}
|
|
43
36
|
}
|