feat: initial commit

This commit is contained in:
darwincereska
2026-06-08 01:12:46 -04:00
commit 5650a6ce48
8 changed files with 227 additions and 0 deletions
+18
View File
@@ -0,0 +1,18 @@
#[cfg(test)]
mod test_errors {
use envkit::error::EnvError;
#[test]
fn test_missing_var() {
assert_eq!(EnvError::missing("missing test"), EnvError::MissingVar("missing test".to_string()));
}
#[test]
fn test_invalid() {
assert_eq!(EnvError::invalid("key", "value", "message"), EnvError::Invalid {
key: "key".to_string(),
value: "value".to_string(),
message: "message".to_string(),
});
}
}
+33
View File
@@ -0,0 +1,33 @@
#[cfg(test)]
mod test_parser {
use envkit::parser::parse_bool;
use envkit::parser::parse_number;
#[test]
fn test_parse_bool() {
assert_eq!(parse_bool("true"), Ok(true));
assert_eq!(parse_bool("false"), Ok(false));
assert_eq!(parse_bool("1"), Ok(true));
assert_eq!(parse_bool("0"), Ok(false));
assert_eq!(parse_bool("t"), Ok(true));
assert_eq!(parse_bool("f"), Ok(false));
}
#[test]
fn test_parse_number() {
assert_eq!(parse_number::<i8>("42"), Ok(42_i8));
assert_eq!(parse_number::<i16>("42"), Ok(42_i16));
assert_eq!(parse_number::<i32>("42"), Ok(42_i32));
assert_eq!(parse_number::<i64>("42"), Ok(42_i64));
assert_eq!(parse_number::<i128>("42"), Ok(42_i128));
assert_eq!(parse_number::<isize>("42"), Ok(42_isize));
assert_eq!(parse_number::<u8>("42"), Ok(42_u8));
assert_eq!(parse_number::<u16>("42"), Ok(42_u16));
assert_eq!(parse_number::<u32>("42"), Ok(42_u32));
assert_eq!(parse_number::<u64>("42"), Ok(42_u64));
assert_eq!(parse_number::<u128>("42"), Ok(42_u128));
assert_eq!(parse_number::<usize>("42"), Ok(42_usize));
assert_eq!(parse_number::<f32>("42"), Ok(42_f32));
assert_eq!(parse_number::<f64>("42"), Ok(42_f64));
}
}