mirror of
https://github.com/denoland/deno.git
synced 2025-07-28 23:53:53 +00:00
Add --allow-read (#1689)
Co-authored-by: Greg Altman <g.s.altman@gmail.com>
This commit is contained in:
parent
3abaf9edb6
commit
9ab03389f0
25 changed files with 395 additions and 118 deletions
|
@ -1,5 +1,5 @@
|
|||
// Copyright 2018-2019 the Deno authors. All rights reserved. MIT license.
|
||||
import { test, testPerm, assert, assertEqual } from "./test_util.ts";
|
||||
import { testPerm, assert, assertEqual } from "./test_util.ts";
|
||||
import * as deno from "deno";
|
||||
import { FileInfo } from "deno";
|
||||
|
||||
|
@ -22,12 +22,24 @@ function assertSameContent(files: FileInfo[]) {
|
|||
assertEqual(counter, 2);
|
||||
}
|
||||
|
||||
test(function readDirSyncSuccess() {
|
||||
testPerm({ read: true }, function readDirSyncSuccess() {
|
||||
const files = deno.readDirSync("tests/");
|
||||
assertSameContent(files);
|
||||
});
|
||||
|
||||
test(function readDirSyncNotDir() {
|
||||
testPerm({ read: false }, function readDirSyncPerm() {
|
||||
let caughtError = false;
|
||||
try {
|
||||
const files = deno.readDirSync("tests/");
|
||||
} catch (e) {
|
||||
caughtError = true;
|
||||
assertEqual(e.kind, deno.ErrorKind.PermissionDenied);
|
||||
assertEqual(e.name, "PermissionDenied");
|
||||
}
|
||||
assert(caughtError);
|
||||
});
|
||||
|
||||
testPerm({ read: true }, function readDirSyncNotDir() {
|
||||
let caughtError = false;
|
||||
let src;
|
||||
|
||||
|
@ -41,7 +53,7 @@ test(function readDirSyncNotDir() {
|
|||
assertEqual(src, undefined);
|
||||
});
|
||||
|
||||
test(function readDirSyncNotFound() {
|
||||
testPerm({ read: true }, function readDirSyncNotFound() {
|
||||
let caughtError = false;
|
||||
let src;
|
||||
|
||||
|
@ -55,7 +67,19 @@ test(function readDirSyncNotFound() {
|
|||
assertEqual(src, undefined);
|
||||
});
|
||||
|
||||
test(async function readDirSuccess() {
|
||||
testPerm({ read: true }, async function readDirSuccess() {
|
||||
const files = await deno.readDir("tests/");
|
||||
assertSameContent(files);
|
||||
});
|
||||
|
||||
testPerm({ read: false }, async function readDirPerm() {
|
||||
let caughtError = false;
|
||||
try {
|
||||
const files = await deno.readDir("tests/");
|
||||
} catch (e) {
|
||||
caughtError = true;
|
||||
assertEqual(e.kind, deno.ErrorKind.PermissionDenied);
|
||||
assertEqual(e.name, "PermissionDenied");
|
||||
}
|
||||
assert(caughtError);
|
||||
});
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue