diff options
author | David Sherret <dsherret@users.noreply.github.com> | 2024-10-10 14:01:42 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-10-10 14:01:42 +0100 |
commit | 66929de3bab098d2b9278cfc4b311c977555721c (patch) | |
tree | e3fe7576d7ad248e6d3797885649d68391bcd352 /tests/specs | |
parent | 06aadcd22bb0f33ffd240e39ff8d39ab286e41b7 (diff) |
fix(unstable/worker): ensure import permissions are passed (#26101)
We only had integration tests for this and not an integration test.
Closes #26074
Diffstat (limited to 'tests/specs')
5 files changed, 40 insertions, 0 deletions
diff --git a/tests/specs/permission/allow_import_worker/__test__.jsonc b/tests/specs/permission/allow_import_worker/__test__.jsonc new file mode 100644 index 000000000..21ac65303 --- /dev/null +++ b/tests/specs/permission/allow_import_worker/__test__.jsonc @@ -0,0 +1,13 @@ +{ + "tests": { + "allowed": { + "args": "run -A --unstable-worker-options --quiet main.ts", + "output": "1\n" + }, + "denied": { + "args": "run -A --unstable-worker-options --quiet main_denied.ts", + "output": "denied.out", + "exitCode": 1 + } + } +} diff --git a/tests/specs/permission/allow_import_worker/denied.out b/tests/specs/permission/allow_import_worker/denied.out new file mode 100644 index 000000000..6e4dcaee0 --- /dev/null +++ b/tests/specs/permission/allow_import_worker/denied.out @@ -0,0 +1,7 @@ +error: Uncaught (in worker "") (in promise) TypeError: JSR package manifest for '@std/assert' failed to load. Requires import access to "127.0.0.1:4250", run again with the --allow-import flag +await import(specifier); +^ + at async file:///[WILDLINE] +error: Uncaught (in promise) Error: Unhandled error in child worker. + at [WILDLINE] + at [WILDLINE]
\ No newline at end of file diff --git a/tests/specs/permission/allow_import_worker/main.ts b/tests/specs/permission/allow_import_worker/main.ts new file mode 100644 index 000000000..af65c4065 --- /dev/null +++ b/tests/specs/permission/allow_import_worker/main.ts @@ -0,0 +1,8 @@ +new Worker(import.meta.resolve("./worker.ts"), { + type: "module", + deno: { + permissions: { + import: ["127.0.0.1:4250"], + }, + }, +}); diff --git a/tests/specs/permission/allow_import_worker/main_denied.ts b/tests/specs/permission/allow_import_worker/main_denied.ts new file mode 100644 index 000000000..e0d5a1d45 --- /dev/null +++ b/tests/specs/permission/allow_import_worker/main_denied.ts @@ -0,0 +1,8 @@ +new Worker(import.meta.resolve("./worker.ts"), { + type: "module", + deno: { + permissions: { + import: [], + }, + }, +}); diff --git a/tests/specs/permission/allow_import_worker/worker.ts b/tests/specs/permission/allow_import_worker/worker.ts new file mode 100644 index 000000000..fd5757ba8 --- /dev/null +++ b/tests/specs/permission/allow_import_worker/worker.ts @@ -0,0 +1,4 @@ +const specifier = "jsr:@std/assert/assert"; +await import(specifier); +console.log(1); +close(); |