summaryrefslogtreecommitdiff
path: root/std/node/_fs_dirent_test.ts
diff options
context:
space:
mode:
authorChris Knight <cknight1234@gmail.com>2020-03-12 14:12:27 +0000
committerGitHub <noreply@github.com>2020-03-12 10:12:27 -0400
commitcabe63eb05f334bc9921dc8633b254b05519b434 (patch)
tree4e6ad72e742a2acca605c0cf253e1f97586ce9da /std/node/_fs_dirent_test.ts
parent3ed6ccc905394ed9c5d9cbcb8fa2426151780788 (diff)
fix: Node polyfill fsAppend rework (#4322)
* My original implementation of `fs.appendFile` used an async API, which, though it would work fine as a polyfill, wasn't an exact match with the Node API. This PR reworks that API to mimic the Node API fully as a synchronous void function with an async internal implementation. * Refactor move of other internal fs `dirent` and `dir` classes to the _fs internal directory.
Diffstat (limited to 'std/node/_fs_dirent_test.ts')
-rw-r--r--std/node/_fs_dirent_test.ts123
1 files changed, 0 insertions, 123 deletions
diff --git a/std/node/_fs_dirent_test.ts b/std/node/_fs_dirent_test.ts
deleted file mode 100644
index acbaffc50..000000000
--- a/std/node/_fs_dirent_test.ts
+++ /dev/null
@@ -1,123 +0,0 @@
-const { test } = Deno;
-import { assert, assertEquals, assertThrows } from "../testing/asserts.ts";
-import Dirent from "./_fs_dirent.ts";
-
-class FileInfoMock implements Deno.FileInfo {
- len = -1;
- modified = -1;
- accessed = -1;
- created = -1;
- name = "";
- dev = -1;
- ino = -1;
- mode = -1;
- nlink = -1;
- uid = -1;
- gid = -1;
- rdev = -1;
- blksize = -1;
- blocks: number | null = null;
-
- isFileMock = false;
- isDirectoryMock = false;
- isSymlinkMock = false;
-
- isFile(): boolean {
- return this.isFileMock;
- }
- isDirectory(): boolean {
- return this.isDirectoryMock;
- }
- isSymlink(): boolean {
- return this.isSymlinkMock;
- }
-}
-
-test({
- name: "Block devices are correctly identified",
- fn() {
- const fileInfo: FileInfoMock = new FileInfoMock();
- fileInfo.blocks = 5;
- assert(new Dirent(fileInfo).isBlockDevice());
- assert(!new Dirent(fileInfo).isCharacterDevice());
- }
-});
-
-test({
- name: "Character devices are correctly identified",
- fn() {
- const fileInfo: FileInfoMock = new FileInfoMock();
- fileInfo.blocks = null;
- assert(new Dirent(fileInfo).isCharacterDevice());
- assert(!new Dirent(fileInfo).isBlockDevice());
- }
-});
-
-test({
- name: "Directories are correctly identified",
- fn() {
- const fileInfo: FileInfoMock = new FileInfoMock();
- fileInfo.isDirectoryMock = true;
- fileInfo.isFileMock = false;
- fileInfo.isSymlinkMock = false;
- assert(new Dirent(fileInfo).isDirectory());
- assert(!new Dirent(fileInfo).isFile());
- assert(!new Dirent(fileInfo).isSymbolicLink());
- }
-});
-
-test({
- name: "Files are correctly identified",
- fn() {
- const fileInfo: FileInfoMock = new FileInfoMock();
- fileInfo.isDirectoryMock = false;
- fileInfo.isFileMock = true;
- fileInfo.isSymlinkMock = false;
- assert(!new Dirent(fileInfo).isDirectory());
- assert(new Dirent(fileInfo).isFile());
- assert(!new Dirent(fileInfo).isSymbolicLink());
- }
-});
-
-test({
- name: "Symlinks are correctly identified",
- fn() {
- const fileInfo: FileInfoMock = new FileInfoMock();
- fileInfo.isDirectoryMock = false;
- fileInfo.isFileMock = false;
- fileInfo.isSymlinkMock = true;
- assert(!new Dirent(fileInfo).isDirectory());
- assert(!new Dirent(fileInfo).isFile());
- assert(new Dirent(fileInfo).isSymbolicLink());
- }
-});
-
-test({
- name: "File name is correct",
- fn() {
- const fileInfo: FileInfoMock = new FileInfoMock();
- fileInfo.name = "my_file";
- assertEquals(new Dirent(fileInfo).name, "my_file");
- }
-});
-
-test({
- name: "Socket and FIFO pipes aren't yet available",
- fn() {
- const fileInfo: FileInfoMock = new FileInfoMock();
- assertThrows(
- () => {
- new Dirent(fileInfo).isFIFO();
- },
- Error,
- "does not yet support"
- );
- assertThrows(
- () => {
- new Dirent(fileInfo).isSocket();
- },
- Error,
- "does not yet support"
- );
- }
-});