Files
bun.sh/test/bun.js/process-args.test.js
Colin McDonnell f7f1b60444 Add bun-types, add typechecking, add child_process types (#1475)
* Add bun-types to packages

* Improve typing

* Fix types in tests

* Fix dts tests

* Run formatter

* Fix all type errors

* Add strict mode, fix type errors

* Add ffi changes

* Move workflows to root

* Add workflows

* Remove labeler

* Add child_process types

* Fix synthetic defaults issue

* Remove docs

* Move scripts

* Run prettier

* Include examples in typechecking

* captureStackTrace types

* moved captureStackTrace types to globals

* Address reviews

Co-authored-by: Colin McDonnell <colinmcd@alum.mit.edu>
Co-authored-by: Dylan Conway <dylan.conway567@gmail.com>
2022-11-09 15:40:40 -08:00

42 lines
1.2 KiB
JavaScript

import { spawn } from "bun";
import { test, expect } from "bun:test";
test("args exclude run", async () => {
const arg0 = process.argv[0];
const arg1 = import.meta.dir + "/print-process-args.js";
const exe = process.versions.bun.includes("debug") ? "bun-debug" : "bun";
const { stdout: s1 } = spawn([exe, "print-process-args.js"], {
cwd: import.meta.dir,
});
const t1 = JSON.parse(await new Response(s1).text());
expect(t1[0]).toBe(arg0);
expect(t1[1]).toBe(arg1);
const { stdout: s2 } = spawn([exe, "print-process-args.js", "arg1"], {
cwd: import.meta.dir,
});
const t2 = JSON.parse(await new Response(s2).text());
expect(t2[0]).toBe(arg0);
expect(t2[1]).toBe(arg1);
expect(t2[2]).toBe("arg1");
const { stdout: s3 } = spawn([exe, "run", "print-process-args.js"], {
cwd: import.meta.dir,
});
const t3 = JSON.parse(await new Response(s3).text());
expect(t3[0]).toBe(arg0);
expect(t3[1]).toBe(arg1);
const { stdout: s4 } = spawn(
[exe, "run", "print-process-args.js", "arg1", "arg2"],
{ cwd: import.meta.dir },
);
const t4 = JSON.parse(await new Response(s4).text());
expect(t4[0]).toBe(arg0);
expect(t4[1]).toBe(arg1);
expect(t4[2]).toBe("arg1");
expect(t4[3]).toBe("arg2");
});