]> git.proxmox.com Git - rustc.git/blob - src/tools/clippy/tests/ui/explicit_write.rs
New upstream version 1.23.0+dfsg1
[rustc.git] / src / tools / clippy / tests / ui / explicit_write.rs
1 #![warn(explicit_write)]
2
3
4 fn stdout() -> String {
5 String::new()
6 }
7
8 fn stderr() -> String {
9 String::new()
10 }
11
12 fn main() {
13 // these should warn
14 {
15 use std::io::Write;
16 write!(std::io::stdout(), "test").unwrap();
17 write!(std::io::stderr(), "test").unwrap();
18 writeln!(std::io::stdout(), "test").unwrap();
19 writeln!(std::io::stderr(), "test").unwrap();
20 std::io::stdout().write_fmt(format_args!("test")).unwrap();
21 std::io::stderr().write_fmt(format_args!("test")).unwrap();
22 }
23 // these should not warn, different destination
24 {
25 use std::fmt::Write;
26 let mut s = String::new();
27 write!(s, "test").unwrap();
28 write!(s, "test").unwrap();
29 writeln!(s, "test").unwrap();
30 writeln!(s, "test").unwrap();
31 s.write_fmt(format_args!("test")).unwrap();
32 s.write_fmt(format_args!("test")).unwrap();
33 write!(stdout(), "test").unwrap();
34 write!(stderr(), "test").unwrap();
35 writeln!(stdout(), "test").unwrap();
36 writeln!(stderr(), "test").unwrap();
37 stdout().write_fmt(format_args!("test")).unwrap();
38 stderr().write_fmt(format_args!("test")).unwrap();
39 }
40 // these should not warn, no unwrap
41 {
42 use std::io::Write;
43 std::io::stdout().write_fmt(format_args!("test")).expect("no stdout");
44 std::io::stderr().write_fmt(format_args!("test")).expect("no stderr");
45 }
46 }