diff options
Diffstat (limited to 'sonar-css-plugin/css-bundle')
| -rw-r--r-- | sonar-css-plugin/css-bundle/src/server.ts | 7 | ||||
| -rw-r--r-- | sonar-css-plugin/css-bundle/tests/server.test.ts | 9 | 
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(); +  }); +}); | 
