aboutsummaryrefslogtreecommitdiff
path: root/test/bun.js/fs.test.js
diff options
context:
space:
mode:
authorGravatar Carter Snook <cartersnook04@gmail.com> 2022-07-20 12:19:41 -0500
committerGravatar GitHub <noreply@github.com> 2022-07-20 10:19:41 -0700
commit7500f4b2cae329719d2b71098ffdc93735c764bf (patch)
tree2af7667fc8113d0140edbb99771dd8fde8cb2baa /test/bun.js/fs.test.js
parent08bff8e09035dff15cb0e8333e9a5f1c9b10ea0d (diff)
downloadbun-7500f4b2cae329719d2b71098ffdc93735c764bf.tar.gz
bun-7500f4b2cae329719d2b71098ffdc93735c764bf.tar.zst
bun-7500f4b2cae329719d2b71098ffdc93735c764bf.zip
feat(node/fs): implement more stat methods (#807)
Diffstat (limited to '')
-rw-r--r--test/bun.js/fs.test.js61
1 files changed, 61 insertions, 0 deletions
diff --git a/test/bun.js/fs.test.js b/test/bun.js/fs.test.js
index 79ac60eaa..d3c6be901 100644
--- a/test/bun.js/fs.test.js
+++ b/test/bun.js/fs.test.js
@@ -11,6 +11,8 @@ import {
readSync,
writeFileSync,
writeSync,
+ statSync,
+ lstatSync,
} from "node:fs";
const Buffer = globalThis.Buffer || Uint8Array;
@@ -242,3 +244,62 @@ describe("writeFileSync", () => {
}
});
});
+
+describe("lstat", () => {
+ it("file metadata is correct", () => {
+ const fileStats = lstatSync(
+ new URL("./fs-stream.js", import.meta.url)
+ .toString()
+ .slice("file://".length - 1)
+ );
+ expect(fileStats.isSymbolicLink()).toBe(false);
+ expect(fileStats.isFile()).toBe(true);
+ expect(fileStats.isDirectory()).toBe(false);
+ });
+
+ it("folder metadata is correct", () => {
+ const fileStats = lstatSync(
+ new URL("../../test", import.meta.url)
+ .toString()
+ .slice("file://".length - 1)
+ );
+ expect(fileStats.isSymbolicLink()).toBe(false);
+ expect(fileStats.isFile()).toBe(false);
+ expect(fileStats.isDirectory()).toBe(true);
+ });
+
+ it("symlink metadata is correct", () => {
+ const linkStats = lstatSync(
+ new URL("./fs-stream.link.js", import.meta.url)
+ .toString()
+ .slice("file://".length - 1)
+ );
+ expect(linkStats.isSymbolicLink()).toBe(true);
+ expect(linkStats.isFile()).toBe(false);
+ expect(linkStats.isDirectory()).toBe(false);
+ });
+});
+
+describe("stat", () => {
+ it("file metadata is correct", () => {
+ const fileStats = statSync(
+ new URL("./fs-stream.js", import.meta.url)
+ .toString()
+ .slice("file://".length - 1)
+ );
+ expect(fileStats.isSymbolicLink()).toBe(false);
+ expect(fileStats.isFile()).toBe(true);
+ expect(fileStats.isDirectory()).toBe(false);
+ });
+
+ it("folder metadata is correct", () => {
+ const fileStats = statSync(
+ new URL("../../test", import.meta.url)
+ .toString()
+ .slice("file://".length - 1)
+ );
+ expect(fileStats.isSymbolicLink()).toBe(false);
+ expect(fileStats.isFile()).toBe(false);
+ expect(fileStats.isDirectory()).toBe(true);
+ });
+});