ratatui/layout/
direction.rs

1use strum::{Display, EnumString};
2
3#[derive(Debug, Default, Display, EnumString, Clone, Copy, Eq, PartialEq, Hash)]
4pub enum Direction {
5    Horizontal,
6    #[default]
7    Vertical,
8}
9
10#[cfg(test)]
11mod tests {
12    use strum::ParseError;
13
14    use super::*;
15
16    #[test]
17    fn direction_to_string() {
18        assert_eq!(Direction::Horizontal.to_string(), "Horizontal");
19        assert_eq!(Direction::Vertical.to_string(), "Vertical");
20    }
21
22    #[test]
23    fn direction_from_str() {
24        assert_eq!("Horizontal".parse::<Direction>(), Ok(Direction::Horizontal));
25        assert_eq!("Vertical".parse::<Direction>(), Ok(Direction::Vertical));
26        assert_eq!("".parse::<Direction>(), Err(ParseError::VariantNotFound));
27    }
28}