refactor: Updated all handler tests to use purpose built assertions to improve readability and maintainability

This commit is contained in:
2025-12-09 14:28:47 -07:00
parent d47dadeb88
commit d4bea91186
38 changed files with 801 additions and 751 deletions
@@ -7,12 +7,12 @@ mod tests {
use rstest::rstest;
use strum::IntoEnumIterator;
use crate::app::key_binding::DEFAULT_KEYBINDINGS;
use crate::app::App;
use crate::app::key_binding::DEFAULT_KEYBINDINGS;
use crate::assert_navigation_pushed;
use crate::event::Key;
use crate::handlers::radarr_handlers::blocklist::{blocklist_sorting_options, BlocklistHandler};
use crate::handlers::KeyEventHandler;
use crate::handlers::radarr_handlers::blocklist::{BlocklistHandler, blocklist_sorting_options};
use crate::models::radarr_models::{BlocklistItem, BlocklistItemMovie};
use crate::models::servarr_data::radarr::radarr_data::{ActiveRadarrBlock, BLOCKLIST_BLOCKS};
use crate::models::servarr_models::{Language, Quality, QualityWrapper};
@@ -198,7 +198,7 @@ mod tests {
BlocklistHandler::new(SUBMIT_KEY, &mut app, prompt_block, None).handle();
assert!(!app.data.radarr_data.prompt_confirm);
assert_eq!(app.data.radarr_data.prompt_confirm_action, None);
assert_none!(app.data.radarr_data.prompt_confirm_action);
assert_navigation_popped!(app, ActiveRadarrBlock::Blocklist.into());
}
}
@@ -4,12 +4,12 @@ mod tests {
use rstest::rstest;
use strum::IntoEnumIterator;
use crate::app::key_binding::DEFAULT_KEYBINDINGS;
use crate::app::App;
use crate::app::key_binding::DEFAULT_KEYBINDINGS;
use crate::assert_modal_absent;
use crate::event::Key;
use crate::handlers::radarr_handlers::collections::collection_details_handler::CollectionDetailsHandler;
use crate::handlers::KeyEventHandler;
use crate::handlers::radarr_handlers::collections::collection_details_handler::CollectionDetailsHandler;
use crate::models::radarr_models::CollectionMovie;
use crate::models::servarr_data::radarr::radarr_data::{
ActiveRadarrBlock, COLLECTION_DETAILS_BLOCKS,
@@ -17,9 +17,9 @@ mod tests {
mod test_handle_submit {
use crate::assert_navigation_pushed;
use crate::models::BlockSelectionState;
use crate::models::radarr_models::Movie;
use crate::models::servarr_data::radarr::radarr_data::ADD_MOVIE_SELECTION_BLOCKS;
use crate::models::BlockSelectionState;
use bimap::BiMap;
use pretty_assertions::assert_eq;
@@ -60,37 +60,43 @@ mod tests {
)
.into()
);
assert!(!app
.data
.radarr_data
.add_movie_modal
.as_ref()
.unwrap()
.monitor_list
.items
.is_empty());
assert!(
!app
.data
.radarr_data
.add_movie_modal
.as_ref()
.unwrap()
.monitor_list
.items
.is_empty()
);
assert_eq!(
app.data.radarr_data.selected_block.get_active_block(),
ActiveRadarrBlock::AddMovieSelectRootFolder
);
assert!(!app
.data
.radarr_data
.add_movie_modal
.as_ref()
.unwrap()
.minimum_availability_list
.items
.is_empty());
assert!(!app
.data
.radarr_data
.add_movie_modal
.as_ref()
.unwrap()
.quality_profile_list
.items
.is_empty());
assert!(
!app
.data
.radarr_data
.add_movie_modal
.as_ref()
.unwrap()
.minimum_availability_list
.items
.is_empty()
);
assert!(
!app
.data
.radarr_data
.add_movie_modal
.as_ref()
.unwrap()
.quality_profile_list
.items
.is_empty()
);
assert_str_eq!(
app
.data
@@ -184,7 +190,7 @@ mod tests {
.handle();
assert_navigation_popped!(app, ActiveRadarrBlock::Collections.into());
assert!(app.data.radarr_data.collection_movies.items.is_empty());
assert_is_empty!(app.data.radarr_data.collection_movies.items);
}
#[test]
@@ -213,7 +219,7 @@ mod tests {
use crate::models::radarr_models::{Collection, MinimumAvailability};
use crate::models::servarr_data::radarr::radarr_data::radarr_test_utils::utils::create_test_radarr_data;
use crate::models::servarr_data::radarr::radarr_data::{
RadarrData, EDIT_COLLECTION_SELECTION_BLOCKS,
EDIT_COLLECTION_SELECTION_BLOCKS, RadarrData,
};
use crate::test_edit_collection_key;
@@ -7,18 +7,18 @@ mod tests {
use rstest::rstest;
use strum::IntoEnumIterator;
use crate::app::key_binding::DEFAULT_KEYBINDINGS;
use crate::app::App;
use crate::app::key_binding::DEFAULT_KEYBINDINGS;
use crate::assert_modal_absent;
use crate::assert_navigation_pushed;
use crate::event::Key;
use crate::handlers::radarr_handlers::collections::{
collections_sorting_options, CollectionsHandler,
};
use crate::handlers::KeyEventHandler;
use crate::handlers::radarr_handlers::collections::{
CollectionsHandler, collections_sorting_options,
};
use crate::models::radarr_models::{Collection, CollectionMovie};
use crate::models::servarr_data::radarr::radarr_data::{
ActiveRadarrBlock, COLLECTIONS_BLOCKS, COLLECTION_DETAILS_BLOCKS, EDIT_COLLECTION_BLOCKS,
ActiveRadarrBlock, COLLECTION_DETAILS_BLOCKS, COLLECTIONS_BLOCKS, EDIT_COLLECTION_BLOCKS,
};
use crate::test_handler_delegation;
@@ -189,7 +189,7 @@ mod tests {
.handle();
assert!(!app.data.radarr_data.prompt_confirm);
assert_eq!(app.data.radarr_data.prompt_confirm_action, None);
assert_none!(app.data.radarr_data.prompt_confirm_action);
assert_navigation_popped!(app, ActiveRadarrBlock::Collections.into());
}
}
@@ -233,7 +233,7 @@ mod tests {
CollectionsHandler::new(ESC_KEY, &mut app, ActiveRadarrBlock::Collections, None).handle();
assert_navigation_popped!(app, ActiveRadarrBlock::Collections.into());
assert!(app.error.text.is_empty());
assert_is_empty!(app.error.text);
}
}
@@ -245,7 +245,7 @@ mod tests {
use crate::models::radarr_models::MinimumAvailability;
use crate::models::servarr_data::radarr::radarr_data::radarr_test_utils::utils::create_test_radarr_data;
use crate::models::servarr_data::radarr::radarr_data::{
RadarrData, EDIT_COLLECTION_SELECTION_BLOCKS,
EDIT_COLLECTION_SELECTION_BLOCKS, RadarrData,
};
use crate::network::radarr_network::RadarrEvent;
use crate::{assert_navigation_popped, test_edit_collection_key};
@@ -5,14 +5,14 @@ mod tests {
use rstest::rstest;
use strum::IntoEnumIterator;
use crate::app::key_binding::DEFAULT_KEYBINDINGS;
use crate::app::App;
use crate::app::key_binding::DEFAULT_KEYBINDINGS;
use crate::assert_modal_absent;
use crate::assert_navigation_pushed;
use crate::event::Key;
use crate::handlers::KeyEventHandler;
use crate::handlers::radarr_handlers::collections::edit_collection_handler::EditCollectionHandler;
use crate::handlers::radarr_handlers::radarr_handler_test_utils::utils::collection;
use crate::handlers::KeyEventHandler;
use crate::models::radarr_models::{Collection, EditCollectionParams, MinimumAvailability};
use crate::models::servarr_data::radarr::modals::EditCollectionModal;
use crate::models::servarr_data::radarr::radarr_data::{
@@ -24,9 +24,9 @@ mod tests {
use rstest::rstest;
use strum::IntoEnumIterator;
use crate::models::BlockSelectionState;
use crate::models::servarr_data::radarr::modals::EditCollectionModal;
use crate::models::servarr_data::radarr::radarr_data::EDIT_COLLECTION_SELECTION_BLOCKS;
use crate::models::BlockSelectionState;
use super::*;
@@ -477,15 +477,17 @@ mod tests {
.handle();
assert!(!app.ignore_special_keys_for_textbox_input);
assert!(!app
.data
.radarr_data
.edit_collection_modal
.as_ref()
.unwrap()
.path
.text
.is_empty());
assert!(
!app
.data
.radarr_data
.edit_collection_modal
.as_ref()
.unwrap()
.path
.text
.is_empty()
);
assert_navigation_popped!(app, ActiveRadarrBlock::EditCollectionPrompt.into());
}
@@ -512,7 +514,7 @@ mod tests {
.handle();
assert_navigation_popped!(app, ActiveRadarrBlock::Collections.into());
assert_eq!(app.data.radarr_data.prompt_confirm_action, None);
assert_none!(app.data.radarr_data.prompt_confirm_action);
}
#[test]
@@ -602,7 +604,7 @@ mod tests {
app.get_current_route(),
ActiveRadarrBlock::EditCollectionPrompt.into()
);
assert_eq!(app.data.radarr_data.prompt_confirm_action, None);
assert_none!(app.data.radarr_data.prompt_confirm_action);
assert!(!app.should_refresh);
}
@@ -627,7 +629,7 @@ mod tests {
.handle();
assert_eq!(app.get_current_route(), current_route);
assert_eq!(
assert_some_eq_x!(
app
.data
.radarr_data
@@ -635,7 +637,7 @@ mod tests {
.as_ref()
.unwrap()
.monitored,
Some(true)
true
);
EditCollectionHandler::new(
@@ -647,7 +649,7 @@ mod tests {
.handle();
assert_eq!(app.get_current_route(), current_route);
assert_eq!(
assert_some_eq_x!(
app
.data
.radarr_data
@@ -655,7 +657,7 @@ mod tests {
.as_ref()
.unwrap()
.monitored,
Some(false)
false
);
}
@@ -685,7 +687,7 @@ mod tests {
.handle();
assert_eq!(app.get_current_route(), current_route);
assert_eq!(
assert_some_eq_x!(
app
.data
.radarr_data
@@ -693,7 +695,7 @@ mod tests {
.as_ref()
.unwrap()
.search_on_add,
Some(true)
true
);
EditCollectionHandler::new(
@@ -705,7 +707,7 @@ mod tests {
.handle();
assert_eq!(app.get_current_route(), current_route);
assert_eq!(
assert_some_eq_x!(
app
.data
.radarr_data
@@ -713,7 +715,7 @@ mod tests {
.as_ref()
.unwrap()
.search_on_add,
Some(false)
false
);
}
@@ -750,7 +752,7 @@ mod tests {
app,
(selected_block, Some(ActiveRadarrBlock::Collections)).into()
);
assert_eq!(app.data.radarr_data.prompt_confirm_action, None);
assert_none!(app.data.radarr_data.prompt_confirm_action);
if selected_block == ActiveRadarrBlock::EditCollectionRootFolderPathInput {
assert!(app.ignore_special_keys_for_textbox_input);
@@ -865,10 +867,10 @@ mod tests {
use crate::{
assert_navigation_popped,
models::{
BlockSelectionState,
servarr_data::radarr::{
modals::EditCollectionModal, radarr_data::EDIT_COLLECTION_SELECTION_BLOCKS,
},
BlockSelectionState,
},
network::radarr_network::RadarrEvent,
};
@@ -4,13 +4,13 @@ mod tests {
use rstest::rstest;
use strum::IntoEnumIterator;
use crate::app::key_binding::DEFAULT_KEYBINDINGS;
use crate::app::App;
use crate::app::key_binding::DEFAULT_KEYBINDINGS;
use crate::assert_navigation_pushed;
use crate::event::Key;
use crate::handlers::KeyEventHandler;
use crate::handlers::radarr_handlers::downloads::DownloadsHandler;
use crate::handlers::radarr_handlers::radarr_handler_test_utils::utils::download_record;
use crate::handlers::KeyEventHandler;
use crate::models::radarr_models::DownloadRecord;
use crate::models::servarr_data::radarr::radarr_data::{ActiveRadarrBlock, DOWNLOADS_BLOCKS};
@@ -187,7 +187,7 @@ mod tests {
DownloadsHandler::new(SUBMIT_KEY, &mut app, prompt_block, None).handle();
assert!(!app.data.radarr_data.prompt_confirm);
assert_eq!(app.data.radarr_data.prompt_confirm_action, None);
assert_none!(app.data.radarr_data.prompt_confirm_action);
assert_navigation_popped!(app, base_route.into());
}
}
@@ -229,7 +229,7 @@ mod tests {
DownloadsHandler::new(ESC_KEY, &mut app, ActiveRadarrBlock::Downloads, None).handle();
assert_navigation_popped!(app, ActiveRadarrBlock::Downloads.into());
assert!(app.error.text.is_empty());
assert_is_empty!(app.error.text);
}
}
@@ -1,14 +1,14 @@
#[cfg(test)]
mod tests {
use crate::app::key_binding::DEFAULT_KEYBINDINGS;
use crate::app::App;
use crate::app::key_binding::DEFAULT_KEYBINDINGS;
use crate::assert_modal_absent;
use crate::assert_modal_present;
use crate::assert_navigation_pushed;
use crate::event::Key;
use crate::handlers::KeyEventHandler;
use crate::handlers::radarr_handlers::indexers::edit_indexer_handler::EditIndexerHandler;
use crate::handlers::radarr_handlers::radarr_handler_test_utils::utils::indexer;
use crate::handlers::KeyEventHandler;
use crate::models::servarr_data::modals::EditIndexerModal;
use crate::models::servarr_data::radarr::radarr_data::{ActiveRadarrBlock, EDIT_INDEXER_BLOCKS};
use crate::models::servarr_models::EditIndexerParams;
@@ -21,9 +21,9 @@ mod tests {
use pretty_assertions::assert_eq;
use rstest::rstest;
use crate::models::BlockSelectionState;
use crate::models::servarr_data::modals::EditIndexerModal;
use crate::models::servarr_data::radarr::radarr_data::EDIT_INDEXER_TORRENT_SELECTION_BLOCKS;
use crate::models::BlockSelectionState;
use super::*;
@@ -422,11 +422,11 @@ mod tests {
use std::sync::atomic::Ordering;
use crate::app::App;
use crate::models::BlockSelectionState;
use crate::models::servarr_data::modals::EditIndexerModal;
use crate::models::servarr_data::radarr::radarr_data::{
EDIT_INDEXER_NZB_SELECTION_BLOCKS, EDIT_INDEXER_TORRENT_SELECTION_BLOCKS,
};
use crate::models::BlockSelectionState;
use pretty_assertions::assert_eq;
use rstest::rstest;
@@ -856,7 +856,7 @@ mod tests {
use crate::assert_navigation_popped;
use crate::models::servarr_data::modals::EditIndexerModal;
use crate::models::{
servarr_data::radarr::radarr_data::EDIT_INDEXER_TORRENT_SELECTION_BLOCKS, BlockSelectionState,
BlockSelectionState, servarr_data::radarr::radarr_data::EDIT_INDEXER_TORRENT_SELECTION_BLOCKS,
};
use crate::network::radarr_network::RadarrEvent;
@@ -887,9 +887,9 @@ mod tests {
.handle();
assert_navigation_popped!(app, ActiveRadarrBlock::Indexers.into());
assert_eq!(app.data.radarr_data.prompt_confirm_action, None);
assert_none!(app.data.radarr_data.prompt_confirm_action);
assert!(!app.should_refresh);
assert_eq!(app.data.radarr_data.edit_indexer_modal, None);
assert_none!(app.data.radarr_data.edit_indexer_modal);
}
#[test]
@@ -972,7 +972,7 @@ mod tests {
);
assert_modal_present!(app.data.radarr_data.edit_indexer_modal);
assert!(!app.should_refresh);
assert_eq!(app.data.radarr_data.prompt_confirm_action, None);
assert_none!(app.data.radarr_data.prompt_confirm_action);
}
#[rstest]
@@ -1054,14 +1054,16 @@ mod tests {
app.get_current_route(),
ActiveRadarrBlock::EditIndexerPrompt.into()
);
assert!(app
.data
.radarr_data
.edit_indexer_modal
.as_ref()
.unwrap()
.enable_rss
.unwrap());
assert!(
app
.data
.radarr_data
.edit_indexer_modal
.as_ref()
.unwrap()
.enable_rss
.unwrap()
);
EditIndexerHandler::new(
SUBMIT_KEY,
@@ -1075,14 +1077,16 @@ mod tests {
app.get_current_route(),
ActiveRadarrBlock::EditIndexerPrompt.into()
);
assert!(!app
.data
.radarr_data
.edit_indexer_modal
.as_ref()
.unwrap()
.enable_rss
.unwrap());
assert!(
!app
.data
.radarr_data
.edit_indexer_modal
.as_ref()
.unwrap()
.enable_rss
.unwrap()
);
}
#[test]
@@ -1107,14 +1111,16 @@ mod tests {
app.get_current_route(),
ActiveRadarrBlock::EditIndexerPrompt.into()
);
assert!(app
.data
.radarr_data
.edit_indexer_modal
.as_ref()
.unwrap()
.enable_automatic_search
.unwrap());
assert!(
app
.data
.radarr_data
.edit_indexer_modal
.as_ref()
.unwrap()
.enable_automatic_search
.unwrap()
);
EditIndexerHandler::new(
SUBMIT_KEY,
@@ -1128,14 +1134,16 @@ mod tests {
app.get_current_route(),
ActiveRadarrBlock::EditIndexerPrompt.into()
);
assert!(!app
.data
.radarr_data
.edit_indexer_modal
.as_ref()
.unwrap()
.enable_automatic_search
.unwrap());
assert!(
!app
.data
.radarr_data
.edit_indexer_modal
.as_ref()
.unwrap()
.enable_automatic_search
.unwrap()
);
}
#[test]
@@ -1160,14 +1168,16 @@ mod tests {
app.get_current_route(),
ActiveRadarrBlock::EditIndexerPrompt.into()
);
assert!(app
.data
.radarr_data
.edit_indexer_modal
.as_ref()
.unwrap()
.enable_interactive_search
.unwrap());
assert!(
app
.data
.radarr_data
.edit_indexer_modal
.as_ref()
.unwrap()
.enable_interactive_search
.unwrap()
);
EditIndexerHandler::new(
SUBMIT_KEY,
@@ -1181,14 +1191,16 @@ mod tests {
app.get_current_route(),
ActiveRadarrBlock::EditIndexerPrompt.into()
);
assert!(!app
.data
.radarr_data
.edit_indexer_modal
.as_ref()
.unwrap()
.enable_interactive_search
.unwrap());
assert!(
!app
.data
.radarr_data
.edit_indexer_modal
.as_ref()
.unwrap()
.enable_interactive_search
.unwrap()
);
}
#[test]
@@ -1212,15 +1224,17 @@ mod tests {
.handle();
assert!(!app.ignore_special_keys_for_textbox_input);
assert!(!app
.data
.radarr_data
.edit_indexer_modal
.as_ref()
.unwrap()
.name
.text
.is_empty());
assert!(
!app
.data
.radarr_data
.edit_indexer_modal
.as_ref()
.unwrap()
.name
.text
.is_empty()
);
assert_navigation_popped!(app, ActiveRadarrBlock::EditIndexerPrompt.into());
}
@@ -1245,15 +1259,17 @@ mod tests {
.handle();
assert!(!app.ignore_special_keys_for_textbox_input);
assert!(!app
.data
.radarr_data
.edit_indexer_modal
.as_ref()
.unwrap()
.url
.text
.is_empty());
assert!(
!app
.data
.radarr_data
.edit_indexer_modal
.as_ref()
.unwrap()
.url
.text
.is_empty()
);
assert_navigation_popped!(app, ActiveRadarrBlock::EditIndexerPrompt.into());
}
@@ -1278,15 +1294,17 @@ mod tests {
.handle();
assert!(!app.ignore_special_keys_for_textbox_input);
assert!(!app
.data
.radarr_data
.edit_indexer_modal
.as_ref()
.unwrap()
.api_key
.text
.is_empty());
assert!(
!app
.data
.radarr_data
.edit_indexer_modal
.as_ref()
.unwrap()
.api_key
.text
.is_empty()
);
assert_navigation_popped!(app, ActiveRadarrBlock::EditIndexerPrompt.into());
}
@@ -1311,15 +1329,17 @@ mod tests {
.handle();
assert!(!app.ignore_special_keys_for_textbox_input);
assert!(!app
.data
.radarr_data
.edit_indexer_modal
.as_ref()
.unwrap()
.seed_ratio
.text
.is_empty());
assert!(
!app
.data
.radarr_data
.edit_indexer_modal
.as_ref()
.unwrap()
.seed_ratio
.text
.is_empty()
);
assert_navigation_popped!(app, ActiveRadarrBlock::EditIndexerPrompt.into());
}
@@ -1344,15 +1364,17 @@ mod tests {
.handle();
assert!(!app.ignore_special_keys_for_textbox_input);
assert!(!app
.data
.radarr_data
.edit_indexer_modal
.as_ref()
.unwrap()
.tags
.text
.is_empty());
assert!(
!app
.data
.radarr_data
.edit_indexer_modal
.as_ref()
.unwrap()
.tags
.text
.is_empty()
);
assert_navigation_popped!(app, ActiveRadarrBlock::EditIndexerPrompt.into());
}
}
@@ -1386,7 +1408,7 @@ mod tests {
assert_navigation_popped!(app, ActiveRadarrBlock::Indexers.into());
assert!(!app.data.radarr_data.prompt_confirm);
assert_eq!(app.data.radarr_data.edit_indexer_modal, None);
assert_none!(app.data.radarr_data.edit_indexer_modal);
}
#[rstest]
@@ -1422,9 +1444,9 @@ mod tests {
use super::*;
use crate::app::App;
use crate::assert_navigation_popped;
use crate::models::BlockSelectionState;
use crate::models::servarr_data::modals::EditIndexerModal;
use crate::models::servarr_data::radarr::radarr_data::EDIT_INDEXER_TORRENT_SELECTION_BLOCKS;
use crate::models::BlockSelectionState;
use crate::network::radarr_network::RadarrEvent;
use pretty_assertions::{assert_eq, assert_str_eq};
@@ -4,14 +4,14 @@ mod tests {
use rstest::rstest;
use strum::IntoEnumIterator;
use crate::app::key_binding::DEFAULT_KEYBINDINGS;
use crate::app::App;
use crate::app::key_binding::DEFAULT_KEYBINDINGS;
use crate::assert_modal_absent;
use crate::assert_navigation_pushed;
use crate::event::Key;
use crate::handlers::KeyEventHandler;
use crate::handlers::radarr_handlers::indexers::edit_indexer_settings_handler::IndexerSettingsHandler;
use crate::handlers::radarr_handlers::radarr_handler_test_utils::utils::indexer_settings;
use crate::handlers::KeyEventHandler;
use crate::models::radarr_models::IndexerSettings;
use crate::models::servarr_data::radarr::radarr_data::{
ActiveRadarrBlock, INDEXER_SETTINGS_BLOCKS,
@@ -21,9 +21,9 @@ mod tests {
use pretty_assertions::assert_eq;
use rstest::rstest;
use crate::models::BlockSelectionState;
use crate::models::radarr_models::IndexerSettings;
use crate::models::servarr_data::radarr::radarr_data::INDEXER_SETTINGS_SELECTION_BLOCKS;
use crate::models::BlockSelectionState;
use super::*;
@@ -269,9 +269,9 @@ mod tests {
mod test_handle_left_right_action {
use std::sync::atomic::Ordering;
use crate::models::BlockSelectionState;
use crate::models::radarr_models::IndexerSettings;
use crate::models::servarr_data::radarr::radarr_data::INDEXER_SETTINGS_SELECTION_BLOCKS;
use crate::models::BlockSelectionState;
use pretty_assertions::assert_eq;
use rstest::rstest;
@@ -428,8 +428,8 @@ mod tests {
use crate::{
assert_navigation_popped,
models::{
radarr_models::IndexerSettings,
servarr_data::radarr::radarr_data::INDEXER_SETTINGS_SELECTION_BLOCKS, BlockSelectionState,
BlockSelectionState, radarr_models::IndexerSettings,
servarr_data::radarr::radarr_data::INDEXER_SETTINGS_SELECTION_BLOCKS,
},
network::radarr_network::RadarrEvent,
};
@@ -461,9 +461,9 @@ mod tests {
.handle();
assert_navigation_popped!(app, ActiveRadarrBlock::Indexers.into());
assert_eq!(app.data.radarr_data.prompt_confirm_action, None);
assert_none!(app.data.radarr_data.prompt_confirm_action);
assert!(!app.should_refresh);
assert_eq!(app.data.radarr_data.indexer_settings, None);
assert_none!(app.data.radarr_data.indexer_settings);
}
#[test]
@@ -739,15 +739,17 @@ mod tests {
.handle();
assert!(!app.ignore_special_keys_for_textbox_input);
assert!(!app
.data
.radarr_data
.indexer_settings
.as_ref()
.unwrap()
.whitelisted_hardcoded_subs
.text
.is_empty());
assert!(
!app
.data
.radarr_data
.indexer_settings
.as_ref()
.unwrap()
.whitelisted_hardcoded_subs
.text
.is_empty()
);
assert_navigation_popped!(app, ActiveRadarrBlock::AllIndexerSettingsPrompt.into());
}
@@ -774,7 +776,6 @@ mod tests {
}
mod test_handle_esc {
use pretty_assertions::assert_eq;
use rstest::rstest;
use crate::models::radarr_models::IndexerSettings;
@@ -802,7 +803,7 @@ mod tests {
assert_navigation_popped!(app, ActiveRadarrBlock::Indexers.into());
assert!(!app.data.radarr_data.prompt_confirm);
assert_eq!(app.data.radarr_data.indexer_settings, None);
assert_none!(app.data.radarr_data.indexer_settings);
}
#[test]
@@ -825,9 +826,9 @@ mod tests {
assert_navigation_popped!(app, ActiveRadarrBlock::Indexers.into());
assert!(!app.ignore_special_keys_for_textbox_input);
assert_eq!(
app.data.radarr_data.indexer_settings,
Some(IndexerSettings::default())
assert_some_eq_x!(
&app.data.radarr_data.indexer_settings,
&IndexerSettings::default()
);
}
@@ -851,21 +852,21 @@ mod tests {
IndexerSettingsHandler::new(ESC_KEY, &mut app, active_radarr_block, None).handle();
assert_navigation_popped!(app, ActiveRadarrBlock::Indexers.into());
assert_eq!(
app.data.radarr_data.indexer_settings,
Some(IndexerSettings::default())
assert_some_eq_x!(
&app.data.radarr_data.indexer_settings,
&IndexerSettings::default()
);
}
}
mod test_handle_key_char {
use pretty_assertions::{assert_eq, assert_str_eq};
use pretty_assertions::assert_str_eq;
use crate::{
assert_navigation_popped,
models::{
radarr_models::IndexerSettings,
servarr_data::radarr::radarr_data::INDEXER_SETTINGS_SELECTION_BLOCKS, BlockSelectionState,
BlockSelectionState, radarr_models::IndexerSettings,
servarr_data::radarr::radarr_data::INDEXER_SETTINGS_SELECTION_BLOCKS,
},
network::radarr_network::RadarrEvent,
};
@@ -950,9 +951,9 @@ mod tests {
.handle();
assert_navigation_popped!(app, ActiveRadarrBlock::Indexers.into());
assert_eq!(
app.data.radarr_data.prompt_confirm_action,
Some(RadarrEvent::EditAllIndexerSettings(indexer_settings()))
assert_some_eq_x!(
&app.data.radarr_data.prompt_confirm_action,
&RadarrEvent::EditAllIndexerSettings(indexer_settings())
);
assert_modal_absent!(app.data.radarr_data.indexer_settings);
assert!(app.should_refresh);
@@ -4,15 +4,15 @@ mod tests {
use rstest::rstest;
use strum::IntoEnumIterator;
use crate::app::key_binding::DEFAULT_KEYBINDINGS;
use crate::app::App;
use crate::app::key_binding::DEFAULT_KEYBINDINGS;
use crate::assert_navigation_pushed;
use crate::event::Key;
use crate::handlers::KeyEventHandler;
use crate::handlers::radarr_handlers::indexers::IndexersHandler;
use crate::handlers::radarr_handlers::radarr_handler_test_utils::utils::indexer;
use crate::handlers::KeyEventHandler;
use crate::models::servarr_data::radarr::radarr_data::{
ActiveRadarrBlock, EDIT_INDEXER_BLOCKS, INDEXERS_BLOCKS, INDEXER_SETTINGS_BLOCKS,
ActiveRadarrBlock, EDIT_INDEXER_BLOCKS, INDEXER_SETTINGS_BLOCKS, INDEXERS_BLOCKS,
};
use crate::models::servarr_models::Indexer;
use crate::test_handler_delegation;
@@ -125,7 +125,7 @@ mod tests {
use crate::handlers::radarr_handlers::radarr_handler_test_utils::utils::indexer;
use crate::models::servarr_data::modals::EditIndexerModal;
use crate::models::servarr_data::radarr::radarr_data::{
RadarrData, EDIT_INDEXER_NZB_SELECTION_BLOCKS, EDIT_INDEXER_TORRENT_SELECTION_BLOCKS,
EDIT_INDEXER_NZB_SELECTION_BLOCKS, EDIT_INDEXER_TORRENT_SELECTION_BLOCKS, RadarrData,
};
use crate::models::servarr_models::{Indexer, IndexerField};
use crate::network::radarr_network::RadarrEvent;
@@ -192,13 +192,13 @@ mod tests {
IndexersHandler::new(SUBMIT_KEY, &mut app, ActiveRadarrBlock::Indexers, None).handle();
assert_navigation_pushed!(app, ActiveRadarrBlock::EditIndexerPrompt.into());
assert_eq!(
app.data.radarr_data.edit_indexer_modal,
Some((&app.data.radarr_data).into())
assert_some_eq_x!(
&app.data.radarr_data.edit_indexer_modal,
&EditIndexerModal::from(&app.data.radarr_data)
);
assert_eq!(
app.data.radarr_data.edit_indexer_modal,
Some(expected_edit_indexer_modal)
assert_some_eq_x!(
&app.data.radarr_data.edit_indexer_modal,
&expected_edit_indexer_modal
);
if torrent_protocol {
assert_eq!(
@@ -227,7 +227,7 @@ mod tests {
IndexersHandler::new(SUBMIT_KEY, &mut app, ActiveRadarrBlock::Indexers, None).handle();
assert_eq!(app.get_current_route(), ActiveRadarrBlock::Indexers.into());
assert_eq!(app.data.radarr_data.edit_indexer_modal, None);
assert_none!(app.data.radarr_data.edit_indexer_modal);
}
#[test]
@@ -247,9 +247,9 @@ mod tests {
.handle();
assert!(app.data.radarr_data.prompt_confirm);
assert_eq!(
app.data.radarr_data.prompt_confirm_action,
Some(RadarrEvent::DeleteIndexer(1))
assert_some_eq_x!(
&app.data.radarr_data.prompt_confirm_action,
&RadarrEvent::DeleteIndexer(1)
);
assert_navigation_popped!(app, ActiveRadarrBlock::Indexers.into());
}
@@ -274,14 +274,12 @@ mod tests {
.handle();
assert!(!app.data.radarr_data.prompt_confirm);
assert_eq!(app.data.radarr_data.prompt_confirm_action, None);
assert_none!(app.data.radarr_data.prompt_confirm_action);
assert_navigation_popped!(app, ActiveRadarrBlock::Indexers.into());
}
}
mod test_handle_esc {
use pretty_assertions::assert_eq;
use super::*;
use crate::assert_navigation_popped;
@@ -318,7 +316,7 @@ mod tests {
IndexersHandler::new(ESC_KEY, &mut app, ActiveRadarrBlock::TestIndexer, None).handle();
assert_navigation_popped!(app, ActiveRadarrBlock::Indexers.into());
assert_eq!(app.data.radarr_data.indexer_test_errors, None);
assert_none!(app.data.radarr_data.indexer_test_errors);
}
#[rstest]
@@ -332,7 +330,7 @@ mod tests {
IndexersHandler::new(ESC_KEY, &mut app, ActiveRadarrBlock::Indexers, None).handle();
assert_navigation_popped!(app, ActiveRadarrBlock::Indexers.into());
assert!(app.error.text.is_empty());
assert_is_empty!(app.error.text);
}
}
@@ -538,9 +536,9 @@ mod tests {
.handle();
assert!(app.data.radarr_data.prompt_confirm);
assert_eq!(
app.data.radarr_data.prompt_confirm_action,
Some(RadarrEvent::DeleteIndexer(1))
assert_some_eq_x!(
&app.data.radarr_data.prompt_confirm_action,
&RadarrEvent::DeleteIndexer(1)
);
assert_navigation_popped!(app, ActiveRadarrBlock::Indexers.into());
}
@@ -1,9 +1,9 @@
#[cfg(test)]
mod tests {
use crate::app::key_binding::DEFAULT_KEYBINDINGS;
use crate::app::App;
use crate::handlers::radarr_handlers::indexers::test_all_indexers_handler::TestAllIndexersHandler;
use crate::app::key_binding::DEFAULT_KEYBINDINGS;
use crate::handlers::KeyEventHandler;
use crate::handlers::radarr_handlers::indexers::test_all_indexers_handler::TestAllIndexersHandler;
use crate::models::servarr_data::modals::IndexerTestResultModalItem;
use crate::models::servarr_data::radarr::radarr_data::ActiveRadarrBlock;
use crate::models::stateful_table::StatefulTable;
@@ -9,18 +9,18 @@ mod tests {
use rstest::rstest;
use strum::IntoEnumIterator;
use crate::app::key_binding::DEFAULT_KEYBINDINGS;
use crate::app::App;
use crate::app::key_binding::DEFAULT_KEYBINDINGS;
use crate::event::Key;
use crate::handlers::KeyEventHandler;
use crate::handlers::radarr_handlers::library::add_movie_handler::AddMovieHandler;
use crate::handlers::radarr_handlers::radarr_handler_test_utils::utils::add_movie_body;
use crate::handlers::radarr_handlers::radarr_handler_test_utils::utils::collection_movie;
use crate::handlers::KeyEventHandler;
use crate::models::HorizontallyScrollableText;
use crate::models::radarr_models::{AddMovieSearchResult, MinimumAvailability, MovieMonitor};
use crate::models::servarr_data::radarr::modals::AddMovieModal;
use crate::models::servarr_data::radarr::radarr_data::{ActiveRadarrBlock, ADD_MOVIE_BLOCKS};
use crate::models::servarr_data::radarr::radarr_data::{ADD_MOVIE_BLOCKS, ActiveRadarrBlock};
use crate::models::servarr_models::RootFolder;
use crate::models::HorizontallyScrollableText;
use bimap::BiMap;
mod test_handle_scroll_up_and_down {
@@ -28,9 +28,9 @@ mod tests {
use rstest::rstest;
use strum::IntoEnumIterator;
use crate::models::BlockSelectionState;
use crate::models::servarr_data::radarr::modals::AddMovieModal;
use crate::models::servarr_data::radarr::radarr_data::ADD_MOVIE_SELECTION_BLOCKS;
use crate::models::BlockSelectionState;
use crate::simple_stateful_iterable_vec;
use super::*;
@@ -768,11 +768,11 @@ mod tests {
use crate::handlers::radarr_handlers::radarr_handler_test_utils::utils::{
add_movie_body, add_movie_search_result, collection_movie,
};
use crate::models::BlockSelectionState;
use crate::models::radarr_models::Movie;
use crate::models::servarr_data::radarr::modals::AddMovieModal;
use crate::models::servarr_data::radarr::radarr_data::ADD_MOVIE_SELECTION_BLOCKS;
use crate::models::stateful_table::StatefulTable;
use crate::models::BlockSelectionState;
use crate::network::radarr_network::RadarrEvent;
use bimap::BiMap;
use pretty_assertions::{assert_eq, assert_str_eq};
@@ -851,33 +851,39 @@ mod tests {
ActiveRadarrBlock::AddMovieSelectRootFolder
);
assert_modal_present!(app.data.radarr_data.add_movie_modal);
assert!(!app
.data
.radarr_data
.add_movie_modal
.as_ref()
.unwrap()
.monitor_list
.items
.is_empty());
assert!(!app
.data
.radarr_data
.add_movie_modal
.as_ref()
.unwrap()
.minimum_availability_list
.items
.is_empty());
assert!(!app
.data
.radarr_data
.add_movie_modal
.as_ref()
.unwrap()
.quality_profile_list
.items
.is_empty());
assert!(
!app
.data
.radarr_data
.add_movie_modal
.as_ref()
.unwrap()
.monitor_list
.items
.is_empty()
);
assert!(
!app
.data
.radarr_data
.add_movie_modal
.as_ref()
.unwrap()
.minimum_availability_list
.items
.is_empty()
);
assert!(
!app
.data
.radarr_data
.add_movie_modal
.as_ref()
.unwrap()
.quality_profile_list
.items
.is_empty()
);
assert_str_eq!(
app
.data
@@ -979,7 +985,7 @@ mod tests {
.handle();
assert_navigation_popped!(app, ActiveRadarrBlock::Movies.into());
assert_eq!(app.data.radarr_data.prompt_confirm_action, None);
assert_none!(app.data.radarr_data.prompt_confirm_action);
}
#[rstest]
@@ -1053,9 +1059,9 @@ mod tests {
.handle();
assert_navigation_popped!(app, ActiveRadarrBlock::Movies.into());
assert_eq!(
app.data.radarr_data.prompt_confirm_action,
Some(RadarrEvent::AddMovie(add_movie_body()))
assert_some_eq_x!(
&app.data.radarr_data.prompt_confirm_action,
&RadarrEvent::AddMovie(add_movie_body())
);
assert_modal_absent!(app.data.radarr_data.add_movie_modal);
}
@@ -1093,7 +1099,7 @@ mod tests {
app,
(selected_block, Some(ActiveRadarrBlock::CollectionDetails)).into()
);
assert_eq!(app.data.radarr_data.prompt_confirm_action, None);
assert_none!(app.data.radarr_data.prompt_confirm_action);
if selected_block == ActiveRadarrBlock::AddMovieTagsInput {
assert!(app.ignore_special_keys_for_textbox_input);
@@ -1132,7 +1138,6 @@ mod tests {
}
mod test_handle_esc {
use pretty_assertions::assert_eq;
use rstest::rstest;
use crate::models::servarr_data::radarr::modals::AddMovieModal;
@@ -1162,7 +1167,7 @@ mod tests {
assert!(!app.ignore_special_keys_for_textbox_input);
assert_navigation_popped!(app, ActiveRadarrBlock::Movies.into());
assert_eq!(app.data.radarr_data.add_movie_search, None);
assert_none!(app.data.radarr_data.add_movie_search);
}
#[test]
@@ -1310,7 +1315,6 @@ mod tests {
mod test_handle_key_char {
use bimap::BiMap;
use pretty_assertions::assert_eq;
use rstest::rstest;
use super::*;
@@ -1320,9 +1324,9 @@ mod tests {
add_movie_body, add_movie_search_result, collection_movie,
},
models::{
BlockSelectionState,
servarr_data::radarr::{modals::AddMovieModal, radarr_data::ADD_MOVIE_SELECTION_BLOCKS},
stateful_table::StatefulTable,
BlockSelectionState,
},
network::radarr_network::RadarrEvent,
};
@@ -1490,9 +1494,9 @@ mod tests {
.handle();
assert_navigation_popped!(app, ActiveRadarrBlock::Movies.into());
assert_eq!(
app.data.radarr_data.prompt_confirm_action,
Some(RadarrEvent::AddMovie(add_movie_body()))
assert_some_eq_x!(
&app.data.radarr_data.prompt_confirm_action,
&RadarrEvent::AddMovie(add_movie_body())
);
assert_modal_absent!(app.data.radarr_data.add_movie_modal);
}
@@ -4,12 +4,12 @@ mod tests {
use rstest::rstest;
use strum::IntoEnumIterator;
use crate::app::key_binding::DEFAULT_KEYBINDINGS;
use crate::app::App;
use crate::app::key_binding::DEFAULT_KEYBINDINGS;
use crate::event::Key;
use crate::handlers::KeyEventHandler;
use crate::handlers::radarr_handlers::library::delete_movie_handler::DeleteMovieHandler;
use crate::handlers::radarr_handlers::radarr_handler_test_utils::utils::movie;
use crate::handlers::KeyEventHandler;
use crate::models::radarr_models::DeleteMovieParams;
use crate::models::servarr_data::radarr::radarr_data::{ActiveRadarrBlock, DELETE_MOVIE_BLOCKS};
@@ -17,8 +17,8 @@ mod tests {
use pretty_assertions::assert_eq;
use rstest::rstest;
use crate::models::servarr_data::radarr::radarr_data::DELETE_MOVIE_SELECTION_BLOCKS;
use crate::models::BlockSelectionState;
use crate::models::servarr_data::radarr::radarr_data::DELETE_MOVIE_SELECTION_BLOCKS;
use super::*;
@@ -83,8 +83,8 @@ mod tests {
mod test_handle_submit {
use pretty_assertions::assert_eq;
use crate::models::servarr_data::radarr::radarr_data::DELETE_MOVIE_SELECTION_BLOCKS;
use crate::models::BlockSelectionState;
use crate::models::servarr_data::radarr::radarr_data::DELETE_MOVIE_SELECTION_BLOCKS;
use crate::network::radarr_network::RadarrEvent;
use super::*;
@@ -115,7 +115,7 @@ mod tests {
.handle();
assert_navigation_popped!(app, ActiveRadarrBlock::Movies.into());
assert_eq!(app.data.radarr_data.prompt_confirm_action, None);
assert_none!(app.data.radarr_data.prompt_confirm_action);
assert!(!app.data.radarr_data.prompt_confirm);
assert!(!app.data.radarr_data.delete_movie_files);
assert!(!app.data.radarr_data.add_list_exclusion);
@@ -183,7 +183,7 @@ mod tests {
app.get_current_route(),
ActiveRadarrBlock::DeleteMoviePrompt.into()
);
assert_eq!(app.data.radarr_data.prompt_confirm_action, None);
assert_none!(app.data.radarr_data.prompt_confirm_action);
assert!(!app.should_refresh);
assert!(app.data.radarr_data.prompt_confirm);
assert!(app.data.radarr_data.delete_movie_files);
@@ -257,7 +257,7 @@ mod tests {
use crate::{
assert_navigation_popped,
models::{
servarr_data::radarr::radarr_data::DELETE_MOVIE_SELECTION_BLOCKS, BlockSelectionState,
BlockSelectionState, servarr_data::radarr::radarr_data::DELETE_MOVIE_SELECTION_BLOCKS,
},
network::radarr_network::RadarrEvent,
};
@@ -5,14 +5,14 @@ mod tests {
use rstest::rstest;
use strum::IntoEnumIterator;
use crate::app::key_binding::DEFAULT_KEYBINDINGS;
use crate::app::App;
use crate::app::key_binding::DEFAULT_KEYBINDINGS;
use crate::assert_modal_absent;
use crate::assert_navigation_pushed;
use crate::event::Key;
use crate::handlers::KeyEventHandler;
use crate::handlers::radarr_handlers::library::edit_movie_handler::EditMovieHandler;
use crate::handlers::radarr_handlers::radarr_handler_test_utils::utils::movie;
use crate::handlers::KeyEventHandler;
use crate::models::radarr_models::{EditMovieParams, MinimumAvailability, Movie};
use crate::models::servarr_data::radarr::modals::EditMovieModal;
use crate::models::servarr_data::radarr::radarr_data::{ActiveRadarrBlock, EDIT_MOVIE_BLOCKS};
@@ -22,9 +22,9 @@ mod tests {
use rstest::rstest;
use strum::IntoEnumIterator;
use crate::models::BlockSelectionState;
use crate::models::servarr_data::radarr::modals::EditMovieModal;
use crate::models::servarr_data::radarr::radarr_data::EDIT_MOVIE_SELECTION_BLOCKS;
use crate::models::BlockSelectionState;
use super::*;
@@ -568,15 +568,17 @@ mod tests {
.handle();
assert!(!app.ignore_special_keys_for_textbox_input);
assert!(!app
.data
.radarr_data
.edit_movie_modal
.as_ref()
.unwrap()
.path
.text
.is_empty());
assert!(
!app
.data
.radarr_data
.edit_movie_modal
.as_ref()
.unwrap()
.path
.text
.is_empty()
);
assert_navigation_popped!(app, ActiveRadarrBlock::EditMoviePrompt.into());
}
@@ -600,15 +602,17 @@ mod tests {
.handle();
assert!(!app.ignore_special_keys_for_textbox_input);
assert!(!app
.data
.radarr_data
.edit_movie_modal
.as_mut()
.unwrap()
.tags
.text
.is_empty());
assert!(
!app
.data
.radarr_data
.edit_movie_modal
.as_mut()
.unwrap()
.tags
.text
.is_empty()
);
assert_navigation_popped!(app, ActiveRadarrBlock::EditMoviePrompt.into());
}
@@ -634,7 +638,7 @@ mod tests {
.handle();
assert_navigation_popped!(app, ActiveRadarrBlock::Movies.into());
assert_eq!(app.data.radarr_data.prompt_confirm_action, None);
assert_none!(app.data.radarr_data.prompt_confirm_action);
}
#[test]
@@ -716,7 +720,7 @@ mod tests {
app.get_current_route(),
ActiveRadarrBlock::EditMoviePrompt.into()
);
assert_eq!(app.data.radarr_data.prompt_confirm_action, None);
assert_none!(app.data.radarr_data.prompt_confirm_action);
assert!(!app.should_refresh);
}
@@ -740,7 +744,7 @@ mod tests {
.handle();
assert_eq!(app.get_current_route(), current_route);
assert_eq!(
assert_some_eq_x!(
app
.data
.radarr_data
@@ -748,7 +752,7 @@ mod tests {
.as_ref()
.unwrap()
.monitored,
Some(true)
true
);
EditMovieHandler::new(
@@ -760,7 +764,7 @@ mod tests {
.handle();
assert_eq!(app.get_current_route(), current_route);
assert_eq!(
assert_some_eq_x!(
app
.data
.radarr_data
@@ -768,7 +772,7 @@ mod tests {
.as_ref()
.unwrap()
.monitored,
Some(false)
false
);
}
@@ -805,7 +809,7 @@ mod tests {
app,
(selected_block, Some(ActiveRadarrBlock::Movies)).into()
);
assert_eq!(app.data.radarr_data.prompt_confirm_action, None);
assert_none!(app.data.radarr_data.prompt_confirm_action);
if selected_block == ActiveRadarrBlock::EditMoviePathInput
|| selected_block == ActiveRadarrBlock::EditMovieTagsInput
@@ -847,7 +851,7 @@ mod tests {
)
.into()
);
assert_eq!(app.data.radarr_data.prompt_confirm_action, None);
assert_none!(app.data.radarr_data.prompt_confirm_action);
assert!(!app.ignore_special_keys_for_textbox_input);
}
@@ -954,8 +958,8 @@ mod tests {
use crate::{
assert_navigation_popped,
models::{
servarr_data::radarr::{modals::EditMovieModal, radarr_data::EDIT_MOVIE_SELECTION_BLOCKS},
BlockSelectionState,
servarr_data::radarr::{modals::EditMovieModal, radarr_data::EDIT_MOVIE_SELECTION_BLOCKS},
},
network::radarr_network::RadarrEvent,
};
@@ -5,18 +5,18 @@ mod tests {
use std::cmp::Ordering;
use strum::IntoEnumIterator;
use crate::app::key_binding::DEFAULT_KEYBINDINGS;
use crate::app::App;
use crate::app::key_binding::DEFAULT_KEYBINDINGS;
use crate::assert_modal_absent;
use crate::assert_modal_present;
use crate::assert_navigation_pushed;
use crate::event::Key;
use crate::handlers::radarr_handlers::library::{movies_sorting_options, LibraryHandler};
use crate::handlers::radarr_handlers::radarr_handler_test_utils::utils::movie;
use crate::handlers::KeyEventHandler;
use crate::handlers::radarr_handlers::library::{LibraryHandler, movies_sorting_options};
use crate::handlers::radarr_handlers::radarr_handler_test_utils::utils::movie;
use crate::models::radarr_models::Movie;
use crate::models::servarr_data::radarr::radarr_data::{
ActiveRadarrBlock, ADD_MOVIE_BLOCKS, DELETE_MOVIE_BLOCKS, EDIT_MOVIE_BLOCKS, LIBRARY_BLOCKS,
ADD_MOVIE_BLOCKS, ActiveRadarrBlock, DELETE_MOVIE_BLOCKS, EDIT_MOVIE_BLOCKS, LIBRARY_BLOCKS,
MOVIE_DETAILS_BLOCKS,
};
use crate::models::servarr_models::Language;
@@ -207,9 +207,9 @@ mod tests {
.handle();
assert!(app.data.radarr_data.prompt_confirm);
assert_eq!(
app.data.radarr_data.prompt_confirm_action,
Some(RadarrEvent::UpdateAllMovies)
assert_some_eq_x!(
&app.data.radarr_data.prompt_confirm_action,
&RadarrEvent::UpdateAllMovies
);
assert_navigation_popped!(app, ActiveRadarrBlock::Movies.into());
}
@@ -234,7 +234,7 @@ mod tests {
.handle();
assert!(!app.data.radarr_data.prompt_confirm);
assert_eq!(app.data.radarr_data.prompt_confirm_action, None);
assert_none!(app.data.radarr_data.prompt_confirm_action);
assert_navigation_popped!(app, ActiveRadarrBlock::Movies.into());
}
}
@@ -288,7 +288,7 @@ mod tests {
LibraryHandler::new(ESC_KEY, &mut app, ActiveRadarrBlock::Movies, None).handle();
assert_navigation_popped!(app, ActiveRadarrBlock::Movies.into());
assert!(app.error.text.is_empty());
assert_is_empty!(app.error.text);
}
}
@@ -301,7 +301,7 @@ mod tests {
use crate::models::radarr_models::MinimumAvailability;
use crate::models::servarr_data::radarr::radarr_data::radarr_test_utils::utils::create_test_radarr_data;
use crate::models::servarr_data::radarr::radarr_data::{
RadarrData, EDIT_MOVIE_SELECTION_BLOCKS,
EDIT_MOVIE_SELECTION_BLOCKS, RadarrData,
};
use crate::network::radarr_network::RadarrEvent;
@@ -405,9 +405,9 @@ mod tests {
assert_eq!(app.get_current_route(), ActiveRadarrBlock::Movies.into());
assert!(app.data.radarr_data.prompt_confirm);
assert!(app.is_routing);
assert_eq!(
app.data.radarr_data.prompt_confirm_action,
Some(RadarrEvent::ToggleMovieMonitoring(0))
assert_some_eq_x!(
&app.data.radarr_data.prompt_confirm_action,
&RadarrEvent::ToggleMovieMonitoring(0)
);
}
@@ -539,9 +539,9 @@ mod tests {
.handle();
assert!(app.data.radarr_data.prompt_confirm);
assert_eq!(
app.data.radarr_data.prompt_confirm_action,
Some(RadarrEvent::UpdateAllMovies)
assert_some_eq_x!(
&app.data.radarr_data.prompt_confirm_action,
&RadarrEvent::UpdateAllMovies
);
assert_navigation_popped!(app, ActiveRadarrBlock::Movies.into());
}
@@ -7,16 +7,16 @@ mod tests {
use serde_json::Number;
use strum::IntoEnumIterator;
use crate::app::key_binding::DEFAULT_KEYBINDINGS;
use crate::app::App;
use crate::app::key_binding::DEFAULT_KEYBINDINGS;
use crate::assert_modal_absent;
use crate::assert_navigation_pushed;
use crate::event::Key;
use crate::handlers::KeyEventHandler;
use crate::handlers::radarr_handlers::library::movie_details_handler::{
releases_sorting_options, MovieDetailsHandler,
MovieDetailsHandler, releases_sorting_options,
};
use crate::handlers::radarr_handlers::radarr_handler_test_utils::utils::{movie, release};
use crate::handlers::KeyEventHandler;
use crate::models::radarr_models::{Credit, MovieHistoryItem};
use crate::models::radarr_models::{RadarrRelease, RadarrReleaseDownloadBody};
use crate::models::servarr_data::radarr::modals::MovieDetailsModal;
@@ -393,9 +393,9 @@ mod tests {
assert!(app.data.radarr_data.prompt_confirm);
assert_navigation_popped!(app, ActiveRadarrBlock::MovieDetails.into());
assert_eq!(
app.data.radarr_data.prompt_confirm_action,
Some(expected_action)
assert_some_eq_x!(
&app.data.radarr_data.prompt_confirm_action,
&expected_action
);
}
@@ -420,7 +420,7 @@ mod tests {
assert!(!app.data.radarr_data.prompt_confirm);
assert_navigation_popped!(app, ActiveRadarrBlock::MovieDetails.into());
assert_eq!(app.data.radarr_data.prompt_confirm_action, None);
assert_none!(app.data.radarr_data.prompt_confirm_action);
}
}
@@ -495,7 +495,7 @@ mod tests {
use crate::models::servarr_data::radarr::modals::MovieDetailsModal;
use crate::models::servarr_data::radarr::radarr_data::radarr_test_utils::utils::create_test_radarr_data;
use crate::models::servarr_data::radarr::radarr_data::{
RadarrData, EDIT_MOVIE_SELECTION_BLOCKS,
EDIT_MOVIE_SELECTION_BLOCKS, RadarrData,
};
use crate::network::radarr_network::RadarrEvent;
use crate::{assert_navigation_popped, test_edit_movie_key};
@@ -808,9 +808,9 @@ mod tests {
assert!(app.data.radarr_data.prompt_confirm);
assert_navigation_popped!(app, ActiveRadarrBlock::MovieDetails.into());
assert_eq!(
app.data.radarr_data.prompt_confirm_action,
Some(expected_action)
assert_some_eq_x!(
&app.data.radarr_data.prompt_confirm_action,
&expected_action
);
}
}
@@ -1,6 +1,7 @@
#[cfg(test)]
#[macro_use]
pub(in crate::handlers::radarr_handlers) mod utils {
use crate::models::HorizontallyScrollableText;
use crate::models::radarr_models::{
AddMovieBody, AddMovieOptions, AddMovieSearchResult, Collection, CollectionMovie,
DownloadRecord, IndexerSettings, MediaInfo, MinimumAvailability, Movie, MovieCollection,
@@ -9,9 +10,8 @@ pub(in crate::handlers::radarr_handlers) mod utils {
use crate::models::servarr_models::{
Indexer, IndexerField, Language, Quality, QualityWrapper, RootFolder,
};
use crate::models::HorizontallyScrollableText;
use chrono::DateTime;
use serde_json::{json, Number};
use serde_json::{Number, json};
#[macro_export]
macro_rules! test_edit_movie_key {
@@ -4,18 +4,18 @@ mod tests {
use rstest::rstest;
use strum::IntoEnumIterator;
use crate::app::key_binding::DEFAULT_KEYBINDINGS;
use crate::app::App;
use crate::app::key_binding::DEFAULT_KEYBINDINGS;
use crate::assert_modal_absent;
use crate::assert_modal_present;
use crate::assert_navigation_pushed;
use crate::event::Key;
use crate::handlers::KeyEventHandler;
use crate::handlers::radarr_handlers::radarr_handler_test_utils::utils::root_folder;
use crate::handlers::radarr_handlers::root_folders::RootFoldersHandler;
use crate::handlers::KeyEventHandler;
use crate::models::HorizontallyScrollableText;
use crate::models::servarr_data::radarr::radarr_data::{ActiveRadarrBlock, ROOT_FOLDERS_BLOCKS};
use crate::models::servarr_models::{AddRootFolderBody, RootFolder};
use crate::models::HorizontallyScrollableText;
mod test_handle_home_end {
use pretty_assertions::assert_eq;
@@ -332,9 +332,9 @@ mod tests {
.handle();
assert!(app.data.radarr_data.prompt_confirm);
assert_eq!(
app.data.radarr_data.prompt_confirm_action,
Some(RadarrEvent::DeleteRootFolder(1))
assert_some_eq_x!(
&app.data.radarr_data.prompt_confirm_action,
&RadarrEvent::DeleteRootFolder(1)
);
assert_navigation_popped!(app, ActiveRadarrBlock::RootFolders.into());
}
@@ -359,7 +359,7 @@ mod tests {
.handle();
assert!(!app.data.radarr_data.prompt_confirm);
assert_eq!(app.data.radarr_data.prompt_confirm_action, None);
assert_none!(app.data.radarr_data.prompt_confirm_action);
assert_navigation_popped!(app, ActiveRadarrBlock::RootFolders.into());
}
}
@@ -424,7 +424,7 @@ mod tests {
RootFoldersHandler::new(ESC_KEY, &mut app, ActiveRadarrBlock::RootFolders, None).handle();
assert_navigation_popped!(app, ActiveRadarrBlock::RootFolders.into());
assert!(app.error.text.is_empty());
assert_is_empty!(app.error.text);
}
}
@@ -600,9 +600,9 @@ mod tests {
.handle();
assert!(app.data.radarr_data.prompt_confirm);
assert_eq!(
app.data.radarr_data.prompt_confirm_action,
Some(RadarrEvent::DeleteRootFolder(1))
assert_some_eq_x!(
&app.data.radarr_data.prompt_confirm_action,
&RadarrEvent::DeleteRootFolder(1)
);
assert_navigation_popped!(app, ActiveRadarrBlock::RootFolders.into());
}
@@ -4,12 +4,12 @@ mod tests {
use rstest::rstest;
use strum::IntoEnumIterator;
use crate::app::key_binding::DEFAULT_KEYBINDINGS;
use crate::app::App;
use crate::app::key_binding::DEFAULT_KEYBINDINGS;
use crate::assert_navigation_pushed;
use crate::event::Key;
use crate::handlers::radarr_handlers::system::system_details_handler::SystemDetailsHandler;
use crate::handlers::KeyEventHandler;
use crate::handlers::radarr_handlers::system::system_details_handler::SystemDetailsHandler;
use crate::models::radarr_models::{RadarrTask, RadarrTaskName};
use crate::models::servarr_data::radarr::radarr_data::{
ActiveRadarrBlock, SYSTEM_DETAILS_BLOCKS,
@@ -693,9 +693,9 @@ mod tests {
.handle();
assert!(app.data.radarr_data.prompt_confirm);
assert_eq!(
app.data.radarr_data.prompt_confirm_action,
Some(RadarrEvent::StartTask(RadarrTaskName::default()))
assert_some_eq_x!(
&app.data.radarr_data.prompt_confirm_action,
&RadarrEvent::StartTask(RadarrTaskName::default())
);
assert_navigation_popped!(app, ActiveRadarrBlock::SystemTasks.into());
}
@@ -716,7 +716,7 @@ mod tests {
.handle();
assert!(!app.data.radarr_data.prompt_confirm);
assert_eq!(app.data.radarr_data.prompt_confirm_action, None);
assert_none!(app.data.radarr_data.prompt_confirm_action);
assert_navigation_popped!(app, ActiveRadarrBlock::SystemTasks.into());
}
}
@@ -750,7 +750,7 @@ mod tests {
SystemDetailsHandler::new(ESC_KEY, &mut app, ActiveRadarrBlock::SystemLogs, None).handle();
assert_navigation_popped!(app, ActiveRadarrBlock::System.into());
assert!(app.data.radarr_data.log_details.items.is_empty());
assert_is_empty!(app.data.radarr_data.log_details.items);
}
#[rstest]
@@ -907,9 +907,9 @@ mod tests {
.handle();
assert!(app.data.radarr_data.prompt_confirm);
assert_eq!(
app.data.radarr_data.prompt_confirm_action,
Some(RadarrEvent::StartTask(RadarrTaskName::default()))
assert_some_eq_x!(
&app.data.radarr_data.prompt_confirm_action,
&RadarrEvent::StartTask(RadarrTaskName::default())
);
assert_navigation_popped!(app, ActiveRadarrBlock::SystemTasks.into());
}
@@ -3,12 +3,12 @@ mod tests {
use rstest::rstest;
use strum::IntoEnumIterator;
use crate::app::key_binding::DEFAULT_KEYBINDINGS;
use crate::app::App;
use crate::app::key_binding::DEFAULT_KEYBINDINGS;
use crate::assert_navigation_pushed;
use crate::event::Key;
use crate::handlers::radarr_handlers::system::SystemHandler;
use crate::handlers::KeyEventHandler;
use crate::handlers::radarr_handlers::system::SystemHandler;
use crate::models::radarr_models::RadarrTask;
use crate::models::servarr_data::radarr::radarr_data::{
ActiveRadarrBlock, SYSTEM_DETAILS_BLOCKS,
@@ -83,7 +83,7 @@ mod tests {
SystemHandler::new(ESC_KEY, &mut app, ActiveRadarrBlock::System, None).handle();
assert_navigation_popped!(app, ActiveRadarrBlock::System.into());
assert!(app.error.text.is_empty());
assert_is_empty!(app.error.text);
}
}
@@ -344,7 +344,7 @@ mod tests {
.handle();
assert_eq!(app.get_current_route(), ActiveRadarrBlock::System.into());
assert!(app.data.radarr_data.log_details.is_empty());
assert_is_empty!(app.data.radarr_data.log_details);
}
#[test]