summaryrefslogtreecommitdiff
path: root/cli/tests/unit/file_test.ts
diff options
context:
space:
mode:
Diffstat (limited to 'cli/tests/unit/file_test.ts')
-rw-r--r--cli/tests/unit/file_test.ts32
1 files changed, 32 insertions, 0 deletions
diff --git a/cli/tests/unit/file_test.ts b/cli/tests/unit/file_test.ts
index eaafbae27..640198034 100644
--- a/cli/tests/unit/file_test.ts
+++ b/cli/tests/unit/file_test.ts
@@ -103,3 +103,35 @@ unitTest(function fileUsingNumberFileName(): void {
unitTest(function fileUsingEmptyStringFileName(): void {
testSecondArgument("", "");
});
+
+unitTest({ perms: { read: true } }, function fileStatSyncSuccess(): void {
+ const file = Deno.openSync("README.md");
+ const fileInfo = file.statSync();
+ assert(fileInfo.isFile);
+ assert(!fileInfo.isSymlink);
+ assert(!fileInfo.isDirectory);
+ assert(fileInfo.size);
+ assert(fileInfo.atime);
+ assert(fileInfo.mtime);
+ // The `birthtime` field is not available on Linux before kernel version 4.11.
+ assert(fileInfo.birthtime || Deno.build.os === "linux");
+
+ file.close();
+});
+
+unitTest({ perms: { read: true } }, async function fileStatSuccess(): Promise<
+ void
+> {
+ const file = await Deno.open("README.md");
+ const fileInfo = await file.stat();
+ assert(fileInfo.isFile);
+ assert(!fileInfo.isSymlink);
+ assert(!fileInfo.isDirectory);
+ assert(fileInfo.size);
+ assert(fileInfo.atime);
+ assert(fileInfo.mtime);
+ // The `birthtime` field is not available on Linux before kernel version 4.11.
+ assert(fileInfo.birthtime || Deno.build.os === "linux");
+
+ file.close();
+});