test/proxy.test.ts: Implement

This commit is contained in:
Anmol Sethi 2021-01-14 10:54:34 -05:00
parent 240c8e266e
commit 60233d0974
No known key found for this signature in database
GPG Key ID: 8CEF1878FF10ADEB

47
test/proxy.test.ts Normal file
View File

@ -0,0 +1,47 @@
import * as integration from "./integration"
import * as httpserver from "./httpserver"
import * as express from "express"
import * as assert from "assert"
describe("proxy", () => {
let codeServer: httpserver.HttpServer | undefined
let nhooyrDevServer = new httpserver.HttpServer()
let proxyPath: string
before(async () => {
const e = express.default()
await nhooyrDevServer.listen(e)
e.get("/wsup", (req, res) => {
res.json("asher is the best")
})
proxyPath = `/proxy/${nhooyrDevServer.port()}/wsup`
e.get(proxyPath, (req, res) => {
res.json("joe is the best")
})
})
after(async () => {
await nhooyrDevServer.close()
})
afterEach(async () => {
if (codeServer) {
await codeServer.close()
codeServer = undefined
}
})
it("should rewrite the base path", async () => {
;[,, codeServer,] = await integration.setup(["--auth=none"], "")
const resp = await codeServer.fetch(proxyPath)
assert.equal(resp.status, 200)
assert.equal(await resp.json(), "asher is the best")
})
it("should not rewrite the base path", async () => {
;[,,codeServer,] = await integration.setup(["--auth=none", "--proxy-path-passthrough=true"], "")
const resp = await codeServer.fetch(proxyPath)
assert.equal(resp.status, 200)
assert.equal(await resp.json(), "joe is the best")
})
})