Organize tests

pull/109/head
Arijit Basu 3 years ago committed by Arijit Basu
parent f38398e900
commit 2470827aac

@ -694,3 +694,35 @@ impl Config {
Ok(result)
}
}
#[cfg(test)]
mod test {
use super::*;
use std::collections::HashMap;
#[test]
fn test_compatibility() {
let config = Config::default();
assert!(config.is_compatible().unwrap());
assert_eq!(config.upgrade_notification().unwrap(), None);
}
#[test]
fn test_extend_hashmap() {
let mut a = HashMap::new();
let mut b = HashMap::new();
a.insert("a", "a");
a.insert("b", "a");
b.insert("b", "b");
b.insert("c", "b");
a.extend(b);
assert_eq!(a.get("a"), Some(&"a"));
assert_eq!(a.get("b"), Some(&"b"));
assert_eq!(a.get("c"), Some(&"b"));
}
}

@ -557,3 +557,153 @@ pub fn draw<B: Backend>(f: &mut Frame<B>, app: &app::App, hb: &Handlebars) {
draw_selection(f, right_chunks[0], app, hb);
draw_help_menu(f, right_chunks[1], app, hb);
}
#[cfg(test)]
mod test {
use super::*;
use crate::config;
use tui::style::Color;
use tui::style::Modifier;
#[test]
fn test_extend_style() {
let a = Style {
fg: Some(Color::Red),
bg: None,
add_modifier: Some(Modifier::BOLD),
sub_modifier: None,
};
let b = Style {
fg: None,
bg: Some(Color::Blue),
add_modifier: None,
sub_modifier: Some(Modifier::DIM),
};
let c = Style {
fg: Some(Color::Cyan),
bg: Some(Color::Magenta),
add_modifier: Some(Modifier::CROSSED_OUT),
sub_modifier: Some(Modifier::ITALIC),
};
assert_eq!(
a.clone().extend(b.clone()),
Style {
fg: Some(Color::Red),
bg: Some(Color::Blue),
add_modifier: Some(Modifier::BOLD),
sub_modifier: Some(Modifier::DIM),
}
);
assert_eq!(
b.clone().extend(a.clone()),
Style {
fg: Some(Color::Red),
bg: Some(Color::Blue),
add_modifier: Some(Modifier::BOLD),
sub_modifier: Some(Modifier::DIM),
}
);
assert_eq!(
a.clone().extend(c.clone()),
Style {
fg: Some(Color::Cyan),
bg: Some(Color::Magenta),
add_modifier: Some(Modifier::CROSSED_OUT),
sub_modifier: Some(Modifier::ITALIC),
}
);
assert_eq!(
c.clone().extend(a.clone()),
Style {
fg: Some(Color::Red),
bg: Some(Color::Magenta),
add_modifier: Some(Modifier::BOLD),
sub_modifier: Some(Modifier::ITALIC),
}
);
}
#[test]
fn test_extend_ui_config() {
let a = config::UiConfig {
prefix: Some("a".to_string()),
suffix: None,
style: Style {
fg: Some(Color::Red),
bg: None,
add_modifier: Some(Modifier::BOLD),
sub_modifier: None,
},
};
let b = config::UiConfig {
prefix: None,
suffix: Some("b".to_string()),
style: Style {
fg: None,
bg: Some(Color::Blue),
add_modifier: None,
sub_modifier: Some(Modifier::DIM),
},
};
let c = config::UiConfig {
prefix: Some("cp".to_string()),
suffix: Some("cs".to_string()),
style: Style {
fg: Some(Color::Cyan),
bg: Some(Color::Magenta),
add_modifier: Some(Modifier::CROSSED_OUT),
sub_modifier: Some(Modifier::ITALIC),
},
};
assert_eq!(
a.clone().extend(b.clone()),
config::UiConfig {
prefix: Some("a".to_string()),
suffix: Some("b".to_string()),
style: Style {
fg: Some(Color::Red),
bg: Some(Color::Blue),
add_modifier: Some(Modifier::BOLD),
sub_modifier: Some(Modifier::DIM),
},
}
);
assert_eq!(
b.clone().extend(a.clone()),
config::UiConfig {
prefix: Some("a".to_string()),
suffix: Some("b".to_string()),
style: Style {
fg: Some(Color::Red),
bg: Some(Color::Blue),
add_modifier: Some(Modifier::BOLD),
sub_modifier: Some(Modifier::DIM),
},
}
);
assert_eq!(
a.clone().extend(c.clone()),
config::UiConfig {
prefix: Some("cp".to_string()),
suffix: Some("cs".to_string()),
style: Style {
fg: Some(Color::Cyan),
bg: Some(Color::Magenta),
add_modifier: Some(Modifier::CROSSED_OUT),
sub_modifier: Some(Modifier::ITALIC),
},
}
);
}
}

