(
events: &broadcast::Sender<WatchSandboxesEvent>,
previous: &HashMap<String, DriverSandbox>,
current: &HashMap<String, DriverSandbox>,
)
| 2902 | } |
| 2903 | |
| 2904 | fn emit_snapshot_diff( |
| 2905 | events: &broadcast::Sender<WatchSandboxesEvent>, |
| 2906 | previous: &HashMap<String, DriverSandbox>, |
| 2907 | current: &HashMap<String, DriverSandbox>, |
| 2908 | ) { |
| 2909 | for (sandbox_id, sandbox) in current { |
| 2910 | if previous.get(sandbox_id) == Some(sandbox) { |
| 2911 | continue; |
| 2912 | } |
| 2913 | let _ = events.send(WatchSandboxesEvent { |
| 2914 | payload: Some(watch_sandboxes_event::Payload::Sandbox( |
| 2915 | WatchSandboxesSandboxEvent { |
| 2916 | sandbox: Some(sandbox.clone()), |
| 2917 | }, |
| 2918 | )), |
| 2919 | }); |
| 2920 | } |
| 2921 | |
| 2922 | for sandbox_id in previous.keys() { |
| 2923 | if current.contains_key(sandbox_id) { |
| 2924 | continue; |
| 2925 | } |
| 2926 | let _ = events.send(WatchSandboxesEvent { |
| 2927 | payload: Some(watch_sandboxes_event::Payload::Deleted( |
| 2928 | WatchSandboxesDeletedEvent { |
| 2929 | sandbox_id: sandbox_id.clone(), |
| 2930 | }, |
| 2931 | )), |
| 2932 | }); |
| 2933 | } |
| 2934 | } |
| 2935 | |
| 2936 | fn label_filters(values: impl IntoIterator<Item = String>) -> HashMap<String, Vec<String>> { |
| 2937 | HashMap::from([("label".to_string(), values.into_iter().collect())]) |
no test coverage detected