chore: Move to Typescript (#2783)

This PR moves the entire project to Typescript. Due to the ~1000 ignores this will lead to a messy codebase for a while, but the churn is worth it – all of those ignore comments are places that were never type-safe previously.

closes #1282
This commit is contained in:
Tom Moor
2021-11-29 06:40:55 -08:00
committed by GitHub
parent 25ccfb5d04
commit 15b1069bcc
1017 changed files with 17410 additions and 54942 deletions

32
server/utils/fs.test.ts Normal file
View File

@@ -0,0 +1,32 @@
import { serializeFilename, deserializeFilename } from "./fs";
describe("serializeFilename", () => {
it("should serialize forward slashes", () => {
expect(serializeFilename(`/`)).toBe("%2F");
expect(serializeFilename(`this / and / this`)).toBe(
"this %2F and %2F this"
);
});
it("should serialize back slashes", () => {
expect(serializeFilename(`\\`)).toBe("%5C");
expect(serializeFilename(`this \\ and \\ this`)).toBe(
"this %5C and %5C this"
);
});
});
describe("deserializeFilename", () => {
it("should deserialize forward slashes", () => {
expect(deserializeFilename("%2F")).toBe("/");
expect(deserializeFilename("this %2F and %2F this")).toBe(
`this / and / this`
);
});
it("should deserialize back slashes", () => {
expect(deserializeFilename("%5C")).toBe(`\\`);
expect(deserializeFilename("this %5C and %5C this")).toBe(
`this \\ and \\ this`
);
});
});