block_kit 0.1.0

Simple wrapper for slack api
Documentation
const GOOD_COLOR: &str = "good";
const WARNING_COLOR: &str = "warning";
const DANGER_COLOR: &str = "danger";

#[derive(Debug)]
pub enum Color {
    Hex(String),
    Good,
    Warning,
    Danger,
}

impl Color {
    pub(crate) fn value(&self) -> String {
        match self {
            Color::Hex(value) => value.to_string(),
            Color::Good => GOOD_COLOR.to_string(),
            Color::Warning => WARNING_COLOR.to_string(),
            Color::Danger => DANGER_COLOR.to_string(),
        }
    }
}

#[cfg(test)]
mod test {
    use super::*;

    #[test]
    pub fn test_serializing_new() {
        let color = Color::Hex("#ffffff".to_string());
        assert_eq!(color.value(), "#ffffff");

        let color = Color::Good;
        assert_eq!(color.value(), "good");

        let color = Color::Warning;
        assert_eq!(color.value(), "warning");

        let color = Color::Danger;
        assert_eq!(color.value(), "danger");
    }
}