232 lines
5.6 KiB
Rust
232 lines
5.6 KiB
Rust
#[cfg(test)]
|
|
#[macro_use]
|
|
mod utils {
|
|
#[macro_export]
|
|
macro_rules! test_edit_movie_key {
|
|
($handler:ident, $block:expr, $context:expr) => {
|
|
let mut app = App::default();
|
|
let mut radarr_data = RadarrData {
|
|
quality_profile_map: BiMap::from_iter([
|
|
(2222, "HD - 1080p".to_owned()),
|
|
(1111, "Any".to_owned()),
|
|
]),
|
|
tags_map: BiMap::from_iter([(1, "test".to_owned())]),
|
|
..create_test_radarr_data()
|
|
};
|
|
radarr_data.movies.set_items(vec![Movie {
|
|
path: "/nfs/movies/Test".to_owned().into(),
|
|
monitored: true,
|
|
quality_profile_id: 2222,
|
|
minimum_availability: MinimumAvailability::Released,
|
|
tags: vec![Number::from(1)],
|
|
..Movie::default()
|
|
}]);
|
|
app.data.radarr_data = radarr_data;
|
|
|
|
$handler::with(DEFAULT_KEYBINDINGS.edit.key, &mut app, $block, None).handle();
|
|
|
|
assert_eq!(
|
|
app.get_current_route(),
|
|
(ActiveRadarrBlock::EditMoviePrompt, Some($context)).into()
|
|
);
|
|
assert_eq!(
|
|
app.data.radarr_data.selected_block.get_active_block(),
|
|
ActiveRadarrBlock::EditMovieToggleMonitored
|
|
);
|
|
assert_eq!(
|
|
app
|
|
.data
|
|
.radarr_data
|
|
.edit_movie_modal
|
|
.as_ref()
|
|
.unwrap()
|
|
.minimum_availability_list
|
|
.items,
|
|
Vec::from_iter(MinimumAvailability::iter())
|
|
);
|
|
assert_eq!(
|
|
app
|
|
.data
|
|
.radarr_data
|
|
.edit_movie_modal
|
|
.as_ref()
|
|
.unwrap()
|
|
.minimum_availability_list
|
|
.current_selection(),
|
|
&MinimumAvailability::Released
|
|
);
|
|
assert_eq!(
|
|
app
|
|
.data
|
|
.radarr_data
|
|
.edit_movie_modal
|
|
.as_ref()
|
|
.unwrap()
|
|
.quality_profile_list
|
|
.items,
|
|
vec!["Any".to_owned(), "HD - 1080p".to_owned()]
|
|
);
|
|
assert_str_eq!(
|
|
app
|
|
.data
|
|
.radarr_data
|
|
.edit_movie_modal
|
|
.as_ref()
|
|
.unwrap()
|
|
.quality_profile_list
|
|
.current_selection(),
|
|
"HD - 1080p"
|
|
);
|
|
assert_str_eq!(
|
|
app
|
|
.data
|
|
.radarr_data
|
|
.edit_movie_modal
|
|
.as_ref()
|
|
.unwrap()
|
|
.path
|
|
.text,
|
|
"/nfs/movies/Test"
|
|
);
|
|
assert_str_eq!(
|
|
app
|
|
.data
|
|
.radarr_data
|
|
.edit_movie_modal
|
|
.as_ref()
|
|
.unwrap()
|
|
.tags
|
|
.text,
|
|
"test"
|
|
);
|
|
assert_eq!(
|
|
app
|
|
.data
|
|
.radarr_data
|
|
.edit_movie_modal
|
|
.as_ref()
|
|
.unwrap()
|
|
.monitored,
|
|
Some(true)
|
|
);
|
|
assert_eq!(
|
|
app.data.radarr_data.selected_block.blocks,
|
|
EDIT_MOVIE_SELECTION_BLOCKS
|
|
);
|
|
};
|
|
}
|
|
|
|
#[macro_export]
|
|
macro_rules! test_edit_collection_key {
|
|
($handler:ident, $block:expr, $context:expr) => {
|
|
let mut app = App::default();
|
|
let mut radarr_data = RadarrData {
|
|
quality_profile_map: BiMap::from_iter([
|
|
(2222, "HD - 1080p".to_owned()),
|
|
(1111, "Any".to_owned()),
|
|
]),
|
|
..create_test_radarr_data()
|
|
};
|
|
radarr_data.collections.set_items(vec![Collection {
|
|
root_folder_path: "/nfs/movies/Test".to_owned().into(),
|
|
monitored: true,
|
|
search_on_add: true,
|
|
quality_profile_id: 2222,
|
|
minimum_availability: MinimumAvailability::Released,
|
|
..Collection::default()
|
|
}]);
|
|
app.data.radarr_data = radarr_data;
|
|
|
|
$handler::with(DEFAULT_KEYBINDINGS.edit.key, &mut app, $block, None).handle();
|
|
|
|
assert_eq!(
|
|
app.get_current_route(),
|
|
(ActiveRadarrBlock::EditCollectionPrompt, Some($context)).into()
|
|
);
|
|
assert_eq!(
|
|
app.data.radarr_data.selected_block.get_active_block(),
|
|
ActiveRadarrBlock::EditCollectionToggleMonitored
|
|
);
|
|
assert_eq!(
|
|
app
|
|
.data
|
|
.radarr_data
|
|
.edit_collection_modal
|
|
.as_ref()
|
|
.unwrap()
|
|
.minimum_availability_list
|
|
.items,
|
|
Vec::from_iter(MinimumAvailability::iter())
|
|
);
|
|
assert_eq!(
|
|
app
|
|
.data
|
|
.radarr_data
|
|
.edit_collection_modal
|
|
.as_ref()
|
|
.unwrap()
|
|
.minimum_availability_list
|
|
.current_selection(),
|
|
&MinimumAvailability::Released
|
|
);
|
|
assert_eq!(
|
|
app
|
|
.data
|
|
.radarr_data
|
|
.edit_collection_modal
|
|
.as_ref()
|
|
.unwrap()
|
|
.quality_profile_list
|
|
.items,
|
|
vec!["Any".to_owned(), "HD - 1080p".to_owned()]
|
|
);
|
|
assert_str_eq!(
|
|
app
|
|
.data
|
|
.radarr_data
|
|
.edit_collection_modal
|
|
.as_ref()
|
|
.unwrap()
|
|
.quality_profile_list
|
|
.current_selection(),
|
|
"HD - 1080p"
|
|
);
|
|
assert_str_eq!(
|
|
app
|
|
.data
|
|
.radarr_data
|
|
.edit_collection_modal
|
|
.as_ref()
|
|
.unwrap()
|
|
.path
|
|
.text,
|
|
"/nfs/movies/Test"
|
|
);
|
|
assert_eq!(
|
|
app
|
|
.data
|
|
.radarr_data
|
|
.edit_collection_modal
|
|
.as_ref()
|
|
.unwrap()
|
|
.monitored,
|
|
Some(true)
|
|
);
|
|
assert_eq!(
|
|
app
|
|
.data
|
|
.radarr_data
|
|
.edit_collection_modal
|
|
.as_ref()
|
|
.unwrap()
|
|
.search_on_add,
|
|
Some(true)
|
|
);
|
|
assert_eq!(
|
|
app.data.radarr_data.selected_block.blocks,
|
|
EDIT_COLLECTION_SELECTION_BLOCKS
|
|
);
|
|
};
|
|
}
|
|
}
|