Files
galaxy/app/src/themes/theme_test.rs
T

70 lines
2.1 KiB
Rust

use super::*;
use crate::util::color::OPAQUE;
#[test]
#[cfg(not(target_family = "wasm"))]
fn in_memory_theme_generation_test() {
let mountains_bg_path: PathBuf = [
env!("CARGO_MANIFEST_DIR"),
"assets",
"async",
"jpg",
"mountains.jpg",
]
.iter()
.collect();
let mut in_memory_theme = warpui::r#async::block_on(InMemoryThemeOptions::new(
"mountains".to_string(),
mountains_bg_path.clone(),
))
.unwrap();
let mountains_bg_path_string = mountains_bg_path.to_str().unwrap_or_default().to_owned();
assert_eq!(
in_memory_theme.theme(),
WarpTheme::new(
// the theme defaults to the 0th bg color
ColorU::new(35, 31, 44, OPAQUE).into(),
// this background color makes it a "dark" theme, so the foreground is white
ColorU::white(),
// the most distinct accent color is 3rd one
ColorU::new(238, 203, 111, OPAQUE).into(),
None,
Some(Details::Darker),
dark_mode_colors(),
Some(Image {
source: AssetSource::LocalFile {
path: mountains_bg_path_string.clone()
},
opacity: 30,
}),
Some("mountains".to_string()),
)
);
in_memory_theme.chosen_bg_color_index = 2;
assert_eq!(
in_memory_theme.theme(),
WarpTheme::new(
// now the background is the 2nd one
ColorU::new(229, 142, 113, OPAQUE).into(),
// changing the background color made this a light theme
ColorU::black(),
// now the 4th color is the most distinct color
ColorU::new(193, 217, 212, OPAQUE).into(),
None,
Some(Details::Lighter),
light_mode_colors(),
Some(Image {
source: AssetSource::LocalFile {
path: mountains_bg_path_string
},
opacity: 30,
}),
Some("mountains".to_string()),
)
);
}