use cfgmatic_source::prelude::*;
#[test]
fn test_env_source_creation() {
let source = EnvSource::with_prefix("TEST_APP");
assert_eq!(source.kind(), SourceKind::Env);
}
#[test]
fn test_env_source_builder() {
let source = EnvSource::builder()
.prefix("MY_APP")
.required(false)
.build();
assert_eq!(source.kind(), SourceKind::Env);
}
#[test]
fn test_env_source_load_optional() {
let source = EnvSource::builder()
.prefix("NONEXISTENT_PREFIX_XYZ")
.required(false)
.build();
let result = source.load_raw();
assert!(result.is_ok());
}
#[test]
fn test_env_source_metadata() {
let source = EnvSource::with_prefix("MY_APP");
let metadata = source.metadata();
assert_eq!(source.kind(), SourceKind::Env);
assert!(metadata.env_var.is_some());
}