2 #![allow(unused_imports)]
3 #![warn(clippy::explicit_write)]
5 fn stdout() -> String {
9 fn stderr() -> String {
31 println!("test\ntest");
32 eprintln!("test\ntest");
35 eprintln!("with {}", value);
36 eprintln!("with {} {}", 2, value);
37 eprintln!("with {value}");
38 eprintln!("macro arg {}", one!());
40 // these should not warn, different destination
43 let mut s = String::new();
44 write!(s, "test").unwrap();
45 write!(s, "test").unwrap();
46 writeln!(s, "test").unwrap();
47 writeln!(s, "test").unwrap();
48 s.write_fmt(format_args!("test")).unwrap();
49 s.write_fmt(format_args!("test")).unwrap();
50 write!(stdout(), "test").unwrap();
51 write!(stderr(), "test").unwrap();
52 writeln!(stdout(), "test").unwrap();
53 writeln!(stderr(), "test").unwrap();
54 stdout().write_fmt(format_args!("test")).unwrap();
55 stderr().write_fmt(format_args!("test")).unwrap();
57 // these should not warn, no unwrap
60 std::io::stdout().write_fmt(format_args!("test")).expect("no stdout");
61 std::io::stderr().write_fmt(format_args!("test")).expect("no stderr");