Skip to content

Commit 9283f5a

Browse files
authored
Rollup merge of #106398 - jyn514:fix-clippy, r=thomcc
Fix a few clippy lints in libtest - Remove unnecessary references and dereferences - Use `.contains` instead of `a <= x && x <= b` - Use `mem::take` instead of `mem::replace` where possible cc rust-lang/rust#106394 :)
2 parents 67b1b4c + 5aaac25 commit 9283f5a

File tree

11 files changed

+51
-51
lines changed

11 files changed

+51
-51
lines changed

test/src/console.rs

+3-3
Original file line numberDiff line numberDiff line change
@@ -147,7 +147,7 @@ pub fn list_tests_console(opts: &TestOpts, tests: Vec<TestDescAndFn>) -> io::Res
147147
let mut ntest = 0;
148148
let mut nbench = 0;
149149

150-
for test in filter_tests(&opts, tests).into_iter() {
150+
for test in filter_tests(opts, tests).into_iter() {
151151
use crate::TestFn::*;
152152

153153
let TestDescAndFn { desc: TestDesc { name, .. }, testfn } = test;
@@ -244,7 +244,7 @@ fn on_test_event(
244244
let stdout = &completed_test.stdout;
245245

246246
st.write_log_result(test, result, exec_time.as_ref())?;
247-
out.write_result(test, result, exec_time.as_ref(), &*stdout, st)?;
247+
out.write_result(test, result, exec_time.as_ref(), stdout, st)?;
248248
handle_test_result(st, completed_test);
249249
}
250250
}
@@ -262,7 +262,7 @@ pub fn run_tests_console(opts: &TestOpts, tests: Vec<TestDescAndFn>) -> io::Resu
262262

263263
let max_name_len = tests
264264
.iter()
265-
.max_by_key(|t| len_if_padded(*t))
265+
.max_by_key(|t| len_if_padded(t))
266266
.map(|t| t.desc.name.as_slice().len())
267267
.unwrap_or(0);
268268

test/src/formatters/json.rs

+9-9
Original file line numberDiff line numberDiff line change
@@ -40,20 +40,20 @@ impl<T: Write> JsonFormatter<T> {
4040
extra: Option<&str>,
4141
) -> io::Result<()> {
4242
// A doc test's name includes a filename which must be escaped for correct json.
43-
self.write_message(&*format!(
43+
self.write_message(&format!(
4444
r#"{{ "type": "{}", "name": "{}", "event": "{}""#,
4545
ty,
4646
EscapedString(name),
4747
evt
4848
))?;
4949
if let Some(exec_time) = exec_time {
50-
self.write_message(&*format!(r#", "exec_time": {}"#, exec_time.0.as_secs_f64()))?;
50+
self.write_message(&format!(r#", "exec_time": {}"#, exec_time.0.as_secs_f64()))?;
5151
}
5252
if let Some(stdout) = stdout {
53-
self.write_message(&*format!(r#", "stdout": "{}""#, EscapedString(stdout)))?;
53+
self.write_message(&format!(r#", "stdout": "{}""#, EscapedString(stdout)))?;
5454
}
5555
if let Some(extra) = extra {
56-
self.write_message(&*format!(r#", {extra}"#))?;
56+
self.write_message(&format!(r#", {extra}"#))?;
5757
}
5858
self.writeln_message(" }")
5959
}
@@ -66,13 +66,13 @@ impl<T: Write> OutputFormatter for JsonFormatter<T> {
6666
} else {
6767
String::new()
6868
};
69-
self.writeln_message(&*format!(
69+
self.writeln_message(&format!(
7070
r#"{{ "type": "suite", "event": "started", "test_count": {test_count}{shuffle_seed_json} }}"#
7171
))
7272
}
7373

7474
fn write_test_start(&mut self, desc: &TestDesc) -> io::Result<()> {
75-
self.writeln_message(&*format!(
75+
self.writeln_message(&format!(
7676
r#"{{ "type": "test", "event": "started", "name": "{}" }}"#,
7777
EscapedString(desc.name.as_slice())
7878
))
@@ -151,20 +151,20 @@ impl<T: Write> OutputFormatter for JsonFormatter<T> {
151151
mbps
152152
);
153153

154-
self.writeln_message(&*line)
154+
self.writeln_message(&line)
155155
}
156156
}
157157
}
158158

159159
fn write_timeout(&mut self, desc: &TestDesc) -> io::Result<()> {
160-
self.writeln_message(&*format!(
160+
self.writeln_message(&format!(
161161
r#"{{ "type": "test", "event": "timeout", "name": "{}" }}"#,
162162
EscapedString(desc.name.as_slice())
163163
))
164164
}
165165

166166
fn write_run_finish(&mut self, state: &ConsoleTestState) -> io::Result<bool> {
167-
self.write_message(&*format!(
167+
self.write_message(&format!(
168168
"{{ \"type\": \"suite\", \
169169
\"event\": \"{}\", \
170170
\"passed\": {}, \

test/src/formatters/junit.rs

+8-8
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ impl<T: Write> OutputFormatter for JunitFormatter<T> {
6464
fn write_run_finish(&mut self, state: &ConsoleTestState) -> io::Result<bool> {
6565
self.write_message("<testsuites>")?;
6666

67-
self.write_message(&*format!(
67+
self.write_message(&format!(
6868
"<testsuite name=\"test\" package=\"test\" id=\"0\" \
6969
errors=\"0\" \
7070
failures=\"{}\" \
@@ -73,12 +73,12 @@ impl<T: Write> OutputFormatter for JunitFormatter<T> {
7373
>",
7474
state.failed, state.total, state.ignored
7575
))?;
76-
for (desc, result, duration) in std::mem::replace(&mut self.results, Vec::new()) {
76+
for (desc, result, duration) in std::mem::take(&mut self.results) {
7777
let (class_name, test_name) = parse_class_name(&desc);
7878
match result {
7979
TestResult::TrIgnored => { /* no-op */ }
8080
TestResult::TrFailed => {
81-
self.write_message(&*format!(
81+
self.write_message(&format!(
8282
"<testcase classname=\"{}\" \
8383
name=\"{}\" time=\"{}\">",
8484
class_name,
@@ -90,19 +90,19 @@ impl<T: Write> OutputFormatter for JunitFormatter<T> {
9090
}
9191

9292
TestResult::TrFailedMsg(ref m) => {
93-
self.write_message(&*format!(
93+
self.write_message(&format!(
9494
"<testcase classname=\"{}\" \
9595
name=\"{}\" time=\"{}\">",
9696
class_name,
9797
test_name,
9898
duration.as_secs_f64()
9999
))?;
100-
self.write_message(&*format!("<failure message=\"{m}\" type=\"assert\"/>"))?;
100+
self.write_message(&format!("<failure message=\"{m}\" type=\"assert\"/>"))?;
101101
self.write_message("</testcase>")?;
102102
}
103103

104104
TestResult::TrTimedFail => {
105-
self.write_message(&*format!(
105+
self.write_message(&format!(
106106
"<testcase classname=\"{}\" \
107107
name=\"{}\" time=\"{}\">",
108108
class_name,
@@ -114,15 +114,15 @@ impl<T: Write> OutputFormatter for JunitFormatter<T> {
114114
}
115115

116116
TestResult::TrBench(ref b) => {
117-
self.write_message(&*format!(
117+
self.write_message(&format!(
118118
"<testcase classname=\"benchmark::{}\" \
119119
name=\"{}\" time=\"{}\" />",
120120
class_name, test_name, b.ns_iter_summ.sum
121121
))?;
122122
}
123123

124124
TestResult::TrOk => {
125-
self.write_message(&*format!(
125+
self.write_message(&format!(
126126
"<testcase classname=\"{}\" \
127127
name=\"{}\" time=\"{}\"/>",
128128
class_name,

test/src/formatters/pretty.rs

+8-8
Original file line numberDiff line numberDiff line change
@@ -134,7 +134,7 @@ impl<T: Write> PrettyFormatter<T> {
134134

135135
let mut results = Vec::new();
136136
let mut stdouts = String::new();
137-
for &(ref f, ref stdout) in inputs {
137+
for (f, stdout) in inputs {
138138
results.push(f.name.to_string());
139139
if !stdout.is_empty() {
140140
stdouts.push_str(&format!("---- {} stdout ----\n", f.name));
@@ -171,9 +171,9 @@ impl<T: Write> PrettyFormatter<T> {
171171
fn write_test_name(&mut self, desc: &TestDesc) -> io::Result<()> {
172172
let name = desc.padded_name(self.max_name_len, desc.name.padding());
173173
if let Some(test_mode) = desc.test_mode() {
174-
self.write_plain(&format!("test {name} - {test_mode} ... "))?;
174+
self.write_plain(format!("test {name} - {test_mode} ... "))?;
175175
} else {
176-
self.write_plain(&format!("test {name} ... "))?;
176+
self.write_plain(format!("test {name} ... "))?;
177177
}
178178

179179
Ok(())
@@ -188,7 +188,7 @@ impl<T: Write> OutputFormatter for PrettyFormatter<T> {
188188
} else {
189189
String::new()
190190
};
191-
self.write_plain(&format!("\nrunning {test_count} {noun}{shuffle_seed_msg}\n"))
191+
self.write_plain(format!("\nrunning {test_count} {noun}{shuffle_seed_msg}\n"))
192192
}
193193

194194
fn write_test_start(&mut self, desc: &TestDesc) -> io::Result<()> {
@@ -221,7 +221,7 @@ impl<T: Write> OutputFormatter for PrettyFormatter<T> {
221221
TestResult::TrIgnored => self.write_ignored(desc.ignore_message)?,
222222
TestResult::TrBench(ref bs) => {
223223
self.write_bench()?;
224-
self.write_plain(&format!(": {}", fmt_bench_samples(bs)))?;
224+
self.write_plain(format!(": {}", fmt_bench_samples(bs)))?;
225225
}
226226
TestResult::TrTimedFail => self.write_time_failed()?,
227227
}
@@ -231,7 +231,7 @@ impl<T: Write> OutputFormatter for PrettyFormatter<T> {
231231
}
232232

233233
fn write_timeout(&mut self, desc: &TestDesc) -> io::Result<()> {
234-
self.write_plain(&format!(
234+
self.write_plain(format!(
235235
"test {} has been running for over {} seconds\n",
236236
desc.name,
237237
time::TEST_WARN_TIMEOUT_S
@@ -267,11 +267,11 @@ impl<T: Write> OutputFormatter for PrettyFormatter<T> {
267267
state.passed, state.failed, state.ignored, state.measured, state.filtered_out
268268
);
269269

270-
self.write_plain(&s)?;
270+
self.write_plain(s)?;
271271

272272
if let Some(ref exec_time) = state.exec_time {
273273
let time_str = format!("; finished in {exec_time}");
274-
self.write_plain(&time_str)?;
274+
self.write_plain(time_str)?;
275275
}
276276

277277
self.write_plain("\n\n")?;

test/src/formatters/terse.rs

+10-10
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ impl<T: Write> TerseFormatter<T> {
7070
// screen when dealing with line-buffered output (e.g., piping to
7171
// `stamp` in the rust CI).
7272
let out = format!(" {}/{}\n", self.test_count + 1, self.total_test_count);
73-
self.write_plain(&out)?;
73+
self.write_plain(out)?;
7474
}
7575

7676
self.test_count += 1;
@@ -106,7 +106,7 @@ impl<T: Write> TerseFormatter<T> {
106106
self.write_plain("\nsuccesses:\n")?;
107107
let mut successes = Vec::new();
108108
let mut stdouts = String::new();
109-
for &(ref f, ref stdout) in &state.not_failures {
109+
for (f, stdout) in &state.not_failures {
110110
successes.push(f.name.to_string());
111111
if !stdout.is_empty() {
112112
stdouts.push_str(&format!("---- {} stdout ----\n", f.name));
@@ -132,7 +132,7 @@ impl<T: Write> TerseFormatter<T> {
132132
self.write_plain("\nfailures:\n")?;
133133
let mut failures = Vec::new();
134134
let mut fail_out = String::new();
135-
for &(ref f, ref stdout) in &state.failures {
135+
for (f, stdout) in &state.failures {
136136
failures.push(f.name.to_string());
137137
if !stdout.is_empty() {
138138
fail_out.push_str(&format!("---- {} stdout ----\n", f.name));
@@ -157,9 +157,9 @@ impl<T: Write> TerseFormatter<T> {
157157
fn write_test_name(&mut self, desc: &TestDesc) -> io::Result<()> {
158158
let name = desc.padded_name(self.max_name_len, desc.name.padding());
159159
if let Some(test_mode) = desc.test_mode() {
160-
self.write_plain(&format!("test {name} - {test_mode} ... "))?;
160+
self.write_plain(format!("test {name} - {test_mode} ... "))?;
161161
} else {
162-
self.write_plain(&format!("test {name} ... "))?;
162+
self.write_plain(format!("test {name} ... "))?;
163163
}
164164

165165
Ok(())
@@ -175,7 +175,7 @@ impl<T: Write> OutputFormatter for TerseFormatter<T> {
175175
} else {
176176
String::new()
177177
};
178-
self.write_plain(&format!("\nrunning {test_count} {noun}{shuffle_seed_msg}\n"))
178+
self.write_plain(format!("\nrunning {test_count} {noun}{shuffle_seed_msg}\n"))
179179
}
180180

181181
fn write_test_start(&mut self, desc: &TestDesc) -> io::Result<()> {
@@ -209,13 +209,13 @@ impl<T: Write> OutputFormatter for TerseFormatter<T> {
209209
self.write_test_name(desc)?;
210210
}
211211
self.write_bench()?;
212-
self.write_plain(&format!(": {}\n", fmt_bench_samples(bs)))
212+
self.write_plain(format!(": {}\n", fmt_bench_samples(bs)))
213213
}
214214
}
215215
}
216216

217217
fn write_timeout(&mut self, desc: &TestDesc) -> io::Result<()> {
218-
self.write_plain(&format!(
218+
self.write_plain(format!(
219219
"test {} has been running for over {} seconds\n",
220220
desc.name,
221221
time::TEST_WARN_TIMEOUT_S
@@ -245,11 +245,11 @@ impl<T: Write> OutputFormatter for TerseFormatter<T> {
245245
state.passed, state.failed, state.ignored, state.measured, state.filtered_out
246246
);
247247

248-
self.write_plain(&s)?;
248+
self.write_plain(s)?;
249249

250250
if let Some(ref exec_time) = state.exec_time {
251251
let time_str = format!("; finished in {exec_time}");
252-
self.write_plain(&time_str)?;
252+
self.write_plain(time_str)?;
253253
}
254254

255255
self.write_plain("\n\n")?;

test/src/lib.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -789,7 +789,7 @@ fn run_test_in_spawned_subprocess(
789789
}
790790
});
791791
let record_result2 = record_result.clone();
792-
panic::set_hook(Box::new(move |info| record_result2(Some(&info))));
792+
panic::set_hook(Box::new(move |info| record_result2(Some(info))));
793793
if let Err(message) = testfn() {
794794
panic!("{}", message);
795795
}

test/src/term/terminfo/mod.rs

+3-3
Original file line numberDiff line numberDiff line change
@@ -149,7 +149,7 @@ impl<T: Write + Send> Terminal for TerminfoTerminal<T> {
149149
// are there any terminals that have color/attrs and not sgr0?
150150
// Try falling back to sgr, then op
151151
let cmd = match ["sgr0", "sgr", "op"].iter().find_map(|cap| self.ti.strings.get(*cap)) {
152-
Some(op) => match expand(&op, &[], &mut Variables::new()) {
152+
Some(op) => match expand(op, &[], &mut Variables::new()) {
153153
Ok(cmd) => cmd,
154154
Err(e) => return Err(io::Error::new(io::ErrorKind::InvalidData, e)),
155155
},
@@ -180,12 +180,12 @@ impl<T: Write + Send> TerminfoTerminal<T> {
180180
}
181181

182182
fn dim_if_necessary(&self, color: color::Color) -> color::Color {
183-
if color >= self.num_colors && color >= 8 && color < 16 { color - 8 } else { color }
183+
if color >= self.num_colors && (8..16).contains(&color) { color - 8 } else { color }
184184
}
185185

186186
fn apply_cap(&mut self, cmd: &str, params: &[Param]) -> io::Result<bool> {
187187
match self.ti.strings.get(cmd) {
188-
Some(cmd) => match expand(&cmd, params, &mut Variables::new()) {
188+
Some(cmd) => match expand(cmd, params, &mut Variables::new()) {
189189
Ok(s) => self.out.write_all(&s).and(Ok(true)),
190190
Err(e) => Err(io::Error::new(io::ErrorKind::InvalidData, e)),
191191
},

test/src/term/terminfo/parm.rs

+4-4
Original file line numberDiff line numberDiff line change
@@ -282,14 +282,14 @@ pub(crate) fn expand(
282282
);
283283
}
284284
SetVar => {
285-
if cur >= 'A' && cur <= 'Z' {
285+
if cur.is_ascii_uppercase() {
286286
if let Some(arg) = stack.pop() {
287287
let idx = (cur as u8) - b'A';
288288
vars.sta_va[idx as usize] = arg;
289289
} else {
290290
return Err("stack is empty".to_string());
291291
}
292-
} else if cur >= 'a' && cur <= 'z' {
292+
} else if cur.is_ascii_lowercase() {
293293
if let Some(arg) = stack.pop() {
294294
let idx = (cur as u8) - b'a';
295295
vars.dyn_va[idx as usize] = arg;
@@ -301,10 +301,10 @@ pub(crate) fn expand(
301301
}
302302
}
303303
GetVar => {
304-
if cur >= 'A' && cur <= 'Z' {
304+
if cur.is_ascii_uppercase() {
305305
let idx = (cur as u8) - b'A';
306306
stack.push(vars.sta_va[idx as usize].clone());
307-
} else if cur >= 'a' && cur <= 'z' {
307+
} else if cur.is_ascii_lowercase() {
308308
let idx = (cur as u8) - b'a';
309309
stack.push(vars.dyn_va[idx as usize].clone());
310310
} else {

test/src/term/terminfo/searcher.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ pub(crate) fn get_dbpath_for_term(term: &str) -> Option<PathBuf> {
2222

2323
if let Ok(dirs) = env::var("TERMINFO_DIRS") {
2424
for i in dirs.split(':') {
25-
if i == "" {
25+
if i.is_empty() {
2626
dirs_to_search.push(PathBuf::from("/usr/share/terminfo"));
2727
} else {
2828
dirs_to_search.push(PathBuf::from(i));
@@ -49,7 +49,7 @@ pub(crate) fn get_dbpath_for_term(term: &str) -> Option<PathBuf> {
4949
for mut p in dirs_to_search {
5050
if fs::metadata(&p).is_ok() {
5151
p.push(&first_char.to_string());
52-
p.push(&term);
52+
p.push(term);
5353
if fs::metadata(&p).is_ok() {
5454
return Some(p);
5555
}

test/src/test_result.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ pub fn calc_result<'a>(
3333
) -> TestResult {
3434
let result = match (&desc.should_panic, task_result) {
3535
(&ShouldPanic::No, Ok(())) | (&ShouldPanic::Yes, Err(_)) => TestResult::TrOk,
36-
(&ShouldPanic::YesWithMessage(msg), Err(ref err)) => {
36+
(&ShouldPanic::YesWithMessage(msg), Err(err)) => {
3737
let maybe_panic_str = err
3838
.downcast_ref::<String>()
3939
.map(|e| &**e)
@@ -52,7 +52,7 @@ pub fn calc_result<'a>(
5252
r#"expected panic with string value,
5353
found non-string value: `{:?}`
5454
expected substring: `{:?}`"#,
55-
(**err).type_id(),
55+
(*err).type_id(),
5656
msg
5757
))
5858
}

0 commit comments

Comments
 (0)