(
&self,
request: Request<DeleteSandboxRequest>,
)
| 275 | } |
| 276 | |
| 277 | async fn delete_sandbox( |
| 278 | &self, |
| 279 | request: Request<DeleteSandboxRequest>, |
| 280 | ) -> Result<Response<DeleteSandboxResponse>, Status> { |
| 281 | let request = request.into_inner(); |
| 282 | let deleted = self.with_state(|state| { |
| 283 | state.calls.push(FakeComputeDriverCall::DeleteSandbox { |
| 284 | sandbox_id: request.sandbox_id.clone(), |
| 285 | sandbox_name: request.sandbox_name.clone(), |
| 286 | }); |
| 287 | if request.sandbox_id.is_empty() { |
| 288 | let Some(id) = state |
| 289 | .sandboxes |
| 290 | .iter() |
| 291 | .find(|(_, sandbox)| sandbox.name == request.sandbox_name) |
| 292 | .map(|(id, _)| id.clone()) |
| 293 | else { |
| 294 | return false; |
| 295 | }; |
| 296 | state.sandboxes.remove(&id).is_some() |
| 297 | } else { |
| 298 | state.sandboxes.remove(&request.sandbox_id).is_some() |
| 299 | } |
| 300 | }); |
| 301 | Ok(Response::new(DeleteSandboxResponse { deleted })) |
| 302 | } |
| 303 | |
| 304 | async fn watch_sandboxes( |
| 305 | &self, |
nothing calls this directly
no test coverage detected