mirror of
https://github.com/denoland/deno.git
synced 2025-09-27 04:39:10 +00:00
support permission mode in mkdir (#4286)
This commit is contained in:
parent
72c408ea9d
commit
a28fa2415f
5 changed files with 28 additions and 14 deletions
|
@ -15,11 +15,10 @@ unitTest(
|
|||
{ perms: { read: true, write: true } },
|
||||
function mkdirSyncMode(): void {
|
||||
const path = Deno.makeTempDirSync() + "/dir";
|
||||
Deno.mkdirSync(path, { mode: 0o755 }); // no perm for x
|
||||
Deno.mkdirSync(path, { mode: 0o737 });
|
||||
const pathInfo = Deno.statSync(path);
|
||||
if (pathInfo.mode !== null) {
|
||||
// Skip windows
|
||||
assertEquals(pathInfo.mode & 0o777, 0o755);
|
||||
if (Deno.build.os !== "win") {
|
||||
assertEquals(pathInfo.mode! & 0o777, 0o737 & ~Deno.umask());
|
||||
}
|
||||
}
|
||||
);
|
||||
|
@ -45,6 +44,18 @@ unitTest(
|
|||
}
|
||||
);
|
||||
|
||||
unitTest(
|
||||
{ perms: { read: true, write: true } },
|
||||
async function mkdirMode(): Promise<void> {
|
||||
const path = Deno.makeTempDirSync() + "/dir";
|
||||
await Deno.mkdir(path, { mode: 0o737 });
|
||||
const pathInfo = Deno.statSync(path);
|
||||
if (Deno.build.os !== "win") {
|
||||
assertEquals(pathInfo.mode! & 0o777, 0o737 & ~Deno.umask());
|
||||
}
|
||||
}
|
||||
);
|
||||
|
||||
unitTest({ perms: { write: true } }, function mkdirErrIfExists(): void {
|
||||
let err;
|
||||
try {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue