blob: f567419b549b9b1eb0347034520617285d47007d [file] [log] [blame]
use config::Config;
#[derive(Debug, Default, serde_derive::Deserialize, PartialEq)]
struct AppConfig {
list: Vec<String>,
}
fn main() {
std::env::set_var("APP_LIST", "Hello World");
let config = Config::builder()
.add_source(
config::Environment::with_prefix("APP")
.try_parsing(true)
.separator("_")
.list_separator(" "),
)
.build()
.unwrap();
let app: AppConfig = config.try_deserialize().unwrap();
assert_eq!(app.list, vec![String::from("Hello"), String::from("World")]);
std::env::remove_var("APP_LIST");
}