Test RUSTC_OVERRIDE_VERSION_STRING
This commit is contained in:
parent
a5ee5cbad1
commit
cbab16feaf
@ -330,6 +330,7 @@ impl TestProps {
|
||||
pub fn from_file(testfile: &Path, revision: Option<&str>, config: &Config) -> Self {
|
||||
let mut props = TestProps::new();
|
||||
props.load_from(testfile, revision, config);
|
||||
props.exec_env.push(("RUSTC".to_string(), config.rustc_path.display().to_string()));
|
||||
|
||||
match (props.pass_mode, props.fail_mode) {
|
||||
(None, None) if config.mode == Mode::Ui => props.fail_mode = Some(FailMode::Check),
|
||||
|
17
tests/ui/feature-gates/version_check.rs
Normal file
17
tests/ui/feature-gates/version_check.rs
Normal file
@ -0,0 +1,17 @@
|
||||
//@ run-pass
|
||||
//@ only-linux
|
||||
//@ only-x86
|
||||
// FIXME: this should be more like //@ needs-subprocesses
|
||||
use std::process::Command;
|
||||
|
||||
fn main() {
|
||||
let signalled_version = "Ceci n'est pas une rustc";
|
||||
let version = Command::new(std::env::var_os("RUSTC").unwrap())
|
||||
.env("RUSTC_OVERRIDE_VERSION_STRING", signalled_version)
|
||||
.arg("--version")
|
||||
.output()
|
||||
.unwrap()
|
||||
.stdout;
|
||||
let version = std::str::from_utf8(&version).unwrap().strip_prefix("rustc ").unwrap().trim_end();
|
||||
assert_ne!(version, signalled_version);
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user