From 2b508d278f946bcd9a245501401ca4918a13f61f Mon Sep 17 00:00:00 2001 From: Tim Oram Date: Thu, 15 Feb 2024 13:22:24 -0330 Subject: Remove unused new functions in config module --- src/config/key_bindings.rs | 14 +------------- src/config/theme.rs | 18 +++--------------- src/display.rs | 24 ++++++++++++++---------- src/input/key_bindings.rs | 5 ----- src/view/tests.rs | 2 +- src/view/thread.rs | 2 +- 6 files changed, 20 insertions(+), 45 deletions(-) diff --git a/src/config/key_bindings.rs b/src/config/key_bindings.rs index e11ae97..b81b235 100644 --- a/src/config/key_bindings.rs +++ b/src/config/key_bindings.rs @@ -114,13 +114,6 @@ pub(crate) struct KeyBindings { } impl KeyBindings { - /// Create a new configuration with default values. - #[must_use] - #[allow(clippy::missing_panics_doc)] - pub(crate) fn new() -> Self { - Self::new_with_config(None).unwrap() // should never error with None config - } - pub(super) fn new_with_config(git_config: Option<&Config>) -> Result { let confirm_no = get_input(git_config, "interactive-rebase-tool.inputConfirmNo", "n")? .iter() @@ -202,7 +195,7 @@ mod tests { macro_rules! config_test { ($key:ident, $config_name:literal, $default:literal) => { - let config = KeyBindings::new(); + let config = KeyBindings::new_with_config(None).unwrap(); let value = config.$key[0].as_str(); assert_eq!( value, @@ -229,11 +222,6 @@ mod tests { }; } - #[test] - fn new() { - let _config = KeyBindings::new(); - } - #[test] fn try_from_git_config() { with_git_config(&[], |git_config| { diff --git a/src/config/theme.rs b/src/config/theme.rs index b025cb7..6997120 100644 --- a/src/config/theme.rs +++ b/src/config/theme.rs @@ -74,15 +74,8 @@ pub(crate) struct Theme { } impl Theme { - /// Create a new configuration with default values. - #[must_use] - #[allow(clippy::missing_panics_doc)] - pub(crate) fn new() -> Self { - Self::new_with_config(None).unwrap() // should never error with None config - } - /// Create a new theme from a Git Config reference. - pub(super) fn new_with_config(git_config: Option<&Config>) -> Result { + pub(crate) fn new_with_config(git_config: Option<&Config>) -> Result { Ok(Self { character_vertical_spacing: get_string( git_config, @@ -152,7 +145,7 @@ mod tests { macro_rules! config_test { ($key:ident, $config_name:literal, $default:expr) => { - let config = Theme::new(); + let config = Theme::new_with_config(None).unwrap(); let value = config.$key; assert_eq!( value, @@ -179,11 +172,6 @@ mod tests { }; } - #[test] - fn new() { - let _config = Theme::new(); - } - #[test] fn try_from_git_config() { with_git_config(&[], |git_config| { @@ -200,7 +188,7 @@ mod tests { #[test] fn character_vertical_spacing() { - assert_eq!(Theme::new().character_vertical_spacing, "~"); + assert_eq!(Theme::new_with_config(None).unwrap().character_vertical_spacing, "~"); with_git_config( &["[interactive-rebase-tool]", "verticalSpacingCharacter = \"X\""], |config| { diff --git a/src/display.rs b/src/display.rs index f502a52..c20c0ec 100644 --- a/src/display.rs +++ b/src/display.rs @@ -369,16 +369,20 @@ mod tests { use super::*; use crate::test_helpers::mocks; + fn create_theme() -> Theme { + Theme::new_with_config(None).unwrap() + } + #[test] fn draw_str() { - let mut display = Display::new(mocks::CrossTerm::new(), &Theme::new()); + let mut display = Display::new(mocks::CrossTerm::new(), &create_theme()); display.draw_str("Test String").unwrap(); assert_eq!(display.tui.get_output(), &["Test String"]); } #[test] fn clear() { - let mut display = Display::new(mocks::CrossTerm::new(), &Theme::new()); + let mut display = Display::new(mocks::CrossTerm::new(), &create_theme()); display.draw_str("Test String").unwrap(); display.set_dim(true).unwrap(); display.set_reverse(true).unwrap(); @@ -392,7 +396,7 @@ mod tests { #[test] fn refresh() { - let mut display = Display::new(mocks::CrossTerm::new(), &Theme::new()); + let mut display = Display::new(mocks::CrossTerm::new(), &create_theme()); display.refresh().unwrap(); assert!(!display.tui.is_dirty()); } @@ -532,7 +536,7 @@ mod tests { #[case] expected_foreground: CrosstermColor, #[case] expected_background: CrosstermColor, ) { - let mut display = Display::new(mocks::CrossTerm::new(), &Theme::new()); + let mut display = Display::new(mocks::CrossTerm::new(), &create_theme()); display.color(display_color, selected).unwrap(); assert!( display @@ -551,7 +555,7 @@ mod tests { #[case::dim_underline(true, true, false)] #[case::all_on(true, true, true)] fn style(#[case] dim: bool, #[case] underline: bool, #[case] reverse: bool) { - let mut display = Display::new(mocks::CrossTerm::new(), &Theme::new()); + let mut display = Display::new(mocks::CrossTerm::new(), &create_theme()); display.set_style(dim, underline, reverse).unwrap(); assert_eq!(display.tui.is_dimmed(), dim); assert_eq!(display.tui.is_underline(), underline); @@ -560,21 +564,21 @@ mod tests { #[test] fn get_window_size() { - let mut display = Display::new(mocks::CrossTerm::new(), &Theme::new()); + let mut display = Display::new(mocks::CrossTerm::new(), &create_theme()); display.tui.set_size(Size::new(12, 10)); assert_eq!(display.get_window_size(), Size::new(12, 10)); } #[test] fn ensure_at_line_start() { - let mut display = Display::new(mocks::CrossTerm::new(), &Theme::new()); + let mut display = Display::new(mocks::CrossTerm::new(), &create_theme()); display.ensure_at_line_start().unwrap(); assert_eq!(display.tui.get_position(), (0, 0)); } #[test] fn move_from_end_of_line() { - let mut display = Display::new(mocks::CrossTerm::new(), &Theme::new()); + let mut display = Display::new(mocks::CrossTerm::new(), &create_theme()); display.tui.set_size(Size::new(20, 10)); display.move_from_end_of_line(5).unwrap(); // character after the 15th character (0-indexed) @@ -583,14 +587,14 @@ mod tests { #[test] fn start() { - let mut display = Display::new(mocks::CrossTerm::new(), &Theme::new()); + let mut display = Display::new(mocks::CrossTerm::new(), &create_theme()); display.start().unwrap(); assert_eq!(display.tui.get_state(), mocks::CrosstermMockState::Normal); } #[test] fn end() { - let mut display = Display::new(mocks::CrossTerm::new(), &Theme::new()); + let mut display = Display::new(mocks::CrossTerm::new(), &create_theme()); display.end().unwrap(); assert_eq!(display.tui.get_state(), mocks::CrosstermMockState::Ended); } diff --git a/src/input/key_bindings.rs b/src/input/key_bindings.rs index bf45601..550c82d 100644 --- a/src/input/key_bindings.rs +++ b/src/input/key_bindings.rs @@ -162,11 +162,6 @@ mod tests { use super::*; use crate::input::KeyEvent; - #[test] - fn new() { - let _key_bindings = KeyBindings::new(&crate::config::KeyBindings::new()); - } - #[test] fn map_keybindings_with_modifiers() { assert_eq!(map_keybindings(&[String::from("ControlAltShiftUp")]), vec![Event::Key( diff --git a/src/view/tests.rs b/src/view/tests.rs index 2251460..4bfb46d 100644 --- a/src/view/tests.rs +++ b/src/view/tests.rs @@ -2,7 +2,7 @@ use super::*; use crate::{config::Theme, display::Size, test_helpers::mocks}; fn assert_render(width: usize, height: usize, view_data: &ViewData, expected: &[&str]) { - let theme = Theme::new(); + let theme = Theme::new_with_config(None).unwrap(); let mut crossterm = mocks::CrossTerm::new(); let readonly_tui = crossterm.clone(); crossterm.set_size(Size::new(width, height)); diff --git a/src/view/thread.rs b/src/view/thread.rs index 27fb5f7..ddd609e 100644 --- a/src/view/thread.rs +++ b/src/view/thread.rs @@ -176,7 +176,7 @@ mod tests { fn with_view(tui: CT, callback: C) where C: FnOnce(View) { - let theme = Theme::new(); + let theme = Theme::new_with_config(None).unwrap(); let display = Display::new(tui, &theme); callback(View::new(display, "~", "?")); } -- cgit v1.2.3