diff options
| author | Linus Färnstrand <linus@mullvad.net> | 2016-12-05 15:09:49 +0100 |
|---|---|---|
| committer | Linus Färnstrand <linus@mullvad.net> | 2016-12-05 15:09:49 +0100 |
| commit | 22da2098045bdf69a178eb7e4eaaaf38989235af (patch) | |
| tree | 45207af982855eb3b0762c3382df55e4684779aa /tests/process.rs | |
| parent | f0ee88a4c02039ad198e42f78b39905ce7c89436 (diff) | |
| parent | 057a45c28be721d44d76ed64c4dba6f8a0cbffdf (diff) | |
| download | mullvadvpn-22da2098045bdf69a178eb7e4eaaaf38989235af.tar.xz mullvadvpn-22da2098045bdf69a178eb7e4eaaaf38989235af.zip | |
Merge branch 'add-process'
Diffstat (limited to 'tests/process.rs')
| -rw-r--r-- | tests/process.rs | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/tests/process.rs b/tests/process.rs new file mode 100644 index 0000000000..2281a9d990 --- /dev/null +++ b/tests/process.rs @@ -0,0 +1,36 @@ +extern crate talpid_core; + +mod util; + +use talpid_core::process::OpenVpnBuilder; + +#[cfg(target_os = "linux")] +#[test] +fn check_test_environment() { + use std::env; + let test_threads = env::var("RUST_TEST_THREADS"); + if !test_threads.is_ok() || test_threads.unwrap() != "1" { + panic!("Tests must be run with environment variable RUST_TEST_THREADS=1"); + } +} + +#[cfg(target_os = "linux")] +#[test] +fn openvpn_builder_starts_correct_process() { + let mut child = OpenVpnBuilder::new("echo").spawn().unwrap(); + let args = util::read_args_for_proc(child.id()); + + assert_eq!(vec!["echo"], args); + child.kill().unwrap(); +} + +#[cfg(target_os = "linux")] +#[test] +fn openvpn_builder_passes_config() { + let config_path = "/path/to/config".to_owned(); + let mut child = OpenVpnBuilder::new("echo").config(&config_path).spawn().unwrap(); + let args = util::read_args_for_proc(child.id()); + + assert!(args.contains(&config_path)); + child.kill().unwrap(); +} |
