diff --git a/src/cli/sonarr/list_command_handler.rs b/src/cli/sonarr/list_command_handler.rs index ba85fae..c491b26 100644 --- a/src/cli/sonarr/list_command_handler.rs +++ b/src/cli/sonarr/list_command_handler.rs @@ -80,6 +80,8 @@ pub enum SonarrListCommand { Tags, #[command(about = "List all Sonarr tasks")] Tasks, + #[command(about = "List all Sonarr updates")] + Updates, } impl From for Command { @@ -224,6 +226,13 @@ impl<'a, 'b> CliCommandHandler<'a, 'b, SonarrListCommand> for SonarrListCommandH .await?; serde_json::to_string_pretty(&resp)? } + SonarrListCommand::Updates => { + let resp = self + .network + .handle_network_event(SonarrEvent::GetUpdates.into()) + .await?; + serde_json::to_string_pretty(&resp)? + } }; Ok(result) diff --git a/src/cli/sonarr/list_command_handler_tests.rs b/src/cli/sonarr/list_command_handler_tests.rs index 21ac81d..886750e 100644 --- a/src/cli/sonarr/list_command_handler_tests.rs +++ b/src/cli/sonarr/list_command_handler_tests.rs @@ -34,7 +34,8 @@ mod tests { "queued-events", "root-folders", "tags", - "tasks" + "tasks", + "updates" )] subcommand: &str, ) { @@ -208,6 +209,7 @@ mod tests { #[case(SonarrListCommand::Series, SonarrEvent::ListSeries)] #[case(SonarrListCommand::Tags, SonarrEvent::GetTags)] #[case(SonarrListCommand::Tasks, SonarrEvent::GetTasks)] + #[case(SonarrListCommand::Updates, SonarrEvent::GetUpdates)] #[tokio::test] async fn test_handle_list_command( #[case] list_command: SonarrListCommand,