fix(ui): Fix the System Details Tasks popup to be navigable in both Sonarr and Radarr
This commit is contained in:
@@ -44,6 +44,7 @@ impl<'a, 'b> KeyEventHandler<'a, 'b, ActiveRadarrBlock> for SystemDetailsHandler
|
|||||||
fn is_ready(&self) -> bool {
|
fn is_ready(&self) -> bool {
|
||||||
!self.app.is_loading
|
!self.app.is_loading
|
||||||
&& (!self.app.data.radarr_data.log_details.is_empty()
|
&& (!self.app.data.radarr_data.log_details.is_empty()
|
||||||
|
|| !self.app.data.radarr_data.tasks.is_empty()
|
||||||
|| !self.app.data.radarr_data.updates.is_empty())
|
|| !self.app.data.radarr_data.updates.is_empty())
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -944,7 +944,7 @@ mod tests {
|
|||||||
}
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn test_system_details_handler_not_ready_when_both_log_details_and_updates_are_empty() {
|
fn test_system_details_handler_not_ready_when_log_details_and_updates_and_tasks_are_empty() {
|
||||||
let mut app = App::default();
|
let mut app = App::default();
|
||||||
app.is_loading = false;
|
app.is_loading = false;
|
||||||
|
|
||||||
@@ -978,6 +978,26 @@ mod tests {
|
|||||||
assert!(handler.is_ready());
|
assert!(handler.is_ready());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn test_system_details_handler_ready_when_not_loading_and_tasks_is_not_empty() {
|
||||||
|
let mut app = App::default();
|
||||||
|
app.is_loading = false;
|
||||||
|
app
|
||||||
|
.data
|
||||||
|
.radarr_data
|
||||||
|
.tasks
|
||||||
|
.set_items(vec![RadarrTask::default()]);
|
||||||
|
|
||||||
|
let handler = SystemDetailsHandler::with(
|
||||||
|
DEFAULT_KEYBINDINGS.esc.key,
|
||||||
|
&mut app,
|
||||||
|
ActiveRadarrBlock::SystemTasks,
|
||||||
|
None,
|
||||||
|
);
|
||||||
|
|
||||||
|
assert!(handler.is_ready());
|
||||||
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn test_system_details_handler_ready_when_not_loading_and_updates_is_not_empty() {
|
fn test_system_details_handler_ready_when_not_loading_and_updates_is_not_empty() {
|
||||||
let mut app = App::default();
|
let mut app = App::default();
|
||||||
|
|||||||
@@ -44,6 +44,7 @@ impl<'a, 'b> KeyEventHandler<'a, 'b, ActiveSonarrBlock> for SystemDetailsHandler
|
|||||||
fn is_ready(&self) -> bool {
|
fn is_ready(&self) -> bool {
|
||||||
!self.app.is_loading
|
!self.app.is_loading
|
||||||
&& (!self.app.data.sonarr_data.log_details.is_empty()
|
&& (!self.app.data.sonarr_data.log_details.is_empty()
|
||||||
|
|| !self.app.data.sonarr_data.tasks.is_empty()
|
||||||
|| !self.app.data.sonarr_data.updates.is_empty())
|
|| !self.app.data.sonarr_data.updates.is_empty())
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -965,7 +965,7 @@ mod tests {
|
|||||||
}
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn test_system_details_handler_not_ready_when_both_log_details_and_updates_are_empty() {
|
fn test_system_details_handler_not_ready_when_log_details_and_updates_and_tasks_are_empty() {
|
||||||
let mut app = App::default();
|
let mut app = App::default();
|
||||||
app.push_navigation_stack(ActiveSonarrBlock::System.into());
|
app.push_navigation_stack(ActiveSonarrBlock::System.into());
|
||||||
app.is_loading = false;
|
app.is_loading = false;
|
||||||
@@ -1001,6 +1001,27 @@ mod tests {
|
|||||||
assert!(handler.is_ready());
|
assert!(handler.is_ready());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn test_system_details_handler_ready_when_not_loading_and_tasks_is_not_empty() {
|
||||||
|
let mut app = App::default();
|
||||||
|
app.push_navigation_stack(ActiveSonarrBlock::System.into());
|
||||||
|
app.is_loading = false;
|
||||||
|
app
|
||||||
|
.data
|
||||||
|
.sonarr_data
|
||||||
|
.tasks
|
||||||
|
.set_items(vec![SonarrTask::default()]);
|
||||||
|
|
||||||
|
let handler = SystemDetailsHandler::with(
|
||||||
|
DEFAULT_KEYBINDINGS.esc.key,
|
||||||
|
&mut app,
|
||||||
|
ActiveSonarrBlock::SystemTasks,
|
||||||
|
None,
|
||||||
|
);
|
||||||
|
|
||||||
|
assert!(handler.is_ready());
|
||||||
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn test_system_details_handler_ready_when_not_loading_and_updates_is_not_empty() {
|
fn test_system_details_handler_ready_when_not_loading_and_updates_is_not_empty() {
|
||||||
let mut app = App::default();
|
let mut app = App::default();
|
||||||
|
|||||||
Reference in New Issue
Block a user