Small run-make-support
API improvements
This commit is contained in:
parent
d68fe4eaa8
commit
9e71c7b5a9
3 changed files with 7 additions and 4 deletions
|
@ -321,8 +321,9 @@ pub fn set_host_rpath(cmd: &mut Command) {
|
||||||
/// Read the contents of a file that cannot simply be read by
|
/// Read the contents of a file that cannot simply be read by
|
||||||
/// read_to_string, due to invalid utf8 data, then assert that it contains `expected`.
|
/// read_to_string, due to invalid utf8 data, then assert that it contains `expected`.
|
||||||
#[track_caller]
|
#[track_caller]
|
||||||
pub fn invalid_utf8_contains<P: AsRef<Path>>(path: P, expected: &str) {
|
pub fn invalid_utf8_contains<P: AsRef<Path>, S: AsRef<str>>(path: P, expected: S) {
|
||||||
let buffer = fs_wrapper::read(path.as_ref());
|
let buffer = fs_wrapper::read(path.as_ref());
|
||||||
|
let expected = expected.as_ref();
|
||||||
if !String::from_utf8_lossy(&buffer).contains(expected) {
|
if !String::from_utf8_lossy(&buffer).contains(expected) {
|
||||||
eprintln!("=== FILE CONTENTS (LOSSY) ===");
|
eprintln!("=== FILE CONTENTS (LOSSY) ===");
|
||||||
eprintln!("{}", String::from_utf8_lossy(&buffer));
|
eprintln!("{}", String::from_utf8_lossy(&buffer));
|
||||||
|
@ -335,8 +336,9 @@ pub fn invalid_utf8_contains<P: AsRef<Path>>(path: P, expected: &str) {
|
||||||
/// Read the contents of a file that cannot simply be read by
|
/// Read the contents of a file that cannot simply be read by
|
||||||
/// read_to_string, due to invalid utf8 data, then assert that it does not contain `expected`.
|
/// read_to_string, due to invalid utf8 data, then assert that it does not contain `expected`.
|
||||||
#[track_caller]
|
#[track_caller]
|
||||||
pub fn invalid_utf8_not_contains<P: AsRef<Path>>(path: P, expected: &str) {
|
pub fn invalid_utf8_not_contains<P: AsRef<Path>, S: AsRef<str>>(path: P, expected: S) {
|
||||||
let buffer = fs_wrapper::read(path.as_ref());
|
let buffer = fs_wrapper::read(path.as_ref());
|
||||||
|
let expected = expected.as_ref();
|
||||||
if String::from_utf8_lossy(&buffer).contains(expected) {
|
if String::from_utf8_lossy(&buffer).contains(expected) {
|
||||||
eprintln!("=== FILE CONTENTS (LOSSY) ===");
|
eprintln!("=== FILE CONTENTS (LOSSY) ===");
|
||||||
eprintln!("{}", String::from_utf8_lossy(&buffer));
|
eprintln!("{}", String::from_utf8_lossy(&buffer));
|
||||||
|
|
|
@ -86,7 +86,8 @@ impl Rustc {
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Specify type(s) of output files to generate.
|
/// Specify type(s) of output files to generate.
|
||||||
pub fn emit(&mut self, kinds: &str) -> &mut Self {
|
pub fn emit<S: AsRef<str>>(&mut self, kinds: S) -> &mut Self {
|
||||||
|
let kinds = kinds.as_ref();
|
||||||
self.cmd.arg(format!("--emit={kinds}"));
|
self.cmd.arg(format!("--emit={kinds}"));
|
||||||
self
|
self
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,7 +4,7 @@ use run_make_support::{fs_wrapper, rustc};
|
||||||
|
|
||||||
fn emit_and_check(out_dir: &Path, out_file: &str, format: &str) {
|
fn emit_and_check(out_dir: &Path, out_file: &str, format: &str) {
|
||||||
let out_file = out_dir.join(out_file);
|
let out_file = out_dir.join(out_file);
|
||||||
rustc().input("foo.rs").emit(&format!("{format}={}", out_file.display())).run();
|
rustc().input("foo.rs").emit(format!("{format}={}", out_file.display())).run();
|
||||||
assert!(out_file.is_file());
|
assert!(out_file.is_file());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue