aboutsummaryrefslogtreecommitdiff
path: root/test/cli/install
diff options
context:
space:
mode:
authorGravatar Colin McDonnell <colinmcd94@gmail.com> 2023-03-22 15:01:01 -0700
committerGravatar GitHub <noreply@github.com> 2023-03-22 15:01:01 -0700
commita5f92224b586289fc72f0abdb68b08eef9f017db (patch)
tree6092397858776820b431b0dffa635d8bc3b3185e /test/cli/install
parent2bdaa81b1c2325687c5115b4e97627533cb3646b (diff)
downloadbun-a5f92224b586289fc72f0abdb68b08eef9f017db.tar.gz
bun-a5f92224b586289fc72f0abdb68b08eef9f017db.tar.zst
bun-a5f92224b586289fc72f0abdb68b08eef9f017db.zip
Fix types (#2453)
* WIP * WIP * WIP * WIP * Improve typechecking in type files * Fix typechecking * Update * Update submodule * CI for typechecking * Add ci * Update commands * Format after build * Dont use bunx * Rename job * Use nodemodules prettier * Update workflow * Use symlink * Debug * Debug * Clean up and rename jobs
Diffstat (limited to 'test/cli/install')
-rw-r--r--test/cli/install/bun-add.test.ts6
-rw-r--r--test/cli/install/bun-link.test.ts2
-rw-r--r--test/cli/install/bunx.test.ts2
-rw-r--r--test/cli/install/dummy.registry.ts32
4 files changed, 27 insertions, 15 deletions
diff --git a/test/cli/install/bun-add.test.ts b/test/cli/install/bun-add.test.ts
index 310341560..0f3f13895 100644
--- a/test/cli/install/bun-add.test.ts
+++ b/test/cli/install/bun-add.test.ts
@@ -20,7 +20,7 @@ import {
beforeAll(dummyBeforeAll);
afterAll(dummyAfterAll);
-let add_dir;
+let add_dir: string;
beforeEach(async () => {
add_dir = await mkdtemp(join(await realpath(tmpdir()), "bun-add.test"));
@@ -860,7 +860,7 @@ it("should handle Git URL in dependencies (SCP-style)", async () => {
});
it("should prefer optionalDependencies over dependencies of the same name", async () => {
- const urls = [];
+ const urls: string[] = [];
setHandler(
dummyRegistry(urls, {
"0.0.2": {
@@ -920,7 +920,7 @@ it("should prefer optionalDependencies over dependencies of the same name", asyn
});
it("should prefer dependencies over peerDependencies of the same name", async () => {
- const urls = [];
+ const urls: string[] = [];
setHandler(
dummyRegistry(urls, {
"0.0.2": {
diff --git a/test/cli/install/bun-link.test.ts b/test/cli/install/bun-link.test.ts
index 5b0abe139..e79f09aaf 100644
--- a/test/cli/install/bun-link.test.ts
+++ b/test/cli/install/bun-link.test.ts
@@ -16,7 +16,7 @@ import {
beforeAll(dummyBeforeAll);
afterAll(dummyAfterAll);
-let link_dir;
+let link_dir: string;
beforeEach(async () => {
link_dir = await mkdtemp(join(await realpath(tmpdir()), "bun-link.test"));
diff --git a/test/cli/install/bunx.test.ts b/test/cli/install/bunx.test.ts
index 49d6e1c2d..87ad2f8b4 100644
--- a/test/cli/install/bunx.test.ts
+++ b/test/cli/install/bunx.test.ts
@@ -7,7 +7,7 @@ import { tmpdir } from "os";
import { join } from "path";
import { readdirSorted } from "./dummy.registry";
-let x_dir;
+let x_dir: string;
beforeEach(async () => {
x_dir = realpathSync(await mkdtemp(join(tmpdir(), "bun-x.test")));
diff --git a/test/cli/install/dummy.registry.ts b/test/cli/install/dummy.registry.ts
index 7d3acb612..d9496b0e7 100644
--- a/test/cli/install/dummy.registry.ts
+++ b/test/cli/install/dummy.registry.ts
@@ -11,12 +11,23 @@ import { mkdtemp, readdir, realpath, rm, writeFile } from "fs/promises";
import { tmpdir } from "os";
import { basename, join } from "path";
-type RequestHandler = (request: Request) => Response | Promise<Response>;
-let handler: RequestHandler, server: Server;
-export let package_dir: string, requested: number, root_url: string;
+type Handler = (req: Request) => Response | Promise<Response>;
+type Pkg = {
+ name: string;
+ version: string;
+ dist: {
+ tarball: string;
+ };
+};
+let handler: Handler;
+let server: Server;
let testCounter = 0;
-export function dummyRegistry(urls: string[], info: any = { "0.0.2": {} }): RequestHandler {
- return async request => {
+export let package_dir: string;
+export let requested: number;
+export let root_url: string;
+
+export function dummyRegistry(urls: string[], info: any = { "0.0.2": {} }) {
+ const _handler: Handler = async request => {
urls.push(request.url);
expect(request.method).toBe("GET");
if (request.url.endsWith(".tgz")) {
@@ -28,7 +39,7 @@ export function dummyRegistry(urls: string[], info: any = { "0.0.2": {} }): Requ
expect(request.headers.get("npm-auth-type")).toBe(null);
expect(await request.text()).toBe("");
const name = request.url.slice(request.url.indexOf("/", root_url.length) + 1);
- const versions: any = {};
+ const versions: Record<string, Pkg> = {};
let version;
for (version in info) {
if (!/^[0-9]/.test(version)) continue;
@@ -51,6 +62,7 @@ export function dummyRegistry(urls: string[], info: any = { "0.0.2": {} }): Requ
}),
);
};
+ return _handler;
}
export async function readdirSorted(path: PathLike): Promise<string[]> {
@@ -59,11 +71,11 @@ export async function readdirSorted(path: PathLike): Promise<string[]> {
return results;
}
-export function setHandler(newHandler: RequestHandler) {
+export function setHandler(newHandler: Handler) {
handler = newHandler;
}
-function resetHanlder() {
+function resetHandler() {
setHandler(() => new Response("Tea Break~", { status: 418 }));
}
@@ -86,7 +98,7 @@ var packageDirGetter: () => Promise<string> = async () => {
return await realpath(await mkdtemp(join(await realpath(tmpdir()), "bun-install-test-" + testCounter++ + "--")));
};
export async function dummyBeforeEach() {
- resetHanlder();
+ resetHandler();
requested = 0;
package_dir = await packageDirGetter();
@@ -101,7 +113,7 @@ registry = "http://localhost:${server.port}/"
}
export async function dummyAfterEach() {
- resetHanlder();
+ resetHandler();
await rm(package_dir, { force: true, recursive: true });
}