test(readarr): snapshot the Readarr context row, loading, and empty states

The stats, downloads, and logo panes of the Readarr context row had no test
exercising them. Add snapshots for the populated, loading, and empty variants
of the context row, plus loading and empty variants of the tab view.
This commit is contained in:
Dark-Alex-17 committed 2026-09-03 01:05:43 -06:00
1 parent fb465b06f8
commit d1d5033710
6 files changed
+332

No files matched your search

+62
View File
@@ -20,6 +20,68 @@ mod tests {
use crate::ui::ui_test_utils::test_utils::{TerminalSize, render_to_string_with_app};
use rstest::rstest;
#[test]
fn test_readarr_ui_renders_loading() {
let mut app = App::test_default();
app.is_loading = true;
app.push_navigation_stack(ActiveReadarrBlock::Authors.into());
let output = render_to_string_with_app(TerminalSize::Large, &mut app, |f, app| {
ReadarrUi::draw(f, app, f.area());
});
insta::assert_snapshot!(output);
}
#[test]
fn test_readarr_ui_renders_empty() {
let mut app = App::test_default();
app.push_navigation_stack(ActiveReadarrBlock::Authors.into());
let output = render_to_string_with_app(TerminalSize::Large, &mut app, |f, app| {
ReadarrUi::draw(f, app, f.area());
});
insta::assert_snapshot!(output);
}
#[test]
fn test_readarr_ui_renders_context_row() {
let mut app = App::test_default_fully_populated();
app.push_navigation_stack(ActiveReadarrBlock::Authors.into());
let output = render_to_string_with_app(TerminalSize::Large, &mut app, |f, app| {
ReadarrUi::draw_context_row(f, app, f.area());
});
insta::assert_snapshot!(output);
}
#[test]
fn test_readarr_ui_renders_context_row_loading() {
let mut app = App::test_default();
app.is_loading = true;
app.push_navigation_stack(ActiveReadarrBlock::Authors.into());
let output = render_to_string_with_app(TerminalSize::Large, &mut app, |f, app| {
ReadarrUi::draw_context_row(f, app, f.area());
});
insta::assert_snapshot!(output);
}
#[test]
fn test_readarr_ui_renders_context_row_empty() {
let mut app = App::test_default();
app.push_navigation_stack(ActiveReadarrBlock::Authors.into());
let output = render_to_string_with_app(TerminalSize::Large, &mut app, |f, app| {
ReadarrUi::draw_context_row(f, app, f.area());
});
insta::assert_snapshot!(output);
}
#[rstest]
#[case(ActiveReadarrBlock::Authors, 0)]
#[case(ActiveReadarrBlock::Downloads, 1)]