os-rust/tests/run-make/crate-loading-crate-depends-on-itself/rmake.rs
Esteban Küber 2fb0b160c0 Use rmake diff output in test
(cherry picked from commit e97e15dea5)
2025-01-02 14:28:32 -08:00

31 lines
948 B
Rust

//@ only-linux
//@ ignore-wasm32
//@ ignore-wasm64
// ignore-tidy-linelength
// Verify that if the current crate depends on a different version of the same crate, *and* types
// and traits of the different versions are mixed, we produce diagnostic output and not an ICE.
// #133563
use run_make_support::{diff, rust_lib_name, rustc};
fn main() {
rustc().input("foo-prev.rs").run();
let out = rustc()
.extra_filename("current")
.metadata("current")
.input("foo-current.rs")
.extern_("foo", rust_lib_name("foo"))
.run_fail()
.stderr_utf8();
// We don't remap the path of the `foo-prev` crate, so we remap it here.
let mut lines: Vec<_> = out.lines().collect();
for line in &mut lines {
if line.starts_with(" ::: ") {
*line = " ::: foo-prev.rs:X:Y";
}
}
diff().expected_file("foo.stderr").actual_text("(rustc)", &lines.join("\n")).run();
}