Skip to content

Commit

Permalink
Add regression test for SIGPIPE on macOS
Browse files Browse the repository at this point in the history
  • Loading branch information
Aaron1011 committed Mar 9, 2020
1 parent a9d6076 commit ab06897
Showing 1 changed file with 24 additions and 0 deletions.
24 changes: 24 additions & 0 deletions tests/smoke.rs
Original file line number Diff line number Diff line change
Expand Up @@ -248,3 +248,27 @@ fn is_serde() {
is_serialize::<backtrace::Backtrace>();
is_deserialize::<backtrace::Backtrace>();
}

// Copied from https://github.com/rust-lang/rust/blob/2cb0b8582ebbf9784db9cec06fff517badbf4553/src/test/ui/issues/issue-45731.rs
#[test]
#[cfg(target_os = "macos")]
fn simple_test() {
use std::{env, panic, fs};

// Find our dSYM and replace the DWARF binary with an empty file
let mut dsym_path = env::current_exe().unwrap();
let executable_name = dsym_path.file_name().unwrap().to_str().unwrap().to_string();
assert!(dsym_path.pop()); // Pop executable
dsym_path.push(format!("{}.dSYM/Contents/Resources/DWARF/{0}", executable_name));
{
let file = fs::OpenOptions::new().read(false).write(true).truncate(true).create(false)
.open(&dsym_path).unwrap();
}

env::set_var("RUST_BACKTRACE", "1");

// We don't need to die of panic, just trigger a backtrace
let _ = panic::catch_unwind(|| {
assert!(false);
});
}

0 comments on commit ab06897

Please sign in to comment.