diff options
| author | Pietro Albini <pietro@pietroalbini.org> | 2018-11-25 17:05:05 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2018-11-25 17:05:05 +0100 |
| commit | 989678e525a7f5db87a7fbfaedcf844c2b91d8d7 (patch) | |
| tree | 0332e3bcc5b9466260543e989b8714485909c6b1 /src/libstd | |
| parent | ed6c7b751dd427d6b10825c9d6bbcca08e769fa9 (diff) | |
| parent | d1cd4e8d0d383842acfe2d6ea75eed1e0c0909ac (diff) | |
| download | rust-989678e525a7f5db87a7fbfaedcf844c2b91d8d7.tar.gz rust-989678e525a7f5db87a7fbfaedcf844c2b91d8d7.zip | |
Rollup merge of #56151 - alexcrichton:move-out-flaky-test, r=nagisa
Move a flaky process test out of libstd This test ensures that everything in `env::vars()` is inherited but that's not actually true because other tests may add env vars after we spawn the process, causing the test to be flaky! This commit moves the test to a run-pass test where it can execute in isolation. Along the way this removes a lot of the platform specificity of the test, using iteslf to print the environment instead of a foreign process.
Diffstat (limited to 'src/libstd')
| -rw-r--r-- | src/libstd/process.rs | 36 |
1 files changed, 0 insertions, 36 deletions
diff --git a/src/libstd/process.rs b/src/libstd/process.rs index 51481e129df..2d0848252be 100644 --- a/src/libstd/process.rs +++ b/src/libstd/process.rs @@ -1890,42 +1890,6 @@ mod tests { } #[test] - fn test_inherit_env() { - use env; - - let result = env_cmd().output().unwrap(); - let output = String::from_utf8(result.stdout).unwrap(); - - for (ref k, ref v) in env::vars() { - // Don't check android RANDOM variable which seems to change - // whenever the shell runs, and our `env_cmd` is indeed running a - // shell which means it'll get a different RANDOM than we probably - // have. - // - // Also skip env vars with `-` in the name on android because, well, - // I'm not sure. It appears though that the `set` command above does - // not print env vars with `-` in the name, so we just skip them - // here as we won't find them in the output. Note that most env vars - // use `_` instead of `-`, but our build system sets a few env vars - // with `-` in the name. - if cfg!(target_os = "android") && - (*k == "RANDOM" || k.contains("-")) { - continue - } - - // Windows has hidden environment variables whose names start with - // equals signs (`=`). Those do not show up in the output of the - // `set` command. - assert!((cfg!(windows) && k.starts_with("=")) || - k.starts_with("DYLD") || - output.contains(&format!("{}={}", *k, *v)) || - output.contains(&format!("{}='{}'", *k, *v)), - "output doesn't contain `{}={}`\n{}", - k, v, output); - } - } - - #[test] fn test_override_env() { use env; |
