Added the full Radarr CLI so users can programmatically access all the same management features as in the TUI

This commit is contained in:
2024-10-29 18:47:40 -06:00
parent 217d3242a8
commit 1f8d72c939
65 changed files with 9401 additions and 1370 deletions
@@ -115,7 +115,8 @@ impl<'a, 'b> KeyEventHandler<'a, 'b, ActiveRadarrBlock> for RootFoldersHandler<'
match self.active_radarr_block {
ActiveRadarrBlock::DeleteRootFolderPrompt => {
if self.app.data.radarr_data.prompt_confirm {
self.app.data.radarr_data.prompt_confirm_action = Some(RadarrEvent::DeleteRootFolder);
self.app.data.radarr_data.prompt_confirm_action =
Some(RadarrEvent::DeleteRootFolder(None));
}
self.app.pop_navigation_stack();
@@ -131,7 +132,7 @@ impl<'a, 'b> KeyEventHandler<'a, 'b, ActiveRadarrBlock> for RootFoldersHandler<'
.text
.is_empty() =>
{
self.app.data.radarr_data.prompt_confirm_action = Some(RadarrEvent::AddRootFolder);
self.app.data.radarr_data.prompt_confirm_action = Some(RadarrEvent::AddRootFolder(None));
self.app.data.radarr_data.prompt_confirm = true;
self.app.should_ignore_quit_key = false;
self.app.pop_navigation_stack();
@@ -59,6 +59,8 @@ mod tests {
}
mod test_handle_home_end {
use std::sync::atomic::Ordering;
use pretty_assertions::assert_eq;
use crate::models::radarr_models::RootFolder;
@@ -132,14 +134,14 @@ mod tests {
.handle();
assert_eq!(
*app
app
.data
.radarr_data
.edit_root_folder
.as_ref()
.unwrap()
.offset
.borrow(),
.load(Ordering::SeqCst),
4
);
@@ -152,14 +154,14 @@ mod tests {
.handle();
assert_eq!(
*app
app
.data
.radarr_data
.edit_root_folder
.as_ref()
.unwrap()
.offset
.borrow(),
.load(Ordering::SeqCst),
0
);
}
@@ -222,6 +224,8 @@ mod tests {
}
mod test_handle_left_right_action {
use std::sync::atomic::Ordering;
use pretty_assertions::assert_eq;
use rstest::rstest;
@@ -313,14 +317,14 @@ mod tests {
.handle();
assert_eq!(
*app
app
.data
.radarr_data
.edit_root_folder
.as_ref()
.unwrap()
.offset
.borrow(),
.load(Ordering::SeqCst),
1
);
@@ -333,14 +337,14 @@ mod tests {
.handle();
assert_eq!(
*app
app
.data
.radarr_data
.edit_root_folder
.as_ref()
.unwrap()
.offset
.borrow(),
.load(Ordering::SeqCst),
0
);
}
@@ -381,7 +385,7 @@ mod tests {
assert!(!app.should_ignore_quit_key);
assert_eq!(
app.data.radarr_data.prompt_confirm_action,
Some(RadarrEvent::AddRootFolder)
Some(RadarrEvent::AddRootFolder(None))
);
assert_eq!(
app.get_current_route(),
@@ -438,7 +442,7 @@ mod tests {
assert!(app.data.radarr_data.prompt_confirm);
assert_eq!(
app.data.radarr_data.prompt_confirm_action,
Some(RadarrEvent::DeleteRootFolder)
Some(RadarrEvent::DeleteRootFolder(None))
);
assert_eq!(
app.get_current_route(),