From fd9fc0183e87d18b57838b7663b0a9f0a8c513e8 Mon Sep 17 00:00:00 2001 From: Pietro Albini Date: Tue, 27 Nov 2018 19:55:27 +0100 Subject: validate people emails --- src/validate.rs | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'src') diff --git a/src/validate.rs b/src/validate.rs index 45c0d0a..6c6830d 100644 --- a/src/validate.rs +++ b/src/validate.rs @@ -13,6 +13,7 @@ pub(crate) fn validate(data: &Data) -> Result<(), Error> { validate_list_extra_people(data, &mut errors); validate_list_extra_teams(data, &mut errors); validate_list_addresses(data, &mut errors); + validate_people_addresses(data, &mut errors); validate_discord_name(data, &mut errors); if !errors.is_empty() { @@ -162,6 +163,18 @@ fn validate_list_addresses(data: &Data, errors: &mut Vec) { }); } +/// Ensure people email addresses are correct +fn validate_people_addresses(data: &Data, errors: &mut Vec) { + wrapper(data.people(), errors, |person, _| { + if let Some(email) = person.email() { + if !email.contains('@') { + bail!("invalid email address of `{}`: {}", person.github(), email); + } + } + Ok(()) + }); +} + /// Ensure the Discord name is formatted properly fn validate_discord_name(data: &Data, errors: &mut Vec) { // https://discordapp.com/developers/docs/resources/user#usernames-and-nicknames -- cgit v1.2.3