@ -1,2 +1 @@
mod bdd;
mod unit;

@ -1,107 +0,0 @@
use std::collections::HashMap;
use tui::style::Color;
use tui::style::Modifier;
use xplr::*;
#[test]
fn test_compatibility() {
let config = config::Config::default();
assert!(config.is_compatible().unwrap());
assert_eq!(config.upgrade_notification().unwrap(), None);
}
#[test]
fn test_extend_hashmap() {
let mut a = HashMap::new();
let mut b = HashMap::new();
a.insert("a", "a");
a.insert("b", "a");
b.insert("b", "b");
b.insert("c", "b");
a.extend(b);
assert_eq!(a.get("a"), Some(&"a"));
assert_eq!(a.get("b"), Some(&"b"));
assert_eq!(a.get("c"), Some(&"b"));
}
#[test]
fn test_extend_ui_config() {
let a = config::UiConfig {
prefix: Some("a".to_string()),
suffix: None,
style: ui::Style {
fg: Some(Color::Red),
bg: None,
add_modifier: Some(Modifier::BOLD),
sub_modifier: None,
},
};
let b = config::UiConfig {
prefix: None,
suffix: Some("b".to_string()),
style: ui::Style {
fg: None,
bg: Some(Color::Blue),
add_modifier: None,
sub_modifier: Some(Modifier::DIM),
},
};
let c = config::UiConfig {
prefix: Some("cp".to_string()),
suffix: Some("cs".to_string()),
style: ui::Style {
fg: Some(Color::Cyan),
bg: Some(Color::Magenta),
add_modifier: Some(Modifier::CROSSED_OUT),
sub_modifier: Some(Modifier::ITALIC),
},
};
assert_eq!(
a.clone().extend(b.clone()),
config::UiConfig {
prefix: Some("a".to_string()),
suffix: Some("b".to_string()),
style: ui::Style {
fg: Some(Color::Red),
bg: Some(Color::Blue),
add_modifier: Some(Modifier::BOLD),
sub_modifier: Some(Modifier::DIM),
},
}
);
assert_eq!(
b.clone().extend(a.clone()),
config::UiConfig {
prefix: Some("a".to_string()),
suffix: Some("b".to_string()),
style: ui::Style {
fg: Some(Color::Red),
bg: Some(Color::Blue),
add_modifier: Some(Modifier::BOLD),
sub_modifier: Some(Modifier::DIM),
},
}
);
assert_eq!(
a.clone().extend(c.clone()),
config::UiConfig {
prefix: Some("cp".to_string()),
suffix: Some("cs".to_string()),
style: ui::Style {
fg: Some(Color::Cyan),
bg: Some(Color::Magenta),
add_modifier: Some(Modifier::CROSSED_OUT),
sub_modifier: Some(Modifier::ITALIC),
},
}
);
}

@ -1,2 +0,0 @@
mod config;
mod ui;

@ -1,67 +0,0 @@
use tui::style::Color;
use tui::style::Modifier;
use xplr::*;
#[test]
fn test_extend_style() {
let a = ui::Style {
fg: Some(Color::Red),
bg: None,
add_modifier: Some(Modifier::BOLD),
sub_modifier: None,
};
let b = ui::Style {
fg: None,
bg: Some(Color::Blue),
add_modifier: None,
sub_modifier: Some(Modifier::DIM),
};
let c = ui::Style {
fg: Some(Color::Cyan),
bg: Some(Color::Magenta),
add_modifier: Some(Modifier::CROSSED_OUT),
sub_modifier: Some(Modifier::ITALIC),
};
assert_eq!(
a.clone().extend(b.clone()),
ui::Style {
fg: Some(Color::Red),
bg: Some(Color::Blue),
add_modifier: Some(Modifier::BOLD),
sub_modifier: Some(Modifier::DIM),
}
);
assert_eq!(
b.clone().extend(a.clone()),
ui::Style {
fg: Some(Color::Red),
bg: Some(Color::Blue),
add_modifier: Some(Modifier::BOLD),
sub_modifier: Some(Modifier::DIM),
}
);
assert_eq!(
a.clone().extend(c.clone()),
ui::Style {
fg: Some(Color::Cyan),
bg: Some(Color::Magenta),
add_modifier: Some(Modifier::CROSSED_OUT),
sub_modifier: Some(Modifier::ITALIC),
}
);
assert_eq!(
c.clone().extend(a.clone()),
ui::Style {
fg: Some(Color::Red),
bg: Some(Color::Magenta),
add_modifier: Some(Modifier::BOLD),
sub_modifier: Some(Modifier::ITALIC),
}
);
}
Loading…
Cancel
Save