feat: setup jest

This commit is contained in:
Joe Previte
2021-01-08 20:55:47 +00:00
parent c52198f30d
commit cef7d42652
8 changed files with 1918 additions and 186 deletions

View File

@ -1,5 +1,4 @@
import { field, logger } from "@coder/logger"
import * as assert from "assert"
import { field, logger } from "@coder/logger"
import * as fs from "fs-extra"
import "leaked-handles"
import * as net from "net"
@ -44,7 +43,7 @@ describe("SocketProxyProvider", () => {
})
}
before(async () => {
beforeAll(async () => {
const cert = await generateCertificate("localhost")
const options = {
cert: fs.readFileSync(cert.cert),
@ -93,14 +92,16 @@ describe("SocketProxyProvider", () => {
it("should work without a proxy", async () => {
server.write("server->client")
assert.equal(await getData(fromServerToClient), "server->client")
const dataFromServerToClient = await (await getData(fromServerToClient)).toString()
expect(dataFromServerToClient).toBe("server->client")
client.write("client->server")
assert.equal(await getData(fromClientToServer), "client->server")
assert.equal(errors, 0)
const dataFromClientToServer = await (await getData(fromClientToServer)).toString()
expect(dataFromClientToServer).toBe("client->server")
expect(errors).toEqual(0)
})
it("should work with a proxy", async () => {
assert.equal(server instanceof tls.TLSSocket, true)
expect(server instanceof tls.TLSSocket).toBe(true)
proxy = (await provider.createProxy(server))
.on("data", (d) => fromClientToProxy.emit(d))
.on("error", (error) => onProxyError.emit({ event: "error", error }))
@ -110,10 +111,12 @@ describe("SocketProxyProvider", () => {
provider.stop() // We don't need more proxies.
proxy.write("server proxy->client")
assert.equal(await getData(fromServerToClient), "server proxy->client")
const dataFromServerToClient = await (await getData(fromServerToClient)).toString()
expect(dataFromServerToClient).toBe("server proxy->client")
client.write("client->server proxy")
assert.equal(await getData(fromClientToProxy), "client->server proxy")
assert.equal(errors, 0)
const dataFromClientToProxy = await (await getData(fromClientToProxy)).toString()
expect(dataFromClientToProxy).toBe("client->server proxy")
expect(errors).toEqual(0)
})
it("should close", async () => {
@ -122,3 +125,4 @@ describe("SocketProxyProvider", () => {
proxy.end()
})
})