mirror of
https://github.com/denoland/deno.git
synced 2024-12-29 10:39:10 -05:00
d2b5254c33
Re-attempt at #21284. I was more thorough this time. --------- Signed-off-by: Asher Gomez <ashersaupingomez@gmail.com>
43 lines
894 B
TypeScript
43 lines
894 B
TypeScript
import { assertEquals } from "../../../../test_util/std/assert/mod.ts";
|
|
|
|
const permissions: Deno.PermissionName[] = [
|
|
"read",
|
|
"write",
|
|
"net",
|
|
"env",
|
|
"run",
|
|
"ffi",
|
|
"hrtime",
|
|
];
|
|
|
|
for (const name of permissions) {
|
|
Deno.bench({
|
|
name: `${name} false`,
|
|
permissions: {
|
|
[name]: false,
|
|
},
|
|
async fn() {
|
|
for await (const n of permissions) {
|
|
const status = await Deno.permissions.query({ name: n });
|
|
assertEquals(status.state, "prompt");
|
|
}
|
|
},
|
|
});
|
|
|
|
Deno.bench({
|
|
name: `${name} true`,
|
|
permissions: {
|
|
[name]: true,
|
|
},
|
|
async fn() {
|
|
for await (const n of permissions) {
|
|
const status = await Deno.permissions.query({ name: n });
|
|
if (n === name) {
|
|
assertEquals(status.state, "granted");
|
|
} else {
|
|
assertEquals(status.state, "prompt");
|
|
}
|
|
}
|
|
},
|
|
});
|
|
}
|