| //@ ignore-cross-compile | |
| //! This test checks rustc `-` (stdin) support | |
| use std::path::PathBuf; | |
| use run_make_support::{bin_name, rustc}; | |
| const HELLO_WORLD: &str = r#" | |
| fn main() { | |
| println!("Hello world!"); | |
| } | |
| "#; | |
| const NOT_UTF8: &[u8] = &[0xff, 0xff, 0xff]; | |
| fn main() { | |
| // echo $HELLO_WORLD | rustc - | |
| rustc().arg("-").stdin_buf(HELLO_WORLD).run(); | |
| assert!(PathBuf::from(bin_name("rust_out")).try_exists().unwrap()); | |
| // echo $NOT_UTF8 | rustc - | |
| rustc().arg("-").stdin_buf(NOT_UTF8).run_fail().assert_stderr_contains( | |
| "error: couldn't read from stdin, as it did not contain valid UTF-8", | |
| ); | |
| } |