summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorMatt Mastracci <matthew@mastracci.com>2024-05-10 11:21:36 -0600
committerGitHub <noreply@github.com>2024-05-10 11:21:36 -0600
commitadc7b3de2695a1371a5179329b4a5aa90a3aef84 (patch)
treecce4a582c39d834f54b60c4d8dd7c09d24971ccc /tests
parenta9708037c9e333104bfdfe0ccadbc40395809c39 (diff)
fix(runtime): Allow opening /dev/fd/XXX for unix (#23743)
`deno run script.ts <(some command)` is a valid use case -- let's allow this to work without `--allow-all`. Fixes #23703
Diffstat (limited to 'tests')
-rw-r--r--tests/specs/permission/proc_self_fd/__test__.jsonc5
-rw-r--r--tests/specs/permission/proc_self_fd/main.js18
-rw-r--r--tests/specs/permission/proc_self_fd/reader.ts1
3 files changed, 24 insertions, 0 deletions
diff --git a/tests/specs/permission/proc_self_fd/__test__.jsonc b/tests/specs/permission/proc_self_fd/__test__.jsonc
new file mode 100644
index 000000000..8d4d1ed43
--- /dev/null
+++ b/tests/specs/permission/proc_self_fd/__test__.jsonc
@@ -0,0 +1,5 @@
+{
+ "args": "run -A main.js",
+ "output": "hi\n\n0\n",
+ "exitCode": 123
+}
diff --git a/tests/specs/permission/proc_self_fd/main.js b/tests/specs/permission/proc_self_fd/main.js
new file mode 100644
index 000000000..86d8334cb
--- /dev/null
+++ b/tests/specs/permission/proc_self_fd/main.js
@@ -0,0 +1,18 @@
+// This test is Linux/Darwin only
+if (Deno.build.os !== "linux" && Deno.build.os !== "darwin") {
+ console.log("hi\n\n0");
+ Deno.exit(123);
+}
+
+const cmd = new Deno.Command("/usr/bin/env", {
+ args: [
+ "bash",
+ "-c",
+ [Deno.execPath(), "run", "--allow-read", "reader.ts", '<(echo "hi")'].join(
+ " ",
+ ),
+ ],
+}).spawn();
+
+console.log((await cmd.status).code);
+Deno.exit(123);
diff --git a/tests/specs/permission/proc_self_fd/reader.ts b/tests/specs/permission/proc_self_fd/reader.ts
new file mode 100644
index 000000000..4b3587fa2
--- /dev/null
+++ b/tests/specs/permission/proc_self_fd/reader.ts
@@ -0,0 +1 @@
+console.log(Deno.readTextFileSync(Deno.args[0]));