feat(readarr): add the root folders UI

Renders the root folders table, the delete prompt and the add root
folder modal. The modal conveys its current step purely through
styling, which rendered output discards, so the step highlights are
computed by a separate function whose branches are asserted directly.
This commit is contained in:
Dark-Alex-17 committed 2026-09-08 09:15:37 -06:00
1 parent 5e1f3bb7e3
commit 58fe7d79ae
39 files changed
+2193 -3

No files matched your search

@@ -0,0 +1,274 @@
use std::sync::atomic::Ordering;
use ratatui::Frame;
use ratatui::layout::{Constraint, Rect};
use ratatui::prelude::Layout;
use ratatui::widgets::ListItem;
use crate::app::App;
use crate::models::Route;
use crate::models::servarr_data::readarr::modals::AddReadarrRootFolderModal;
use crate::models::servarr_data::readarr::readarr_data::{
ADD_ROOT_FOLDER_BLOCKS, ActiveReadarrBlock,
};
use crate::render_selectable_input_box;
use crate::ui::utils::title_block_centered;
use crate::ui::widgets::button::Button;
use crate::ui::widgets::input_box::InputBox;
use crate::ui::widgets::popup::{Popup, Size};
use crate::ui::widgets::selectable_list::SelectableList;
use crate::ui::{DrawUi, draw_popup};
#[cfg(test)]
#[path = "add_root_folder_ui_tests.rs"]
mod add_root_folder_ui_tests;
pub(super) struct AddRootFolderUi;
impl DrawUi for AddRootFolderUi {
fn accepts(route: Route) -> bool {
let Route::Readarr(active_readarr_block, _) = route else {
return false;
};
ADD_ROOT_FOLDER_BLOCKS.contains(&active_readarr_block)
}
fn draw(f: &mut Frame<'_>, app: &mut App<'_>, _area: Rect) {
if let Route::Readarr(active_readarr_block, _) = app.get_current_route() {
let draw_add_root_folder_prompt =
|f: &mut Frame<'_>, app: &mut App<'_>, prompt_area: Rect| {
draw_add_root_folder_confirmation_prompt(f, app, prompt_area);
match active_readarr_block {
ActiveReadarrBlock::AddRootFolderSelectMonitor => {
draw_add_root_folder_select_monitor_popup(f, app);
}
ActiveReadarrBlock::AddRootFolderSelectMonitorNewItems => {
draw_add_root_folder_select_monitor_new_items_popup(f, app);
}
ActiveReadarrBlock::AddRootFolderSelectQualityProfile => {
draw_add_root_folder_select_quality_profile_popup(f, app);
}
ActiveReadarrBlock::AddRootFolderSelectMetadataProfile => {
draw_add_root_folder_select_metadata_profile_popup(f, app);
}
_ => (),
}
};
draw_popup(f, app, draw_add_root_folder_prompt, Size::Long);
}
}
}
#[derive(PartialEq, Eq)]
#[cfg_attr(test, derive(Debug))]
struct AddRootFolderPromptHighlights {
name: bool,
path: bool,
monitor: bool,
monitor_new_items: bool,
quality_profile: bool,
metadata_profile: bool,
tags: bool,
confirm: bool,
}
fn add_root_folder_prompt_highlights(
selected_block: ActiveReadarrBlock,
) -> AddRootFolderPromptHighlights {
AddRootFolderPromptHighlights {
name: selected_block == ActiveReadarrBlock::AddRootFolderNameInput,
path: selected_block == ActiveReadarrBlock::AddRootFolderPathInput,
monitor: selected_block == ActiveReadarrBlock::AddRootFolderSelectMonitor,
monitor_new_items: selected_block == ActiveReadarrBlock::AddRootFolderSelectMonitorNewItems,
quality_profile: selected_block == ActiveReadarrBlock::AddRootFolderSelectQualityProfile,
metadata_profile: selected_block == ActiveReadarrBlock::AddRootFolderSelectMetadataProfile,
tags: selected_block == ActiveReadarrBlock::AddRootFolderTagsInput,
confirm: selected_block == ActiveReadarrBlock::AddRootFolderConfirmPrompt,
}
}
fn draw_add_root_folder_confirmation_prompt(f: &mut Frame<'_>, app: &mut App<'_>, area: Rect) {
let title = "Add Root Folder";
f.render_widget(title_block_centered(title), area);
let yes_no_value = app.data.readarr_data.prompt_confirm;
let selected_block = app.data.readarr_data.selected_block.get_active_block();
let highlights = add_root_folder_prompt_highlights(selected_block);
let AddReadarrRootFolderModal {
name,
path,
monitor_list,
monitor_new_items_list,
quality_profile_list,
metadata_profile_list,
tags,
} = app
.data
.readarr_data
.add_root_folder_modal
.as_ref()
.expect("add_root_folder_modal must exist in this context");
let selected_monitor = monitor_list.current_selection();
let selected_monitor_new_items = monitor_new_items_list.current_selection();
let selected_quality_profile = quality_profile_list.current_selection();
let selected_metadata_profile = metadata_profile_list.current_selection();
let [
_,
name_area,
path_area,
monitor_area,
monitor_new_items_area,
quality_profile_area,
metadata_profile_area,
tags_area,
_,
buttons_area,
] = Layout::vertical([
Constraint::Fill(1),
Constraint::Length(3),
Constraint::Length(3),
Constraint::Length(3),
Constraint::Length(3),
Constraint::Length(3),
Constraint::Length(3),
Constraint::Length(3),
Constraint::Fill(1),
Constraint::Length(3),
])
.margin(1)
.areas(area);
let [save_area, cancel_area] =
Layout::horizontal([Constraint::Percentage(50), Constraint::Percentage(50)])
.areas(buttons_area);
let monitor_drop_down_button = Button::default()
.title(selected_monitor.to_display_str())
.label("Monitor")
.icon("▼")
.selected(highlights.monitor);
let monitor_new_items_drop_down_button = Button::default()
.title(selected_monitor_new_items.to_display_str())
.label("Monitor New Books")
.icon("▼")
.selected(highlights.monitor_new_items);
let quality_profile_drop_down_button = Button::default()
.title(selected_quality_profile)
.label("Quality Profile")
.icon("▼")
.selected(highlights.quality_profile);
let metadata_profile_drop_down_button = Button::default()
.title(selected_metadata_profile)
.label("Metadata Profile")
.icon("▼")
.selected(highlights.metadata_profile);
if let Route::Readarr(active_readarr_block, _) = app.get_current_route() {
let name_input_box = InputBox::new(&name.text)
.offset(name.offset.load(Ordering::SeqCst))
.label("Name")
.highlighted(highlights.name)
.selected(active_readarr_block == ActiveReadarrBlock::AddRootFolderNameInput);
let path_input_box = InputBox::new(&path.text)
.offset(path.offset.load(Ordering::SeqCst))
.label("Path")
.highlighted(highlights.path)
.selected(active_readarr_block == ActiveReadarrBlock::AddRootFolderPathInput);
let tags_input_box = InputBox::new(&tags.text)
.offset(tags.offset.load(Ordering::SeqCst))
.label("Tags")
.highlighted(highlights.tags)
.selected(active_readarr_block == ActiveReadarrBlock::AddRootFolderTagsInput);
match active_readarr_block {
ActiveReadarrBlock::AddRootFolderNameInput => name_input_box.show_cursor(f, name_area),
ActiveReadarrBlock::AddRootFolderPathInput => path_input_box.show_cursor(f, path_area),
ActiveReadarrBlock::AddRootFolderTagsInput => tags_input_box.show_cursor(f, tags_area),
_ => (),
}
render_selectable_input_box!(name_input_box, f, name_area);
render_selectable_input_box!(path_input_box, f, path_area);
render_selectable_input_box!(tags_input_box, f, tags_area);
}
let save_button = Button::default()
.title("Save")
.selected(yes_no_value && highlights.confirm);
let cancel_button = Button::default()
.title("Cancel")
.selected(!yes_no_value && highlights.confirm);
f.render_widget(monitor_drop_down_button, monitor_area);
f.render_widget(monitor_new_items_drop_down_button, monitor_new_items_area);
f.render_widget(quality_profile_drop_down_button, quality_profile_area);
f.render_widget(metadata_profile_drop_down_button, metadata_profile_area);
f.render_widget(save_button, save_area);
f.render_widget(cancel_button, cancel_area);
}
fn draw_add_root_folder_select_monitor_popup(f: &mut Frame<'_>, app: &mut App<'_>) {
let monitor_list = SelectableList::new(
&mut app
.data
.readarr_data
.add_root_folder_modal
.as_mut()
.expect("add_root_folder_modal must exist in this context")
.monitor_list,
|monitor_type| ListItem::new(monitor_type.to_display_str().to_owned()),
);
let popup = Popup::new(monitor_list).size(Size::Dropdown);
f.render_widget(popup, f.area());
}
fn draw_add_root_folder_select_monitor_new_items_popup(f: &mut Frame<'_>, app: &mut App<'_>) {
let monitor_new_items_list = SelectableList::new(
&mut app
.data
.readarr_data
.add_root_folder_modal
.as_mut()
.expect("add_root_folder_modal must exist in this context")
.monitor_new_items_list,
|monitor_type| ListItem::new(monitor_type.to_display_str().to_owned()),
);
let popup = Popup::new(monitor_new_items_list).size(Size::Dropdown);
f.render_widget(popup, f.area());
}
fn draw_add_root_folder_select_quality_profile_popup(f: &mut Frame<'_>, app: &mut App<'_>) {
let quality_profile_list = SelectableList::new(
&mut app
.data
.readarr_data
.add_root_folder_modal
.as_mut()
.expect("add_root_folder_modal must exist in this context")
.quality_profile_list,
|quality_profile| ListItem::new(quality_profile.clone()),
);
let popup = Popup::new(quality_profile_list).size(Size::Dropdown);
f.render_widget(popup, f.area());
}
fn draw_add_root_folder_select_metadata_profile_popup(f: &mut Frame<'_>, app: &mut App<'_>) {
let metadata_profile_list = SelectableList::new(
&mut app
.data
.readarr_data
.add_root_folder_modal
.as_mut()
.expect("add_root_folder_modal must exist in this context")
.metadata_profile_list,
|metadata_profile| ListItem::new(metadata_profile.clone()),
);
let popup = Popup::new(metadata_profile_list).size(Size::Dropdown);
f.render_widget(popup, f.area());
}
@@ -0,0 +1,231 @@
#[cfg(test)]
mod tests {
use pretty_assertions::assert_eq;
use rstest::rstest;
use strum::IntoEnumIterator;
use crate::models::servarr_data::readarr::readarr_data::{
ADD_ROOT_FOLDER_BLOCKS, ADD_ROOT_FOLDER_SELECTION_BLOCKS, ActiveReadarrBlock,
};
use crate::ui::DrawUi;
use crate::ui::readarr_ui::root_folders::add_root_folder_ui::{
AddRootFolderPromptHighlights, AddRootFolderUi, add_root_folder_prompt_highlights,
};
#[test]
fn test_add_root_folder_ui_accepts() {
ActiveReadarrBlock::iter().for_each(|active_readarr_block| {
if ADD_ROOT_FOLDER_BLOCKS.contains(&active_readarr_block) {
assert!(AddRootFolderUi::accepts(active_readarr_block.into()));
} else {
assert!(!AddRootFolderUi::accepts(active_readarr_block.into()));
}
});
}
#[rstest]
#[case(
ActiveReadarrBlock::AddRootFolderNameInput,
AddRootFolderPromptHighlights {
name: true,
path: false,
monitor: false,
monitor_new_items: false,
quality_profile: false,
metadata_profile: false,
tags: false,
confirm: false,
}
)]
#[case(
ActiveReadarrBlock::AddRootFolderPathInput,
AddRootFolderPromptHighlights {
name: false,
path: true,
monitor: false,
monitor_new_items: false,
quality_profile: false,
metadata_profile: false,
tags: false,
confirm: false,
}
)]
#[case(
ActiveReadarrBlock::AddRootFolderSelectMonitor,
AddRootFolderPromptHighlights {
name: false,
path: false,
monitor: true,
monitor_new_items: false,
quality_profile: false,
metadata_profile: false,
tags: false,
confirm: false,
}
)]
#[case(
ActiveReadarrBlock::AddRootFolderSelectMonitorNewItems,
AddRootFolderPromptHighlights {
name: false,
path: false,
monitor: false,
monitor_new_items: true,
quality_profile: false,
metadata_profile: false,
tags: false,
confirm: false,
}
)]
#[case(
ActiveReadarrBlock::AddRootFolderSelectQualityProfile,
AddRootFolderPromptHighlights {
name: false,
path: false,
monitor: false,
monitor_new_items: false,
quality_profile: true,
metadata_profile: false,
tags: false,
confirm: false,
}
)]
#[case(
ActiveReadarrBlock::AddRootFolderSelectMetadataProfile,
AddRootFolderPromptHighlights {
name: false,
path: false,
monitor: false,
monitor_new_items: false,
quality_profile: false,
metadata_profile: true,
tags: false,
confirm: false,
}
)]
#[case(
ActiveReadarrBlock::AddRootFolderTagsInput,
AddRootFolderPromptHighlights {
name: false,
path: false,
monitor: false,
monitor_new_items: false,
quality_profile: false,
metadata_profile: false,
tags: true,
confirm: false,
}
)]
#[case(
ActiveReadarrBlock::AddRootFolderConfirmPrompt,
AddRootFolderPromptHighlights {
name: false,
path: false,
monitor: false,
monitor_new_items: false,
quality_profile: false,
metadata_profile: false,
tags: false,
confirm: true,
}
)]
fn test_add_root_folder_prompt_highlights(
#[case] selected_block: ActiveReadarrBlock,
#[case] expected_highlights: AddRootFolderPromptHighlights,
) {
let highlights = add_root_folder_prompt_highlights(selected_block);
assert_eq!(highlights, expected_highlights);
}
#[test]
fn test_add_root_folder_prompt_highlights_covers_every_selection_step() {
for step in ADD_ROOT_FOLDER_SELECTION_BLOCKS {
let highlights = add_root_folder_prompt_highlights(step[0]);
assert_ne!(
highlights,
add_root_folder_prompt_highlights(ActiveReadarrBlock::RootFolders)
);
}
}
mod snapshot_tests {
use super::*;
use crate::app::App;
use crate::models::BlockSelectionState;
use crate::ui::ui_test_utils::test_utils::{TerminalSize, render_to_string_with_app};
fn seed_distinct_profile_lists(app: &mut App<'_>) {
let add_root_folder_modal = app
.data
.readarr_data
.add_root_folder_modal
.as_mut()
.expect("add_root_folder_modal must exist in this context");
add_root_folder_modal
.quality_profile_list
.set_items(vec!["eBook".to_owned()]);
add_root_folder_modal
.metadata_profile_list
.set_items(vec!["Author Only".to_owned()]);
}
#[rstest]
fn test_add_root_folder_ui_renders(
#[values(
ActiveReadarrBlock::AddRootFolderPrompt,
ActiveReadarrBlock::AddRootFolderConfirmPrompt,
ActiveReadarrBlock::AddRootFolderNameInput,
ActiveReadarrBlock::AddRootFolderPathInput,
ActiveReadarrBlock::AddRootFolderSelectMonitor,
ActiveReadarrBlock::AddRootFolderSelectMonitorNewItems,
ActiveReadarrBlock::AddRootFolderSelectQualityProfile,
ActiveReadarrBlock::AddRootFolderSelectMetadataProfile,
ActiveReadarrBlock::AddRootFolderTagsInput
)]
active_readarr_block: ActiveReadarrBlock,
) {
let mut app = App::test_default_fully_populated();
app.push_navigation_stack(active_readarr_block.into());
seed_distinct_profile_lists(&mut app);
app.data.readarr_data.selected_block =
BlockSelectionState::new(ADD_ROOT_FOLDER_SELECTION_BLOCKS);
let output = render_to_string_with_app(TerminalSize::Large, &mut app, |f, app| {
AddRootFolderUi::draw(f, app, f.area());
});
insta::assert_snapshot!(format!("add_root_folder_{active_readarr_block}"), output);
}
#[rstest]
#[case(0, ActiveReadarrBlock::AddRootFolderNameInput)]
#[case(1, ActiveReadarrBlock::AddRootFolderPathInput)]
#[case(2, ActiveReadarrBlock::AddRootFolderSelectMonitor)]
#[case(3, ActiveReadarrBlock::AddRootFolderSelectMonitorNewItems)]
#[case(4, ActiveReadarrBlock::AddRootFolderSelectQualityProfile)]
#[case(5, ActiveReadarrBlock::AddRootFolderSelectMetadataProfile)]
#[case(6, ActiveReadarrBlock::AddRootFolderTagsInput)]
#[case(7, ActiveReadarrBlock::AddRootFolderConfirmPrompt)]
fn test_add_root_folder_modal_ui_renders_step(
#[case] step: usize,
#[case] selected_readarr_block: ActiveReadarrBlock,
) {
let mut app = App::test_default_fully_populated();
app.push_navigation_stack(ActiveReadarrBlock::AddRootFolderPrompt.into());
seed_distinct_profile_lists(&mut app);
let mut selected_block = BlockSelectionState::new(ADD_ROOT_FOLDER_SELECTION_BLOCKS);
selected_block.set_index(0, step);
app.data.readarr_data.selected_block = selected_block;
let output = render_to_string_with_app(TerminalSize::Large, &mut app, |f, app| {
AddRootFolderUi::draw(f, app, f.area());
});
insta::assert_snapshot!(
format!("add_root_folder_step_{step}_{selected_readarr_block}"),
output
);
}
}
}
+102
View File
@@ -0,0 +1,102 @@
use add_root_folder_ui::AddRootFolderUi;
use ratatui::Frame;
use ratatui::layout::{Constraint, Rect};
use ratatui::widgets::{Cell, Row};
use crate::app::App;
use crate::models::Route;
use crate::models::servarr_data::readarr::readarr_data::{
ADD_ROOT_FOLDER_BLOCKS, ActiveReadarrBlock, ROOT_FOLDERS_BLOCKS,
};
use crate::models::servarr_models::RootFolder;
use crate::ui::DrawUi;
use crate::ui::styles::ManagarrStyle;
use crate::ui::utils::layout_block_top_border;
use crate::ui::widgets::confirmation_prompt::ConfirmationPrompt;
use crate::ui::widgets::managarr_table::ManagarrTable;
use crate::ui::widgets::popup::{Popup, Size};
use crate::utils::convert_to_gb;
mod add_root_folder_ui;
#[cfg(test)]
#[path = "root_folders_ui_tests.rs"]
mod root_folders_ui_tests;
pub(super) struct RootFoldersUi;
impl DrawUi for RootFoldersUi {
fn accepts(route: Route) -> bool {
if let Route::Readarr(active_readarr_block, _) = route {
return ROOT_FOLDERS_BLOCKS.contains(&active_readarr_block)
|| ADD_ROOT_FOLDER_BLOCKS.contains(&active_readarr_block);
}
false
}
fn draw(f: &mut Frame<'_>, app: &mut App<'_>, area: Rect) {
if let Route::Readarr(active_readarr_block, _) = app.get_current_route() {
draw_root_folders(f, app, area);
if ADD_ROOT_FOLDER_BLOCKS.contains(&active_readarr_block) {
AddRootFolderUi::draw(f, app, area);
} else if active_readarr_block == ActiveReadarrBlock::DeleteRootFolderPrompt {
let prompt = format!(
"Do you really want to delete this root folder: \n{}?",
app.data.readarr_data.root_folders.current_selection().path
);
let confirmation_prompt = ConfirmationPrompt::new()
.title("Delete Root Folder")
.prompt(&prompt)
.yes_no_value(app.data.readarr_data.prompt_confirm);
f.render_widget(
Popup::new(confirmation_prompt).size(Size::MediumPrompt),
f.area(),
);
}
}
}
}
fn draw_root_folders(f: &mut Frame<'_>, app: &mut App<'_>, area: Rect) {
let root_folders_row_mapping = |root_folders: &RootFolder| {
let RootFolder {
path,
free_space,
unmapped_folders,
..
} = root_folders;
let space: f64 = convert_to_gb(*free_space);
Row::new(vec![
Cell::from(path.to_owned()),
Cell::from(format!("{space:.2} GB")),
Cell::from(
unmapped_folders
.as_ref()
.unwrap_or(&Vec::new())
.len()
.to_string(),
),
])
.primary()
};
let root_folders_table = ManagarrTable::new(
Some(&mut app.data.readarr_data.root_folders),
root_folders_row_mapping,
)
.block(layout_block_top_border())
.loading(app.is_loading)
.headers(["Path", "Free Space", "Unmapped Folders"])
.constraints([
Constraint::Ratio(3, 5),
Constraint::Ratio(1, 5),
Constraint::Ratio(1, 5),
]);
f.render_widget(root_folders_table, area);
}
@@ -0,0 +1,190 @@
#[cfg(test)]
mod tests {
use strum::IntoEnumIterator;
use crate::app::App;
use crate::models::servarr_data::readarr::readarr_data::{
ADD_ROOT_FOLDER_BLOCKS, ActiveReadarrBlock, ROOT_FOLDERS_BLOCKS,
};
use crate::ui::DrawUi;
use crate::ui::readarr_ui::root_folders::RootFoldersUi;
use crate::ui::ui_test_utils::test_utils::render_to_string_with_app;
#[test]
fn test_root_folders_ui_accepts() {
ActiveReadarrBlock::iter().for_each(|active_readarr_block| {
if ROOT_FOLDERS_BLOCKS.contains(&active_readarr_block)
|| ADD_ROOT_FOLDER_BLOCKS.contains(&active_readarr_block)
{
assert!(RootFoldersUi::accepts(active_readarr_block.into()));
} else {
assert!(!RootFoldersUi::accepts(active_readarr_block.into()));
}
});
}
mod snapshot_tests {
use super::*;
use crate::models::BlockSelectionState;
use crate::models::Scrollable;
use crate::models::servarr_data::readarr::readarr_data::ADD_ROOT_FOLDER_SELECTION_BLOCKS;
use crate::models::servarr_models::{RootFolder, UnmappedFolder};
use crate::ui::ui_test_utils::test_utils::TerminalSize;
use rstest::rstest;
fn seed_distinct_root_folders(app: &mut App<'_>) {
app.data.readarr_data.root_folders.set_items(vec![
RootFolder {
id: 1,
path: "/nfs/books".to_owned(),
accessible: true,
free_space: 219902325555200,
unmapped_folders: None,
},
RootFolder {
id: 2,
path: "/nfs/audiobooks".to_owned(),
accessible: false,
free_space: 1099511627776,
unmapped_folders: Some(vec![
UnmappedFolder {
name: "Unsorted Anthologies".to_owned(),
path: "/nfs/audiobooks/unsorted-anthologies".to_owned(),
},
UnmappedFolder {
name: "Pending Imports".to_owned(),
path: "/nfs/audiobooks/pending-imports".to_owned(),
},
UnmappedFolder {
name: "Damaged Rips".to_owned(),
path: "/nfs/audiobooks/damaged-rips".to_owned(),
},
]),
},
]);
}
fn seed_distinct_profile_lists(app: &mut App<'_>) {
let add_root_folder_modal = app
.data
.readarr_data
.add_root_folder_modal
.as_mut()
.expect("add_root_folder_modal must exist in this context");
add_root_folder_modal
.quality_profile_list
.set_items(vec!["eBook".to_owned()]);
add_root_folder_modal
.metadata_profile_list
.set_items(vec!["Author Only".to_owned()]);
}
#[test]
fn test_root_folders_ui_renders_loading() {
let mut app = App::test_default();
app.is_loading = true;
app.push_navigation_stack(ActiveReadarrBlock::RootFolders.into());
let output = render_to_string_with_app(TerminalSize::Large, &mut app, |f, app| {
RootFoldersUi::draw(f, app, f.area());
});
insta::assert_snapshot!(output);
}
#[test]
fn test_root_folders_ui_renders_empty_root_folders() {
let mut app = App::test_default();
app.push_navigation_stack(ActiveReadarrBlock::RootFolders.into());
let output = render_to_string_with_app(TerminalSize::Large, &mut app, |f, app| {
RootFoldersUi::draw(f, app, f.area());
});
insta::assert_snapshot!(output);
}
#[rstest]
fn test_root_folders_ui_renders_root_folders_tab(
#[values(
ActiveReadarrBlock::RootFolders,
ActiveReadarrBlock::DeleteRootFolderPrompt
)]
active_readarr_block: ActiveReadarrBlock,
) {
let mut app = App::test_default_fully_populated();
app.push_navigation_stack(active_readarr_block.into());
let output = render_to_string_with_app(TerminalSize::Large, &mut app, |f, app| {
RootFoldersUi::draw(f, app, f.area());
});
insta::assert_snapshot!(active_readarr_block.to_string(), output);
}
#[rstest]
fn test_root_folders_ui_renders_distinct_root_folders(
#[values(
ActiveReadarrBlock::RootFolders,
ActiveReadarrBlock::DeleteRootFolderPrompt
)]
active_readarr_block: ActiveReadarrBlock,
) {
let mut app = App::test_default_fully_populated();
seed_distinct_root_folders(&mut app);
app.push_navigation_stack(active_readarr_block.into());
let output = render_to_string_with_app(TerminalSize::Large, &mut app, |f, app| {
RootFoldersUi::draw(f, app, f.area());
});
insta::assert_snapshot!(
format!("distinct_root_folders_{active_readarr_block}"),
output
);
}
#[test]
fn test_root_folders_ui_renders_delete_prompt_for_non_default_selection() {
let mut app = App::test_default_fully_populated();
seed_distinct_root_folders(&mut app);
app.data.readarr_data.root_folders.scroll_down();
app.push_navigation_stack(ActiveReadarrBlock::DeleteRootFolderPrompt.into());
let output = render_to_string_with_app(TerminalSize::Large, &mut app, |f, app| {
RootFoldersUi::draw(f, app, f.area());
});
insta::assert_snapshot!(output);
}
#[rstest]
fn test_root_folders_ui_renders_add_root_folder_popup_over_root_folders_table(
#[values(
ActiveReadarrBlock::AddRootFolderPrompt,
ActiveReadarrBlock::AddRootFolderConfirmPrompt,
ActiveReadarrBlock::AddRootFolderNameInput,
ActiveReadarrBlock::AddRootFolderPathInput,
ActiveReadarrBlock::AddRootFolderSelectMonitor,
ActiveReadarrBlock::AddRootFolderSelectMonitorNewItems,
ActiveReadarrBlock::AddRootFolderSelectQualityProfile,
ActiveReadarrBlock::AddRootFolderSelectMetadataProfile,
ActiveReadarrBlock::AddRootFolderTagsInput
)]
active_readarr_block: ActiveReadarrBlock,
) {
let mut app = App::test_default_fully_populated();
seed_distinct_profile_lists(&mut app);
app.data.readarr_data.selected_block =
BlockSelectionState::new(ADD_ROOT_FOLDER_SELECTION_BLOCKS);
app.push_navigation_stack(ActiveReadarrBlock::AddRootFolderPrompt.into());
app.push_navigation_stack(active_readarr_block.into());
let output = render_to_string_with_app(TerminalSize::Large, &mut app, |f, app| {
RootFoldersUi::draw(f, app, f.area());
});
insta::assert_snapshot!(active_readarr_block.to_string(), output);
}
}
}
@@ -0,0 +1,48 @@
---
source: src/ui/readarr_ui/root_folders/add_root_folder_ui_tests.rs
expression: output
---
╭─────────────────────────────────────────── Add Root Folder ───────────────────────────────────────────╮
│ │
│ │
│ │
│ │
│ │
│ │
│ ╭─────────────────────────────────────────────────╮ │
│ Name: │Test Root Folder │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Path: │/nfs/books │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Monitor: │All Books ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Monitor New Books: │All Books ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Quality Profile: │eBook ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Metadata Profile: │Author Only ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Tags: │test │ │
│ ╰─────────────────────────────────────────────────╯ │
│ │
│ │
│ │
│ │
│ │
│ │
│╭───────────────────────────────────────────────────╮╭──────────────────────────────────────────────────╮│
││ Save ││ Cancel ││
│╰───────────────────────────────────────────────────╯╰──────────────────────────────────────────────────╯│
╰─────────────────────────────────────────────────────────────────────────────────────────────────────────╯
@@ -0,0 +1,48 @@
---
source: src/ui/readarr_ui/root_folders/add_root_folder_ui_tests.rs
expression: output
---
╭─────────────────────────────────────────── Add Root Folder ───────────────────────────────────────────╮
│ │
│ │
│ │
│ │
│ │
│ │
│ ╭─────────────────────────────────────────────────╮ │
│ Name: │Test Root Folder │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Path: │/nfs/books │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Monitor: │All Books ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Monitor New Books: │All Books ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Quality Profile: │eBook ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Metadata Profile: │Author Only ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Tags: │test │ │
│ ╰─────────────────────────────────────────────────╯ │
│ │
│ │
│ │
│ │
│ │
│ │
│╭───────────────────────────────────────────────────╮╭──────────────────────────────────────────────────╮│
││ Save ││ Cancel ││
│╰───────────────────────────────────────────────────╯╰──────────────────────────────────────────────────╯│
╰─────────────────────────────────────────────────────────────────────────────────────────────────────────╯
@@ -0,0 +1,48 @@
---
source: src/ui/readarr_ui/root_folders/add_root_folder_ui_tests.rs
expression: output
---
╭─────────────────────────────────────────── Add Root Folder ───────────────────────────────────────────╮
│ │
│ │
│ │
│ │
│ │
│ │
│ ╭─────────────────────────────────────────────────╮ │
│ Name: │Test Root Folder │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Path: │/nfs/books │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Monitor: │All Books ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Monitor New Books: │All Books ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Quality Profile: │eBook ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Metadata Profile: │Author Only ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Tags: │test │ │
│ ╰─────────────────────────────────────────────────╯ │
│ │
│ │
│ │
│ │
│ │
│ │
│╭───────────────────────────────────────────────────╮╭──────────────────────────────────────────────────╮│
││ Save ││ Cancel ││
│╰───────────────────────────────────────────────────╯╰──────────────────────────────────────────────────╯│
╰─────────────────────────────────────────────────────────────────────────────────────────────────────────╯
@@ -0,0 +1,48 @@
---
source: src/ui/readarr_ui/root_folders/add_root_folder_ui_tests.rs
expression: output
---
╭─────────────────────────────────────────── Add Root Folder ───────────────────────────────────────────╮
│ │
│ │
│ │
│ │
│ │
│ │
│ ╭─────────────────────────────────────────────────╮ │
│ Name: │Test Root Folder │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Path: │/nfs/books │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Monitor: │All Books ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Monitor New Books: │All Books ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Quality Profile: │eBook ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Metadata Profile: │Author Only ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Tags: │test │ │
│ ╰─────────────────────────────────────────────────╯ │
│ │
│ │
│ │
│ │
│ │
│ │
│╭───────────────────────────────────────────────────╮╭──────────────────────────────────────────────────╮│
││ Save ││ Cancel ││
│╰───────────────────────────────────────────────────╯╰──────────────────────────────────────────────────╯│
╰─────────────────────────────────────────────────────────────────────────────────────────────────────────╯
@@ -0,0 +1,48 @@
---
source: src/ui/readarr_ui/root_folders/add_root_folder_ui_tests.rs
expression: output
---
╭─────────────────────────────────────────── Add Root Folder ───────────────────────────────────────────╮
│ │
│ │
│ │
│ │
│ │
│ │
│ ╭─────────────────────────────────────────────────╮ │
│ Name: │Test Root Folder │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Path: │/nfs/books │ │
│ ╭───────────────────────────────╮──────────────────────────────╯ │
│ │Author Only │──────────────────────────────╮ │
│ │ │ ▼ │ │
│ │ │──────────────────────────────╯ │
│ │ │──────────────────────────────╮ │
│ Monito│ │ ▼ │ │
│ │ │──────────────────────────────╯ │
│ │ │──────────────────────────────╮ │
│ Qual│ │ ▼ │ │
│ │ │──────────────────────────────╯ │
│ │ │──────────────────────────────╮ │
│ Metad│ │ ▼ │ │
│ │ │──────────────────────────────╯ │
│ │ │──────────────────────────────╮ │
│ ╰───────────────────────────────╯ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ │
│ │
│ │
│ │
│ │
│ │
│╭───────────────────────────────────────────────────╮╭──────────────────────────────────────────────────╮│
││ Save ││ Cancel ││
│╰───────────────────────────────────────────────────╯╰──────────────────────────────────────────────────╯│
╰─────────────────────────────────────────────────────────────────────────────────────────────────────────╯
@@ -0,0 +1,48 @@
---
source: src/ui/readarr_ui/root_folders/add_root_folder_ui_tests.rs
expression: output
---
╭─────────────────────────────────────────── Add Root Folder ───────────────────────────────────────────╮
│ │
│ │
│ │
│ │
│ │
│ │
│ ╭─────────────────────────────────────────────────╮ │
│ Name: │Test Root Folder │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Path: │/nfs/books │ │
│ ╭───────────────────────────────╮──────────────────────────────╯ │
│ │All Books │──────────────────────────────╮ │
│ │Future Books │ ▼ │ │
│ │Missing Books │──────────────────────────────╯ │
│ │Existing Books │──────────────────────────────╮ │
│ Monito│First Book │ ▼ │ │
│ │Latest Book │──────────────────────────────╯ │
│ │None │──────────────────────────────╮ │
│ Qual│Unknown │ ▼ │ │
│ │ │──────────────────────────────╯ │
│ │ │──────────────────────────────╮ │
│ Metad│ │ ▼ │ │
│ │ │──────────────────────────────╯ │
│ │ │──────────────────────────────╮ │
│ ╰───────────────────────────────╯ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ │
│ │
│ │
│ │
│ │
│ │
│╭───────────────────────────────────────────────────╮╭──────────────────────────────────────────────────╮│
││ Save ││ Cancel ││
│╰───────────────────────────────────────────────────╯╰──────────────────────────────────────────────────╯│
╰─────────────────────────────────────────────────────────────────────────────────────────────────────────╯
@@ -0,0 +1,48 @@
---
source: src/ui/readarr_ui/root_folders/add_root_folder_ui_tests.rs
expression: output
---
╭─────────────────────────────────────────── Add Root Folder ───────────────────────────────────────────╮
│ │
│ │
│ │
│ │
│ │
│ │
│ ╭─────────────────────────────────────────────────╮ │
│ Name: │Test Root Folder │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Path: │/nfs/books │ │
│ ╭───────────────────────────────╮──────────────────────────────╯ │
│ │All Books │──────────────────────────────╮ │
│ │No New Books │ ▼ │ │
│ │New Books │──────────────────────────────╯ │
│ │ │──────────────────────────────╮ │
│ Monito│ │ ▼ │ │
│ │ │──────────────────────────────╯ │
│ │ │──────────────────────────────╮ │
│ Qual│ │ ▼ │ │
│ │ │──────────────────────────────╯ │
│ │ │──────────────────────────────╮ │
│ Metad│ │ ▼ │ │
│ │ │──────────────────────────────╯ │
│ │ │──────────────────────────────╮ │
│ ╰───────────────────────────────╯ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ │
│ │
│ │
│ │
│ │
│ │
│╭───────────────────────────────────────────────────╮╭──────────────────────────────────────────────────╮│
││ Save ││ Cancel ││
│╰───────────────────────────────────────────────────╯╰──────────────────────────────────────────────────╯│
╰─────────────────────────────────────────────────────────────────────────────────────────────────────────╯
@@ -0,0 +1,48 @@
---
source: src/ui/readarr_ui/root_folders/add_root_folder_ui_tests.rs
expression: output
---
╭─────────────────────────────────────────── Add Root Folder ───────────────────────────────────────────╮
│ │
│ │
│ │
│ │
│ │
│ │
│ ╭─────────────────────────────────────────────────╮ │
│ Name: │Test Root Folder │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Path: │/nfs/books │ │
│ ╭───────────────────────────────╮──────────────────────────────╯ │
│ │eBook │──────────────────────────────╮ │
│ │ │ ▼ │ │
│ │ │──────────────────────────────╯ │
│ │ │──────────────────────────────╮ │
│ Monito│ │ ▼ │ │
│ │ │──────────────────────────────╯ │
│ │ │──────────────────────────────╮ │
│ Qual│ │ ▼ │ │
│ │ │──────────────────────────────╯ │
│ │ │──────────────────────────────╮ │
│ Metad│ │ ▼ │ │
│ │ │──────────────────────────────╯ │
│ │ │──────────────────────────────╮ │
│ ╰───────────────────────────────╯ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ │
│ │
│ │
│ │
│ │
│ │
│╭───────────────────────────────────────────────────╮╭──────────────────────────────────────────────────╮│
││ Save ││ Cancel ││
│╰───────────────────────────────────────────────────╯╰──────────────────────────────────────────────────╯│
╰─────────────────────────────────────────────────────────────────────────────────────────────────────────╯
@@ -0,0 +1,48 @@
---
source: src/ui/readarr_ui/root_folders/add_root_folder_ui_tests.rs
expression: output
---
╭─────────────────────────────────────────── Add Root Folder ───────────────────────────────────────────╮
│ │
│ │
│ │
│ │
│ │
│ │
│ ╭─────────────────────────────────────────────────╮ │
│ Name: │Test Root Folder │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Path: │/nfs/books │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Monitor: │All Books ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Monitor New Books: │All Books ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Quality Profile: │eBook ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Metadata Profile: │Author Only ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Tags: │test │ │
│ ╰─────────────────────────────────────────────────╯ │
│ │
│ │
│ │
│ │
│ │
│ │
│╭───────────────────────────────────────────────────╮╭──────────────────────────────────────────────────╮│
││ Save ││ Cancel ││
│╰───────────────────────────────────────────────────╯╰──────────────────────────────────────────────────╯│
╰─────────────────────────────────────────────────────────────────────────────────────────────────────────╯
@@ -0,0 +1,48 @@
---
source: src/ui/readarr_ui/root_folders/add_root_folder_ui_tests.rs
expression: output
---
╭─────────────────────────────────────────── Add Root Folder ───────────────────────────────────────────╮
│ │
│ │
│ │
│ │
│ │
│ │
│ ╭─────────────────────────────────────────────────╮ │
│ Name: │Test Root Folder │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Path: │/nfs/books │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Monitor: │All Books ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Monitor New Books: │All Books ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Quality Profile: │eBook ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Metadata Profile: │Author Only ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Tags: │test │ │
│ ╰─────────────────────────────────────────────────╯ │
│ │
│ │
│ │
│ │
│ │
│ │
│╭───────────────────────────────────────────────────╮╭──────────────────────────────────────────────────╮│
││ Save ││ Cancel ││
│╰───────────────────────────────────────────────────╯╰──────────────────────────────────────────────────╯│
╰─────────────────────────────────────────────────────────────────────────────────────────────────────────╯
@@ -0,0 +1,48 @@
---
source: src/ui/readarr_ui/root_folders/add_root_folder_ui_tests.rs
expression: output
---
╭─────────────────────────────────────────── Add Root Folder ───────────────────────────────────────────╮
│ │
│ │
│ │
│ │
│ │
│ │
│ ╭─────────────────────────────────────────────────╮ │
│ Name: │Test Root Folder │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Path: │/nfs/books │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Monitor: │All Books ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Monitor New Books: │All Books ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Quality Profile: │eBook ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Metadata Profile: │Author Only ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Tags: │test │ │
│ ╰─────────────────────────────────────────────────╯ │
│ │
│ │
│ │
│ │
│ │
│ │
│╭───────────────────────────────────────────────────╮╭──────────────────────────────────────────────────╮│
││ Save ││ Cancel ││
│╰───────────────────────────────────────────────────╯╰──────────────────────────────────────────────────╯│
╰─────────────────────────────────────────────────────────────────────────────────────────────────────────╯
@@ -0,0 +1,48 @@
---
source: src/ui/readarr_ui/root_folders/add_root_folder_ui_tests.rs
expression: output
---
╭─────────────────────────────────────────── Add Root Folder ───────────────────────────────────────────╮
│ │
│ │
│ │
│ │
│ │
│ │
│ ╭─────────────────────────────────────────────────╮ │
│ Name: │Test Root Folder │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Path: │/nfs/books │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Monitor: │All Books ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Monitor New Books: │All Books ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Quality Profile: │eBook ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Metadata Profile: │Author Only ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Tags: │test │ │
│ ╰─────────────────────────────────────────────────╯ │
│ │
│ │
│ │
│ │
│ │
│ │
│╭───────────────────────────────────────────────────╮╭──────────────────────────────────────────────────╮│
││ Save ││ Cancel ││
│╰───────────────────────────────────────────────────╯╰──────────────────────────────────────────────────╯│
╰─────────────────────────────────────────────────────────────────────────────────────────────────────────╯
@@ -0,0 +1,48 @@
---
source: src/ui/readarr_ui/root_folders/add_root_folder_ui_tests.rs
expression: output
---
╭─────────────────────────────────────────── Add Root Folder ───────────────────────────────────────────╮
│ │
│ │
│ │
│ │
│ │
│ │
│ ╭─────────────────────────────────────────────────╮ │
│ Name: │Test Root Folder │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Path: │/nfs/books │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Monitor: │All Books ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Monitor New Books: │All Books ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Quality Profile: │eBook ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Metadata Profile: │Author Only ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Tags: │test │ │
│ ╰─────────────────────────────────────────────────╯ │
│ │
│ │
│ │
│ │
│ │
│ │
│╭───────────────────────────────────────────────────╮╭──────────────────────────────────────────────────╮│
││ Save ││ Cancel ││
│╰───────────────────────────────────────────────────╯╰──────────────────────────────────────────────────╯│
╰─────────────────────────────────────────────────────────────────────────────────────────────────────────╯
@@ -0,0 +1,48 @@
---
source: src/ui/readarr_ui/root_folders/add_root_folder_ui_tests.rs
expression: output
---
╭─────────────────────────────────────────── Add Root Folder ───────────────────────────────────────────╮
│ │
│ │
│ │
│ │
│ │
│ │
│ ╭─────────────────────────────────────────────────╮ │
│ Name: │Test Root Folder │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Path: │/nfs/books │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Monitor: │All Books ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Monitor New Books: │All Books ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Quality Profile: │eBook ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Metadata Profile: │Author Only ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Tags: │test │ │
│ ╰─────────────────────────────────────────────────╯ │
│ │
│ │
│ │
│ │
│ │
│ │
│╭───────────────────────────────────────────────────╮╭──────────────────────────────────────────────────╮│
││ Save ││ Cancel ││
│╰───────────────────────────────────────────────────╯╰──────────────────────────────────────────────────╯│
╰─────────────────────────────────────────────────────────────────────────────────────────────────────────╯
@@ -0,0 +1,48 @@
---
source: src/ui/readarr_ui/root_folders/add_root_folder_ui_tests.rs
expression: output
---
╭─────────────────────────────────────────── Add Root Folder ───────────────────────────────────────────╮
│ │
│ │
│ │
│ │
│ │
│ │
│ ╭─────────────────────────────────────────────────╮ │
│ Name: │Test Root Folder │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Path: │/nfs/books │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Monitor: │All Books ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Monitor New Books: │All Books ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Quality Profile: │eBook ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Metadata Profile: │Author Only ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Tags: │test │ │
│ ╰─────────────────────────────────────────────────╯ │
│ │
│ │
│ │
│ │
│ │
│ │
│╭───────────────────────────────────────────────────╮╭──────────────────────────────────────────────────╮│
││ Save ││ Cancel ││
│╰───────────────────────────────────────────────────╯╰──────────────────────────────────────────────────╯│
╰─────────────────────────────────────────────────────────────────────────────────────────────────────────╯
@@ -0,0 +1,48 @@
---
source: src/ui/readarr_ui/root_folders/add_root_folder_ui_tests.rs
expression: output
---
╭─────────────────────────────────────────── Add Root Folder ───────────────────────────────────────────╮
│ │
│ │
│ │
│ │
│ │
│ │
│ ╭─────────────────────────────────────────────────╮ │
│ Name: │Test Root Folder │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Path: │/nfs/books │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Monitor: │All Books ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Monitor New Books: │All Books ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Quality Profile: │eBook ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Metadata Profile: │Author Only ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Tags: │test │ │
│ ╰─────────────────────────────────────────────────╯ │
│ │
│ │
│ │
│ │
│ │
│ │
│╭───────────────────────────────────────────────────╮╭──────────────────────────────────────────────────╮│
││ Save ││ Cancel ││
│╰───────────────────────────────────────────────────╯╰──────────────────────────────────────────────────╯│
╰─────────────────────────────────────────────────────────────────────────────────────────────────────────╯
@@ -0,0 +1,48 @@
---
source: src/ui/readarr_ui/root_folders/add_root_folder_ui_tests.rs
expression: output
---
╭─────────────────────────────────────────── Add Root Folder ───────────────────────────────────────────╮
│ │
│ │
│ │
│ │
│ │
│ │
│ ╭─────────────────────────────────────────────────╮ │
│ Name: │Test Root Folder │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Path: │/nfs/books │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Monitor: │All Books ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Monitor New Books: │All Books ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Quality Profile: │eBook ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Metadata Profile: │Author Only ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Tags: │test │ │
│ ╰─────────────────────────────────────────────────╯ │
│ │
│ │
│ │
│ │
│ │
│ │
│╭───────────────────────────────────────────────────╮╭──────────────────────────────────────────────────╮│
││ Save ││ Cancel ││
│╰───────────────────────────────────────────────────╯╰──────────────────────────────────────────────────╯│
╰─────────────────────────────────────────────────────────────────────────────────────────────────────────╯
@@ -0,0 +1,48 @@
---
source: src/ui/readarr_ui/root_folders/root_folders_ui_tests.rs
expression: output
---
─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Path Free Space Unmapped Folders
=> /nfs 204800.00 GB 0
╭─────────────────────────────────────────── Add Root Folder ───────────────────────────────────────────╮
│ │
│ │
│ │
│ │
│ │
│ │
│ ╭─────────────────────────────────────────────────╮ │
│ Name: │Test Root Folder │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Path: │/nfs/books │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Monitor: │All Books ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Monitor New Books: │All Books ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Quality Profile: │eBook ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Metadata Profile: │Author Only ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Tags: │test │ │
│ ╰─────────────────────────────────────────────────╯ │
│ │
│ │
│ │
│ │
│ │
│ │
│╭───────────────────────────────────────────────────╮╭──────────────────────────────────────────────────╮│
││ Save ││ Cancel ││
│╰───────────────────────────────────────────────────╯╰──────────────────────────────────────────────────╯│
╰─────────────────────────────────────────────────────────────────────────────────────────────────────────╯
@@ -0,0 +1,48 @@
---
source: src/ui/readarr_ui/root_folders/root_folders_ui_tests.rs
expression: output
---
─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Path Free Space Unmapped Folders
=> /nfs 204800.00 GB 0
╭─────────────────────────────────────────── Add Root Folder ───────────────────────────────────────────╮
│ │
│ │
│ │
│ │
│ │
│ │
│ ╭─────────────────────────────────────────────────╮ │
│ Name: │Test Root Folder │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Path: │/nfs/books │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Monitor: │All Books ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Monitor New Books: │All Books ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Quality Profile: │eBook ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Metadata Profile: │Author Only ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Tags: │test │ │
│ ╰─────────────────────────────────────────────────╯ │
│ │
│ │
│ │
│ │
│ │
│ │
│╭───────────────────────────────────────────────────╮╭──────────────────────────────────────────────────╮│
││ Save ││ Cancel ││
│╰───────────────────────────────────────────────────╯╰──────────────────────────────────────────────────╯│
╰─────────────────────────────────────────────────────────────────────────────────────────────────────────╯
@@ -0,0 +1,48 @@
---
source: src/ui/readarr_ui/root_folders/root_folders_ui_tests.rs
expression: output
---
─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Path Free Space Unmapped Folders
=> /nfs 204800.00 GB 0
╭─────────────────────────────────────────── Add Root Folder ───────────────────────────────────────────╮
│ │
│ │
│ │
│ │
│ │
│ │
│ ╭─────────────────────────────────────────────────╮ │
│ Name: │Test Root Folder │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Path: │/nfs/books │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Monitor: │All Books ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Monitor New Books: │All Books ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Quality Profile: │eBook ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Metadata Profile: │Author Only ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Tags: │test │ │
│ ╰─────────────────────────────────────────────────╯ │
│ │
│ │
│ │
│ │
│ │
│ │
│╭───────────────────────────────────────────────────╮╭──────────────────────────────────────────────────╮│
││ Save ││ Cancel ││
│╰───────────────────────────────────────────────────╯╰──────────────────────────────────────────────────╯│
╰─────────────────────────────────────────────────────────────────────────────────────────────────────────╯
@@ -0,0 +1,48 @@
---
source: src/ui/readarr_ui/root_folders/root_folders_ui_tests.rs
expression: output
---
─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Path Free Space Unmapped Folders
=> /nfs 204800.00 GB 0
╭─────────────────────────────────────────── Add Root Folder ───────────────────────────────────────────╮
│ │
│ │
│ │
│ │
│ │
│ │
│ ╭─────────────────────────────────────────────────╮ │
│ Name: │Test Root Folder │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Path: │/nfs/books │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Monitor: │All Books ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Monitor New Books: │All Books ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Quality Profile: │eBook ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Metadata Profile: │Author Only ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Tags: │test │ │
│ ╰─────────────────────────────────────────────────╯ │
│ │
│ │
│ │
│ │
│ │
│ │
│╭───────────────────────────────────────────────────╮╭──────────────────────────────────────────────────╮│
││ Save ││ Cancel ││
│╰───────────────────────────────────────────────────╯╰──────────────────────────────────────────────────╯│
╰─────────────────────────────────────────────────────────────────────────────────────────────────────────╯
@@ -0,0 +1,48 @@
---
source: src/ui/readarr_ui/root_folders/root_folders_ui_tests.rs
expression: output
---
─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Path Free Space Unmapped Folders
=> /nfs 204800.00 GB 0
╭─────────────────────────────────────────── Add Root Folder ───────────────────────────────────────────╮
│ │
│ │
│ │
│ │
│ │
│ │
│ ╭─────────────────────────────────────────────────╮ │
│ Name: │Test Root Folder │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Path: │/nfs/books │ │
│ ╭───────────────────────────────╮──────────────────────────────╯ │
│ │Author Only │──────────────────────────────╮ │
│ │ │ ▼ │ │
│ │ │──────────────────────────────╯ │
│ │ │──────────────────────────────╮ │
│ Monito│ │ ▼ │ │
│ │ │──────────────────────────────╯ │
│ │ │──────────────────────────────╮ │
│ Qual│ │ ▼ │ │
│ │ │──────────────────────────────╯ │
│ │ │──────────────────────────────╮ │
│ Metad│ │ ▼ │ │
│ │ │──────────────────────────────╯ │
│ │ │──────────────────────────────╮ │
│ ╰───────────────────────────────╯ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ │
│ │
│ │
│ │
│ │
│ │
│╭───────────────────────────────────────────────────╮╭──────────────────────────────────────────────────╮│
││ Save ││ Cancel ││
│╰───────────────────────────────────────────────────╯╰──────────────────────────────────────────────────╯│
╰─────────────────────────────────────────────────────────────────────────────────────────────────────────╯
@@ -0,0 +1,48 @@
---
source: src/ui/readarr_ui/root_folders/root_folders_ui_tests.rs
expression: output
---
─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Path Free Space Unmapped Folders
=> /nfs 204800.00 GB 0
╭─────────────────────────────────────────── Add Root Folder ───────────────────────────────────────────╮
│ │
│ │
│ │
│ │
│ │
│ │
│ ╭─────────────────────────────────────────────────╮ │
│ Name: │Test Root Folder │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Path: │/nfs/books │ │
│ ╭───────────────────────────────╮──────────────────────────────╯ │
│ │All Books │──────────────────────────────╮ │
│ │Future Books │ ▼ │ │
│ │Missing Books │──────────────────────────────╯ │
│ │Existing Books │──────────────────────────────╮ │
│ Monito│First Book │ ▼ │ │
│ │Latest Book │──────────────────────────────╯ │
│ │None │──────────────────────────────╮ │
│ Qual│Unknown │ ▼ │ │
│ │ │──────────────────────────────╯ │
│ │ │──────────────────────────────╮ │
│ Metad│ │ ▼ │ │
│ │ │──────────────────────────────╯ │
│ │ │──────────────────────────────╮ │
│ ╰───────────────────────────────╯ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ │
│ │
│ │
│ │
│ │
│ │
│╭───────────────────────────────────────────────────╮╭──────────────────────────────────────────────────╮│
││ Save ││ Cancel ││
│╰───────────────────────────────────────────────────╯╰──────────────────────────────────────────────────╯│
╰─────────────────────────────────────────────────────────────────────────────────────────────────────────╯
@@ -0,0 +1,48 @@
---
source: src/ui/readarr_ui/root_folders/root_folders_ui_tests.rs
expression: output
---
─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Path Free Space Unmapped Folders
=> /nfs 204800.00 GB 0
╭─────────────────────────────────────────── Add Root Folder ───────────────────────────────────────────╮
│ │
│ │
│ │
│ │
│ │
│ │
│ ╭─────────────────────────────────────────────────╮ │
│ Name: │Test Root Folder │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Path: │/nfs/books │ │
│ ╭───────────────────────────────╮──────────────────────────────╯ │
│ │All Books │──────────────────────────────╮ │
│ │No New Books │ ▼ │ │
│ │New Books │──────────────────────────────╯ │
│ │ │──────────────────────────────╮ │
│ Monito│ │ ▼ │ │
│ │ │──────────────────────────────╯ │
│ │ │──────────────────────────────╮ │
│ Qual│ │ ▼ │ │
│ │ │──────────────────────────────╯ │
│ │ │──────────────────────────────╮ │
│ Metad│ │ ▼ │ │
│ │ │──────────────────────────────╯ │
│ │ │──────────────────────────────╮ │
│ ╰───────────────────────────────╯ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ │
│ │
│ │
│ │
│ │
│ │
│╭───────────────────────────────────────────────────╮╭──────────────────────────────────────────────────╮│
││ Save ││ Cancel ││
│╰───────────────────────────────────────────────────╯╰──────────────────────────────────────────────────╯│
╰─────────────────────────────────────────────────────────────────────────────────────────────────────────╯
@@ -0,0 +1,48 @@
---
source: src/ui/readarr_ui/root_folders/root_folders_ui_tests.rs
expression: output
---
─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Path Free Space Unmapped Folders
=> /nfs 204800.00 GB 0
╭─────────────────────────────────────────── Add Root Folder ───────────────────────────────────────────╮
│ │
│ │
│ │
│ │
│ │
│ │
│ ╭─────────────────────────────────────────────────╮ │
│ Name: │Test Root Folder │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Path: │/nfs/books │ │
│ ╭───────────────────────────────╮──────────────────────────────╯ │
│ │eBook │──────────────────────────────╮ │
│ │ │ ▼ │ │
│ │ │──────────────────────────────╯ │
│ │ │──────────────────────────────╮ │
│ Monito│ │ ▼ │ │
│ │ │──────────────────────────────╯ │
│ │ │──────────────────────────────╮ │
│ Qual│ │ ▼ │ │
│ │ │──────────────────────────────╯ │
│ │ │──────────────────────────────╮ │
│ Metad│ │ ▼ │ │
│ │ │──────────────────────────────╯ │
│ │ │──────────────────────────────╮ │
│ ╰───────────────────────────────╯ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ │
│ │
│ │
│ │
│ │
│ │
│╭───────────────────────────────────────────────────╮╭──────────────────────────────────────────────────╮│
││ Save ││ Cancel ││
│╰───────────────────────────────────────────────────╯╰──────────────────────────────────────────────────╯│
╰─────────────────────────────────────────────────────────────────────────────────────────────────────────╯
@@ -0,0 +1,48 @@
---
source: src/ui/readarr_ui/root_folders/root_folders_ui_tests.rs
expression: output
---
─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Path Free Space Unmapped Folders
=> /nfs 204800.00 GB 0
╭─────────────────────────────────────────── Add Root Folder ───────────────────────────────────────────╮
│ │
│ │
│ │
│ │
│ │
│ │
│ ╭─────────────────────────────────────────────────╮ │
│ Name: │Test Root Folder │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Path: │/nfs/books │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Monitor: │All Books ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Monitor New Books: │All Books ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Quality Profile: │eBook ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Metadata Profile: │Author Only ▼ │ │
│ ╰─────────────────────────────────────────────────╯ │
│ ╭─────────────────────────────────────────────────╮ │
│ Tags: │test │ │
│ ╰─────────────────────────────────────────────────╯ │
│ │
│ │
│ │
│ │
│ │
│ │
│╭───────────────────────────────────────────────────╮╭──────────────────────────────────────────────────╮│
││ Save ││ Cancel ││
│╰───────────────────────────────────────────────────╯╰──────────────────────────────────────────────────╯│
╰─────────────────────────────────────────────────────────────────────────────────────────────────────────╯
@@ -0,0 +1,38 @@
---
source: src/ui/readarr_ui/root_folders/root_folders_ui_tests.rs
expression: output
---
─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Path Free Space Unmapped Folders
=> /nfs 204800.00 GB 0
╭────────────────── Delete Root Folder ───────────────────╮
│ Do you really want to delete this root folder: │
│ /nfs? │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│╭────────────────────────────╮╭───────────────────────────╮│
││ Yes ││ No ││
│╰────────────────────────────╯╰───────────────────────────╯│
╰───────────────────────────────────────────────────────────╯
@@ -0,0 +1,7 @@
---
source: src/ui/readarr_ui/root_folders/root_folders_ui_tests.rs
expression: output
---
─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Path Free Space Unmapped Folders
=> /nfs 204800.00 GB 0
@@ -0,0 +1,38 @@
---
source: src/ui/readarr_ui/root_folders/root_folders_ui_tests.rs
expression: output
---
─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Path Free Space Unmapped Folders
=> /nfs/books 204800.00 GB 0
/nfs/audiobooks 1024.00 GB 3
╭────────────────── Delete Root Folder ───────────────────╮
│ Do you really want to delete this root folder: │
│ /nfs/books? │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│╭────────────────────────────╮╭───────────────────────────╮│
││ Yes ││ No ││
│╰────────────────────────────╯╰───────────────────────────╯│
╰───────────────────────────────────────────────────────────╯
@@ -0,0 +1,8 @@
---
source: src/ui/readarr_ui/root_folders/root_folders_ui_tests.rs
expression: output
---
─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Path Free Space Unmapped Folders
=> /nfs/books 204800.00 GB 0
/nfs/audiobooks 1024.00 GB 3
@@ -0,0 +1,38 @@
---
source: src/ui/readarr_ui/root_folders/root_folders_ui_tests.rs
expression: output
---
─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Path Free Space Unmapped Folders
/nfs/books 204800.00 GB 0
=> /nfs/audiobooks 1024.00 GB 3
╭────────────────── Delete Root Folder ───────────────────╮
│ Do you really want to delete this root folder: │
│ /nfs/audiobooks? │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│╭────────────────────────────╮╭───────────────────────────╮│
││ Yes ││ No ││
│╰────────────────────────────╯╰───────────────────────────╯│
╰───────────────────────────────────────────────────────────╯
@@ -0,0 +1,5 @@
---
source: src/ui/readarr_ui/root_folders/root_folders_ui_tests.rs
expression: output
---
─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
@@ -0,0 +1,8 @@
---
source: src/ui/readarr_ui/root_folders/root_folders_ui_tests.rs
expression: output
---
─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Loading ...