diff options
author | David Sherret <dsherret@users.noreply.github.com> | 2024-09-30 09:19:24 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-09-30 09:19:24 -0400 |
commit | c8f692057b256dac57342867b7606a74309449fc (patch) | |
tree | 7013cefaab540a35cc25ba0c6087655b420a2425 /cli/ops/testing.rs | |
parent | efb413bdaa0f5be6d9082d397aae1e20a258c85f (diff) |
refactor: bury descriptor parsing in PermissionsContainer (#25936)
Closes https://github.com/denoland/deno/issues/25634
Diffstat (limited to 'cli/ops/testing.rs')
-rw-r--r-- | cli/ops/testing.rs | 18 |
1 files changed, 1 insertions, 17 deletions
diff --git a/cli/ops/testing.rs b/cli/ops/testing.rs index 6a8d31006..c3f469656 100644 --- a/cli/ops/testing.rs +++ b/cli/ops/testing.rs @@ -16,13 +16,10 @@ use deno_core::op2; use deno_core::v8; use deno_core::ModuleSpecifier; use deno_core::OpState; -use deno_runtime::deno_permissions::create_child_permissions; use deno_runtime::deno_permissions::ChildPermissionsArg; -use deno_runtime::deno_permissions::PermissionDescriptorParser; use deno_runtime::deno_permissions::PermissionsContainer; use std::sync::atomic::AtomicUsize; use std::sync::atomic::Ordering; -use std::sync::Arc; use uuid::Uuid; deno_core::extension!(deno_test, @@ -56,19 +53,8 @@ pub fn op_pledge_test_permissions( #[serde] args: ChildPermissionsArg, ) -> Result<Uuid, AnyError> { let token = Uuid::new_v4(); - let permission_desc_parser = state - .borrow::<Arc<dyn PermissionDescriptorParser>>() - .clone(); let parent_permissions = state.borrow_mut::<PermissionsContainer>(); - let worker_permissions = { - let mut parent_permissions = parent_permissions.inner.lock(); - let perms = create_child_permissions( - permission_desc_parser.as_ref(), - &mut parent_permissions, - args, - )?; - PermissionsContainer::new(permission_desc_parser, perms) - }; + let worker_permissions = parent_permissions.create_child_permissions(args)?; let parent_permissions = parent_permissions.clone(); if state.try_take::<PermissionsHolder>().is_some() { @@ -77,7 +63,6 @@ pub fn op_pledge_test_permissions( state.put::<PermissionsHolder>(PermissionsHolder(token, parent_permissions)); // NOTE: This call overrides current permission set for the worker - state.put(worker_permissions.inner.clone()); state.put::<PermissionsContainer>(worker_permissions); Ok(token) @@ -94,7 +79,6 @@ pub fn op_restore_test_permissions( } let permissions = permissions_holder.1; - state.put(permissions.inner.clone()); state.put::<PermissionsContainer>(permissions); Ok(()) } else { |