Skip to content

Commit 80e441c

Browse files
committed
docs: add env_test example
1 parent cdd1503 commit 80e441c

File tree

1 file changed

+33
-0
lines changed

1 file changed

+33
-0
lines changed

examples/env_test.rs

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
use std::env;
2+
use std::ffi::OsString;
3+
4+
fn main() {
5+
println!("Name: {}", get_name().to_str().unwrap());
6+
}
7+
8+
fn get_name() -> OsString {
9+
match env::var_os("NAME") {
10+
Some(value) => value,
11+
None => OsString::from("default-value"),
12+
}
13+
}
14+
15+
#[cfg(test)]
16+
mod test {
17+
use super::*;
18+
use envtestkit::lock::{lock_read, lock_test};
19+
use envtestkit::set_env;
20+
21+
#[test]
22+
fn get_name_default() {
23+
let _lock = lock_read();
24+
assert_eq!(get_name(), "default-value")
25+
}
26+
27+
#[test]
28+
fn get_name_overriden() {
29+
let _lock = lock_test();
30+
let _test = set_env(OsString::from("NAME"), "not-default-one");
31+
assert_eq!(get_name(), "not-default-one")
32+
}
33+
}

0 commit comments

Comments
 (0)