aboutsummaryrefslogtreecommitdiffstats
path: root/sonar-css-plugin/css-bundle
diff options
context:
space:
mode:
Diffstat (limited to 'sonar-css-plugin/css-bundle')
-rw-r--r--sonar-css-plugin/css-bundle/src/server.ts7
-rw-r--r--sonar-css-plugin/css-bundle/tests/server.test.ts9
2 files changed, 16 insertions, 0 deletions
diff --git a/sonar-css-plugin/css-bundle/src/server.ts b/sonar-css-plugin/css-bundle/src/server.ts
index 93bb6cb..e9c66c0 100644
--- a/sonar-css-plugin/css-bundle/src/server.ts
+++ b/sonar-css-plugin/css-bundle/src/server.ts
@@ -27,6 +27,13 @@ export function start(port = 0): Promise<Server> {
resp.send("OK!")
);
+ app.post("/close", (_req: express.Request, resp: express.Response) => {
+ console.log("DEBUG stylelint-bridge server will shutdown");
+ resp.end(() => {
+ server.close();
+ });
+ });
+
// every time something is wrong we log error and send empty response (with 0 issues)
// it's important to keep this call last in configuring "app"
app.use(
diff --git a/sonar-css-plugin/css-bundle/tests/server.test.ts b/sonar-css-plugin/css-bundle/tests/server.test.ts
index 84fc617..8574129 100644
--- a/sonar-css-plugin/css-bundle/tests/server.test.ts
+++ b/sonar-css-plugin/css-bundle/tests/server.test.ts
@@ -167,3 +167,12 @@ describe("server", () => {
return postToServer(data, endpoint, server);
}
});
+
+describe("server close", () => {
+ it("should stop listening when closed", async () => {
+ const server = await start();
+ expect(server.listening).toBeTruthy();
+ await postToServer("", "/close", server);
+ expect(server.listening).toBeFalsy();
+ });
+});