person_struct_parser 1.2.5

Rust parser for person struct
Documentation
use person_struct_parser::person_module::*;

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

    #[test]
    fn person_to_string() -> anyhow::Result<()> {
        let person = Person {
            name: String::from("Davyd"),
            age: 20,
            city: String::from("Kryvyj Rig"),
            zip: 77649,
        };
        assert_eq!(person.to_string(), "Davyd 20 Kryvyj Rig77649");
        Ok(())
    }

    #[test]
    fn parsing_normal() -> anyhow::Result<()> {
        let person = parse("Davyd 20 Lviv75869")?;
        assert_eq!(person.to_string(), "Davyd 20 Lviv75869");
        Ok(())
    }

    #[test]
    fn parsing_unnormal_age() -> anyhow::Result<()> {
        let person = parse("Davyd 2000 Lviv75869")?;
        assert_eq!(person.to_string(), "Davyd 0 Lviv75869");
        Ok(())
    }

    #[test]
    fn parsing_normal0() -> anyhow::Result<()> {
        let person = parse("Davyd 20 Win+/sto++/n-S?,?(al*)*e*m75869")?;
        assert_eq!(person.to_string(), "Davyd 20 Winston-Salem75869");
        Ok(())
    }

    #[test]
    fn parsing_another_normal1() -> anyhow::Result<()> {
        let person = parse("Davyd20Kryvyj Rig75869")?;
        println!("{}", person.to_string());
        assert_eq!(person.to_string(), "Davyd 20 Kryvyj Rig75869");
        Ok(())
    }
    #[test]
    #[should_panic]
    fn parsing_another_normal2() {
        let person = parse("5Davyd20Lviv");
        assert_eq!(person.unwrap().to_string(), "Davyd 20 Lviv");
    }
}