34 lines
1.1 KiB
Rust
34 lines
1.1 KiB
Rust
|
#![cfg(syn_disable_nightly_tests)]
|
||
|
|
||
|
use std::io::{self, Write};
|
||
|
use termcolor::{Color, ColorChoice, ColorSpec, StandardStream, WriteColor};
|
||
|
|
||
|
const MSG: &str = "\
|
||
|
‖
|
||
|
‖ WARNING:
|
||
|
‖ This is not a nightly compiler so not all tests were able to
|
||
|
‖ run. Syn includes tests that compare Syn's parser against the
|
||
|
‖ compiler's parser, which requires access to unstable librustc
|
||
|
‖ data structures and a nightly compiler.
|
||
|
‖
|
||
|
";
|
||
|
|
||
|
#[test]
|
||
|
fn notice() -> io::Result<()> {
|
||
|
let header = "WARNING";
|
||
|
let index_of_header = MSG.find(header).unwrap();
|
||
|
let before = &MSG[..index_of_header];
|
||
|
let after = &MSG[index_of_header + header.len()..];
|
||
|
|
||
|
let mut stderr = StandardStream::stderr(ColorChoice::Auto);
|
||
|
stderr.set_color(ColorSpec::new().set_fg(Some(Color::Yellow)))?;
|
||
|
write!(&mut stderr, "{}", before)?;
|
||
|
stderr.set_color(ColorSpec::new().set_bold(true).set_fg(Some(Color::Yellow)))?;
|
||
|
write!(&mut stderr, "{}", header)?;
|
||
|
stderr.set_color(ColorSpec::new().set_fg(Some(Color::Yellow)))?;
|
||
|
write!(&mut stderr, "{}", after)?;
|
||
|
stderr.reset()?;
|
||
|
|
||
|
Ok(())
|
||
|
}
|