1
0
mirror of https://github.com/lensapp/lens.git synced 2025-05-20 05:10:56 +00:00
Signed-off-by: Jari Kolehmainen <jari.kolehmainen@gmail.com>
This commit is contained in:
Jari Kolehmainen 2020-05-03 09:30:36 +03:00
parent e2b581881c
commit f48def84f7

View File

@ -15,14 +15,18 @@ class MockServer extends EventEmitter {
}) })
} }
// eslint-disable-next-line @typescript-eslint/no-var-requires // eslint-disable-next-line @typescript-eslint/no-var-requires
const net = require("net") const http = require("http")
jest.mock("net") jest.mock("http")
// eslint-disable-next-line @typescript-eslint/no-var-requires
const request = require("request-promise-native")
jest.mock("request-promise-native")
import * as port from "../../../src/main/port" import * as port from "../../../src/main/port"
describe("getFreePort", () => { describe("getFreePort", () => {
beforeEach(() => { beforeEach(() => {
net.createServer.mockReturnValue(new MockServer) http.createServer.mockReturnValue(new MockServer)
}) })
afterEach(() => { afterEach(() => {
@ -34,6 +38,20 @@ describe("getFreePort", () => {
}) })
it("finds the next free port", async () => { it("finds the next free port", async () => {
request.mockReturnValue(new Promise((resolve, reject) => {
resolve({
body: "lens-port-checker"
})
}))
return expect(port.getFreePort(9000, 9005)).resolves.toBe(9003) return expect(port.getFreePort(9000, 9005)).resolves.toBe(9003)
}) })
it("fails with invalid response", async () => {
request.mockReturnValue(new Promise((resolve, reject) => {
resolve({
body: "wrong"
})
}))
return expect(port.getFreePort(9000, 9005)).rejects.toMatch('free port')
})
}) })