1
0
Fork 0
mirror of https://codeberg.org/icewind/haze.git synced 2026-06-03 09:04:12 +02:00

better service parsing

This commit is contained in:
Robin Appelman 2021-06-25 16:43:23 +02:00
commit 3c97fc37e1
2 changed files with 26 additions and 8 deletions

View file

@ -55,10 +55,6 @@ impl CloudOptions {
} else {
break;
}
if db.is_some() && php.is_some() {
break;
}
}
Ok(CloudOptions {
@ -71,6 +67,8 @@ impl CloudOptions {
#[test]
fn test_option_parse() {
use crate::service::{LDAPAdmin, LDAP};
let mut args = vec![].into_iter().peekable();
assert_eq!(
CloudOptions::parse::<_, &str>(&mut args).unwrap(),
@ -108,6 +106,26 @@ fn test_option_parse() {
..Default::default()
}
);
let mut args = vec!["7", "ldap", "pgsql"].into_iter().peekable();
assert_eq!(
CloudOptions::parse(&mut args).unwrap(),
CloudOptions {
php: PhpVersion::Php74,
db: Database::Postgres,
services: vec![Service::Ldap(LDAP), Service::LdapAdmin(LDAPAdmin)],
..Default::default()
}
);
let mut args = vec!["7", "pgsql", "ldap"].into_iter().peekable();
assert_eq!(
CloudOptions::parse(&mut args).unwrap(),
CloudOptions {
php: PhpVersion::Php74,
db: Database::Postgres,
services: vec![Service::Ldap(LDAP), Service::LdapAdmin(LDAPAdmin)],
..Default::default()
}
);
}
#[derive(Debug)]