feat: Added support for a system-wide notification popup mechanism that works across Servarrs
This commit is contained in:
16 files changed
+587
-21
No files matched your search
@@ -2,6 +2,7 @@
|
||||
mod snapshot_tests {
|
||||
use crate::app::App;
|
||||
use crate::handlers::populate_keymapping_table;
|
||||
use crate::models::servarr_data::Notification;
|
||||
use crate::models::servarr_data::lidarr::lidarr_data::ActiveLidarrBlock;
|
||||
use crate::models::servarr_data::radarr::radarr_data::ActiveRadarrBlock;
|
||||
use crate::models::servarr_data::sonarr::sonarr_data::ActiveSonarrBlock;
|
||||
@@ -46,6 +47,40 @@ mod snapshot_tests {
|
||||
insta::assert_snapshot!(output);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn test_radarr_ui_renders_notification_success_popup() {
|
||||
let mut app = App::test_default_fully_populated();
|
||||
app.notification = Some(Notification::new(
|
||||
"Download Result".to_owned(),
|
||||
"Download request sent successfully".to_owned(),
|
||||
true,
|
||||
));
|
||||
app.push_navigation_stack(ActiveRadarrBlock::default().into());
|
||||
|
||||
let output = render_to_string_with_app(TerminalSize::Large, &mut app, |f, app| {
|
||||
ui(f, app);
|
||||
});
|
||||
|
||||
insta::assert_snapshot!(output);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn test_radarr_ui_renders_notification_failure_popup() {
|
||||
let mut app = App::test_default_fully_populated();
|
||||
app.notification = Some(Notification::new(
|
||||
"Download Failed".to_owned(),
|
||||
"Request failed. Received 500 response code".to_owned(),
|
||||
false,
|
||||
));
|
||||
app.push_navigation_stack(ActiveRadarrBlock::default().into());
|
||||
|
||||
let output = render_to_string_with_app(TerminalSize::Large, &mut app, |f, app| {
|
||||
ui(f, app);
|
||||
});
|
||||
|
||||
insta::assert_snapshot!(output);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn test_sonarr_ui_renders_library_tab() {
|
||||
let mut app = App::test_default_fully_populated();
|
||||
@@ -84,6 +119,23 @@ mod snapshot_tests {
|
||||
insta::assert_snapshot!(output);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn test_sonarr_ui_renders_notification_success_popup() {
|
||||
let mut app = App::test_default_fully_populated();
|
||||
app.notification = Some(Notification::new(
|
||||
"Download Result".to_owned(),
|
||||
"Download request sent successfully".to_owned(),
|
||||
true,
|
||||
));
|
||||
app.push_navigation_stack(ActiveSonarrBlock::default().into());
|
||||
|
||||
let output = render_to_string_with_app(TerminalSize::Large, &mut app, |f, app| {
|
||||
ui(f, app);
|
||||
});
|
||||
|
||||
insta::assert_snapshot!(output);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn test_lidarr_ui_renders_library_tab() {
|
||||
let mut app = App::test_default_fully_populated();
|
||||
@@ -109,6 +161,23 @@ mod snapshot_tests {
|
||||
insta::assert_snapshot!(output);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn test_lidarr_ui_renders_notification_success_popup() {
|
||||
let mut app = App::test_default_fully_populated();
|
||||
app.notification = Some(Notification::new(
|
||||
"Download Result".to_owned(),
|
||||
"Download request sent successfully".to_owned(),
|
||||
true,
|
||||
));
|
||||
app.push_navigation_stack(ActiveLidarrBlock::default().into());
|
||||
|
||||
let output = render_to_string_with_app(TerminalSize::Large, &mut app, |f, app| {
|
||||
ui(f, app);
|
||||
});
|
||||
|
||||
insta::assert_snapshot!(output);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn test_lidarr_ui_renders_library_tab_error_popup() {
|
||||
let mut app = App::test_default_fully_populated();
|
||||
|
||||
Reference in new issue
Block a user