aboutsummaryrefslogtreecommitdiff
path: root/test/js/node/path/path.test.js
diff options
context:
space:
mode:
authorGravatar Jarred Sumner <jarred@jarredsumner.com> 2023-05-31 19:17:01 -0700
committerGravatar GitHub <noreply@github.com> 2023-05-31 19:17:01 -0700
commitcb0f76aa73f6b85667b57015a77ac39d9c78aa0b (patch)
tree949bcc466b3afbbb69a070d35d2b814f0e66be40 /test/js/node/path/path.test.js
parent79d7b2075e63f79ec6d1d2a904178969eb701f0b (diff)
parent110d0752f333e4c32c9226e4a94e93f18837f9c7 (diff)
downloadbun-cb0f76aa73f6b85667b57015a77ac39d9c78aa0b.tar.gz
bun-cb0f76aa73f6b85667b57015a77ac39d9c78aa0b.tar.zst
bun-cb0f76aa73f6b85667b57015a77ac39d9c78aa0b.zip
Merge branch 'main' into jarred/port
Diffstat (limited to 'test/js/node/path/path.test.js')
-rw-r--r--test/js/node/path/path.test.js70
1 files changed, 70 insertions, 0 deletions
diff --git a/test/js/node/path/path.test.js b/test/js/node/path/path.test.js
index d2880f124..caaf12db0 100644
--- a/test/js/node/path/path.test.js
+++ b/test/js/node/path/path.test.js
@@ -450,3 +450,73 @@ it("path.resolve", () => {
});
strictEqual(failures.length, 0, failures.join("\n"));
});
+
+it("path.parse", () => {
+ expect(path.parse("/tmp")).toStrictEqual({ root: "/", dir: "/", base: "tmp", ext: "", name: "tmp" });
+
+ expect(path.parse("/tmp/test.txt")).toStrictEqual({
+ root: "/",
+ dir: "/tmp",
+ base: "test.txt",
+ ext: ".txt",
+ name: "test",
+ });
+
+ expect(path.parse("/tmp/test/file.txt")).toStrictEqual({
+ root: "/",
+ dir: "/tmp/test",
+ base: "file.txt",
+ ext: ".txt",
+ name: "file",
+ });
+
+ expect(path.parse("/tmp/test/dir")).toStrictEqual({ root: "/", dir: "/tmp/test", base: "dir", ext: "", name: "dir" });
+ expect(path.parse("/tmp/test/dir/")).toStrictEqual({
+ root: "/",
+ dir: "/tmp/test",
+ base: "dir",
+ ext: "",
+ name: "dir",
+ });
+
+ expect(path.parse(".")).toStrictEqual({ root: "", dir: "", base: ".", ext: "", name: "." });
+ expect(path.parse("./")).toStrictEqual({ root: "", dir: "", base: ".", ext: "", name: "." });
+ expect(path.parse("/.")).toStrictEqual({ root: "/", dir: "/", base: ".", ext: "", name: "." });
+ expect(path.parse("/../")).toStrictEqual({ root: "/", dir: "/", base: "..", ext: ".", name: "." });
+
+ expect(path.parse("./file.txt")).toStrictEqual({ root: "", dir: ".", base: "file.txt", ext: ".txt", name: "file" });
+ expect(path.parse("../file.txt")).toStrictEqual({ root: "", dir: "..", base: "file.txt", ext: ".txt", name: "file" });
+ expect(path.parse("../test/file.txt")).toStrictEqual({
+ root: "",
+ dir: "../test",
+ base: "file.txt",
+ ext: ".txt",
+ name: "file",
+ });
+ expect(path.parse("test/file.txt")).toStrictEqual({
+ root: "",
+ dir: "test",
+ base: "file.txt",
+ ext: ".txt",
+ name: "file",
+ });
+
+ expect(path.parse("test/dir")).toStrictEqual({ root: "", dir: "test", base: "dir", ext: "", name: "dir" });
+ expect(path.parse("test/dir/another_dir")).toStrictEqual({
+ root: "",
+ dir: "test/dir",
+ base: "another_dir",
+ ext: "",
+ name: "another_dir",
+ });
+
+ expect(path.parse("./dir")).toStrictEqual({ root: "", dir: ".", base: "dir", ext: "", name: "dir" });
+ expect(path.parse("../dir")).toStrictEqual({ root: "", dir: "..", base: "dir", ext: "", name: "dir" });
+ expect(path.parse("../dir/another_dir")).toStrictEqual({
+ root: "",
+ dir: "../dir",
+ base: "another_dir",
+ ext: "",
+ name: "another_dir",
+ });
+});