mirror of
https://codeberg.org/icewind/haze.git
synced 2026-06-03 09:04:12 +02:00
update tests
This commit is contained in:
parent
77813fd17c
commit
663228f5f4
3 changed files with 58 additions and 20 deletions
36
src/args.rs
36
src/args.rs
|
|
@ -320,31 +320,31 @@ impl HazeCommand {
|
|||
#[test]
|
||||
fn test_arg_parse() {
|
||||
assert_eq!(
|
||||
HazeArgs::parse(vec!["haze"].into_iter()).unwrap(),
|
||||
HazeArgs::parse(&[], vec!["haze"].into_iter()).unwrap(),
|
||||
HazeArgs::List { filter: None }
|
||||
);
|
||||
assert_eq!(
|
||||
HazeArgs::parse(vec!["haze", "test"].into_iter()).unwrap(),
|
||||
HazeArgs::parse(&[], vec!["haze", "test"].into_iter()).unwrap(),
|
||||
HazeArgs::Test {
|
||||
options: Default::default(),
|
||||
args: vec![]
|
||||
}
|
||||
);
|
||||
assert_eq!(
|
||||
HazeArgs::parse(vec!["haze", "asdasd"].into_iter()).unwrap(),
|
||||
HazeArgs::parse(&[], vec!["haze", "asdasd"].into_iter()).unwrap(),
|
||||
HazeArgs::List {
|
||||
filter: Some("asdasd".to_string())
|
||||
}
|
||||
);
|
||||
assert_eq!(
|
||||
HazeArgs::parse(vec!["haze", "asdasd", "db"].into_iter()).unwrap(),
|
||||
HazeArgs::parse(&[], vec!["haze", "asdasd", "db"].into_iter()).unwrap(),
|
||||
HazeArgs::Db {
|
||||
filter: Some("asdasd".to_string()),
|
||||
root: false
|
||||
}
|
||||
);
|
||||
assert_eq!(
|
||||
HazeArgs::parse(vec!["haze", "exec", "foo", "bar"].into_iter()).unwrap(),
|
||||
HazeArgs::parse(&[], vec!["haze", "exec", "foo", "bar"].into_iter()).unwrap(),
|
||||
HazeArgs::Exec {
|
||||
filter: None,
|
||||
service: None,
|
||||
|
|
@ -352,7 +352,11 @@ fn test_arg_parse() {
|
|||
}
|
||||
);
|
||||
assert_eq!(
|
||||
HazeArgs::parse(vec!["haze", "asdasd", "exec", "foo", "bar"].into_iter()).unwrap(),
|
||||
HazeArgs::parse(
|
||||
&[],
|
||||
vec!["haze", "asdasd", "exec", "foo", "bar"].into_iter()
|
||||
)
|
||||
.unwrap(),
|
||||
HazeArgs::Exec {
|
||||
filter: Some("asdasd".to_string()),
|
||||
service: None,
|
||||
|
|
@ -360,7 +364,11 @@ fn test_arg_parse() {
|
|||
}
|
||||
);
|
||||
assert_eq!(
|
||||
HazeArgs::parse(vec!["haze", "asdasd", "exec", "db", "foo", "bar"].into_iter()).unwrap(),
|
||||
HazeArgs::parse(
|
||||
&[],
|
||||
vec!["haze", "asdasd", "exec", "db", "foo", "bar"].into_iter()
|
||||
)
|
||||
.unwrap(),
|
||||
HazeArgs::Exec {
|
||||
filter: Some("asdasd".to_string()),
|
||||
service: Some(ExecService::Db),
|
||||
|
|
@ -368,27 +376,31 @@ fn test_arg_parse() {
|
|||
}
|
||||
);
|
||||
assert_eq!(
|
||||
HazeArgs::parse(vec!["haze", "test", "foo", "bar"].into_iter()).unwrap(),
|
||||
HazeArgs::parse(&[], vec!["haze", "test", "foo", "bar"].into_iter()).unwrap(),
|
||||
HazeArgs::Test {
|
||||
options: Default::default(),
|
||||
args: vec!["foo".into(), "bar".into()]
|
||||
}
|
||||
);
|
||||
assert_eq!(
|
||||
HazeArgs::parse(vec!["haze", "logs", "-f", "smb"].into_iter()).unwrap(),
|
||||
HazeArgs::parse(&[], vec!["haze", "logs", "-f", "smb"].into_iter()).unwrap(),
|
||||
HazeArgs::Logs {
|
||||
filter: None,
|
||||
follow: true,
|
||||
service: Some(LogService::from_type("smb").unwrap()),
|
||||
service: Some(LogService::from_type(&[], "smb").unwrap()),
|
||||
count: None,
|
||||
}
|
||||
);
|
||||
assert_eq!(
|
||||
HazeArgs::parse(vec!["haze", "asdasd", "logs", "smb", "123"].into_iter()).unwrap(),
|
||||
HazeArgs::parse(
|
||||
&[],
|
||||
vec!["haze", "asdasd", "logs", "smb", "123"].into_iter()
|
||||
)
|
||||
.unwrap(),
|
||||
HazeArgs::Logs {
|
||||
filter: Some("asdasd".to_string()),
|
||||
follow: false,
|
||||
service: Some(LogService::from_type("smb").unwrap()),
|
||||
service: Some(LogService::from_type(&[], "smb").unwrap()),
|
||||
count: Some(123),
|
||||
}
|
||||
);
|
||||
|
|
|
|||
40
src/cloud.rs
40
src/cloud.rs
|
|
@ -82,16 +82,18 @@ impl CloudOptions {
|
|||
|
||||
#[test]
|
||||
fn test_option_parse() {
|
||||
use crate::config::Preset;
|
||||
use crate::service::PresetService;
|
||||
use crate::service::{Ldap, LdapAdmin};
|
||||
|
||||
let mut args = vec![].into_iter().peekable();
|
||||
assert_eq!(
|
||||
CloudOptions::parse::<_, &str>(&mut args).unwrap(),
|
||||
CloudOptions::parse::<_, &str>(&[], &mut args).unwrap(),
|
||||
CloudOptions::default()
|
||||
);
|
||||
let mut args = vec!["mariadb"].into_iter().peekable();
|
||||
assert_eq!(
|
||||
CloudOptions::parse(&mut args).unwrap(),
|
||||
CloudOptions::parse(&[], &mut args).unwrap(),
|
||||
CloudOptions {
|
||||
db: Database::MariaDB,
|
||||
..Default::default()
|
||||
|
|
@ -99,14 +101,14 @@ fn test_option_parse() {
|
|||
);
|
||||
let mut args = vec!["rest"].into_iter().peekable();
|
||||
assert_eq!(
|
||||
CloudOptions::parse(&mut args).unwrap(),
|
||||
CloudOptions::parse(&[], &mut args).unwrap(),
|
||||
CloudOptions {
|
||||
..Default::default()
|
||||
}
|
||||
);
|
||||
let mut args = vec!["7"].into_iter().peekable();
|
||||
assert_eq!(
|
||||
CloudOptions::parse(&mut args).unwrap(),
|
||||
CloudOptions::parse(&[], &mut args).unwrap(),
|
||||
CloudOptions {
|
||||
php: PhpVersion::Php74,
|
||||
..Default::default()
|
||||
|
|
@ -114,7 +116,7 @@ fn test_option_parse() {
|
|||
);
|
||||
let mut args = vec!["7", "pgsql", "rest"].into_iter().peekable();
|
||||
assert_eq!(
|
||||
CloudOptions::parse(&mut args).unwrap(),
|
||||
CloudOptions::parse(&[], &mut args).unwrap(),
|
||||
CloudOptions {
|
||||
php: PhpVersion::Php74,
|
||||
db: Database::Postgres,
|
||||
|
|
@ -123,7 +125,7 @@ fn test_option_parse() {
|
|||
);
|
||||
let mut args = vec!["7", "ldap", "pgsql"].into_iter().peekable();
|
||||
assert_eq!(
|
||||
CloudOptions::parse(&mut args).unwrap(),
|
||||
CloudOptions::parse(&[], &mut args).unwrap(),
|
||||
CloudOptions {
|
||||
php: PhpVersion::Php74,
|
||||
db: Database::Postgres,
|
||||
|
|
@ -133,7 +135,7 @@ fn test_option_parse() {
|
|||
);
|
||||
let mut args = vec!["7", "pgsql", "ldap"].into_iter().peekable();
|
||||
assert_eq!(
|
||||
CloudOptions::parse(&mut args).unwrap(),
|
||||
CloudOptions::parse(&[], &mut args).unwrap(),
|
||||
CloudOptions {
|
||||
php: PhpVersion::Php74,
|
||||
db: Database::Postgres,
|
||||
|
|
@ -141,6 +143,30 @@ fn test_option_parse() {
|
|||
..Default::default()
|
||||
}
|
||||
);
|
||||
let mut args = vec!["7", "pgsql", "ldap", "mypreset"]
|
||||
.into_iter()
|
||||
.peekable();
|
||||
assert_eq!(
|
||||
CloudOptions::parse(
|
||||
&[Preset {
|
||||
name: "mypreset".to_string(),
|
||||
commands: Vec::new(),
|
||||
apps: Vec::new(),
|
||||
}],
|
||||
&mut args
|
||||
)
|
||||
.unwrap(),
|
||||
CloudOptions {
|
||||
php: PhpVersion::Php74,
|
||||
db: Database::Postgres,
|
||||
services: vec![
|
||||
Service::Ldap(Ldap),
|
||||
Service::LdapAdmin(LdapAdmin),
|
||||
Service::Preset(PresetService("mypreset".to_string()))
|
||||
],
|
||||
..Default::default()
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
#[derive(Debug)]
|
||||
|
|
|
|||
|
|
@ -218,7 +218,7 @@ fn get_preset<'a>(presets: &'a [Preset], name: &str) -> Option<&'a Preset> {
|
|||
}
|
||||
|
||||
#[derive(Clone, Eq, PartialEq, Debug)]
|
||||
pub struct PresetService(String);
|
||||
pub struct PresetService(pub String);
|
||||
|
||||
#[async_trait::async_trait]
|
||||
impl ServiceTrait for PresetService {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue