summaryrefslogtreecommitdiffstats
path: root/util/flashrom_tester
diff options
context:
space:
mode:
authorEvan Benn <evanbenn@chromium.org>2022-09-09 15:35:28 +1000
committerAngel Pons <th3fanbus@gmail.com>2022-09-19 07:25:55 +0000
commit1f65e9029b8c9d0fbe6c60d8fee249c57fd3f3fa (patch)
tree67a0721038563dc7b0d75da760387424217e2062 /util/flashrom_tester
parent813c68ad9cf2bc61b9923b3eab429ed318359281 (diff)
downloadflashrom-1f65e9029b8c9d0fbe6c60d8fee249c57fd3f3fa.tar.gz
flashrom-1f65e9029b8c9d0fbe6c60d8fee249c57fd3f3fa.tar.bz2
flashrom-1f65e9029b8c9d0fbe6c60d8fee249c57fd3f3fa.zip
flashrom_tester: Fix cargo check and clippy warnings
Change-Id: I50c5af61e06df1bb6956f347cb6806a7eca6ce0e Signed-off-by: Evan Benn <evanbenn@chromium.org> Reviewed-on: https://review.coreboot.org/c/flashrom/+/67472 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Peter Marheine <pmarheine@chromium.org> Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Diffstat (limited to 'util/flashrom_tester')
-rw-r--r--util/flashrom_tester/flashrom/src/cmd.rs19
-rw-r--r--util/flashrom_tester/flashrom/src/lib.rs14
-rw-r--r--util/flashrom_tester/src/cros_sysinfo.rs1
-rw-r--r--util/flashrom_tester/src/logger.rs2
-rw-r--r--util/flashrom_tester/src/rand_util.rs4
-rw-r--r--util/flashrom_tester/src/tester.rs8
-rw-r--r--util/flashrom_tester/src/tests.rs22
-rw-r--r--util/flashrom_tester/src/utils.rs8
8 files changed, 33 insertions, 45 deletions
diff --git a/util/flashrom_tester/flashrom/src/cmd.rs b/util/flashrom_tester/flashrom/src/cmd.rs
index 57ae97556..faf597d8f 100644
--- a/util/flashrom_tester/flashrom/src/cmd.rs
+++ b/util/flashrom_tester/flashrom/src/cmd.rs
@@ -67,7 +67,7 @@ pub struct IOOpt<'a> {
pub region: Option<(&'a str, &'a str)>, // --image
}
-#[derive(PartialEq, Debug)]
+#[derive(PartialEq, Eq, Debug)]
pub struct FlashromCmd {
pub path: String,
pub fc: FlashChip,
@@ -84,9 +84,9 @@ fn flashrom_extract_size(stdout: &str) -> Result<i64, FlashromError> {
.last()
.map(str::parse::<i64>)
{
- None => return Err("Found no purely-numeric lines in flashrom output".into()),
+ None => Err("Found no purely-numeric lines in flashrom output".into()),
Some(Err(e)) => {
- return Err(format!("Failed to parse flashrom size output as integer: {}", e).into())
+ Err(format!("Failed to parse flashrom size output as integer: {}", e).into())
}
Some(Ok(sz)) => Ok(sz),
}
@@ -169,7 +169,7 @@ impl crate::Flashrom for FlashromCmd {
};
let (stdout, _) = self.dispatch(opts, "wp_list")?;
- if stdout.len() == 0 {
+ if stdout.is_empty() {
return Err(
"wp_list isn't supported on platforms using the Linux kernel SPI driver wp_list"
.into(),
@@ -208,7 +208,7 @@ impl crate::Flashrom for FlashromCmd {
let opts = FlashromOpt {
wp_opt: WPOpt {
- range: range,
+ range,
enable: en,
disable: !en,
..Default::default()
@@ -249,7 +249,7 @@ impl crate::Flashrom for FlashromCmd {
..Default::default()
};
- let (stdout, _) = self.dispatch(opts, "read_region_into_file")?;
+ self.dispatch(opts, "read_region_into_file")?;
Ok(())
}
@@ -405,11 +405,6 @@ pub fn dut_ctrl_toggle_wp(en: bool) -> Result<(Vec<u8>, Vec<u8>), FlashromError>
dut_ctrl(&args)
}
-pub fn dut_ctrl_servo_type() -> Result<(Vec<u8>, Vec<u8>), FlashromError> {
- let args = ["servo_type"];
- dut_ctrl(&args)
-}
-
fn dut_ctrl(args: &[&str]) -> Result<(Vec<u8>, Vec<u8>), FlashromError> {
let output = match Command::new("dut-control").args(args).output() {
Ok(x) => x,
@@ -431,7 +426,7 @@ fn dut_ctrl(args: &[&str]) -> Result<(Vec<u8>, Vec<u8>), FlashromError> {
}
fn hex_range_string(s: i64, l: i64) -> String {
- format!("{:#08X},{:#08X}", s, l).to_string()
+ format!("{:#08X},{:#08X}", s, l)
}
/// Get a flash vendor and name from the first matching line of flashrom output.
diff --git a/util/flashrom_tester/flashrom/src/lib.rs b/util/flashrom_tester/flashrom/src/lib.rs
index 7326391e1..7e245ae84 100644
--- a/util/flashrom_tester/flashrom/src/lib.rs
+++ b/util/flashrom_tester/flashrom/src/lib.rs
@@ -49,7 +49,7 @@ pub use libflashrom::{
FLASHROM_MSG_INFO, FLASHROM_MSG_SPEW, FLASHROM_MSG_WARN,
};
-#[derive(Copy, Clone, PartialEq, Debug)]
+#[derive(Copy, Clone, PartialEq, Eq, Debug)]
pub enum FlashChip {
EC,
HOST,
@@ -59,23 +59,21 @@ pub enum FlashChip {
impl FlashChip {
pub fn from(s: &str) -> Result<FlashChip, &str> {
- let r = match s {
+ match s {
"ec" => Ok(FlashChip::EC),
"host" => Ok(FlashChip::HOST),
"servo" => Ok(FlashChip::SERVO),
"dediprog" => Ok(FlashChip::DEDIPROG),
_ => Err("cannot convert str to enum"),
- };
- return r;
+ }
}
pub fn to(fc: FlashChip) -> &'static str {
- let r = match fc {
+ match fc {
FlashChip::EC => "ec",
FlashChip::HOST => "host",
FlashChip::SERVO => "ft2231_spi:type=servo-v2",
FlashChip::DEDIPROG => "dediprog",
- };
- return r;
+ }
}
/// Return the programmer string and optional programmer options
@@ -97,7 +95,7 @@ impl FlashChip {
}
}
-#[derive(Debug, PartialEq)]
+#[derive(Debug, PartialEq, Eq)]
pub struct FlashromError {
msg: String,
}
diff --git a/util/flashrom_tester/src/cros_sysinfo.rs b/util/flashrom_tester/src/cros_sysinfo.rs
index 7073eddf2..e047f8e61 100644
--- a/util/flashrom_tester/src/cros_sysinfo.rs
+++ b/util/flashrom_tester/src/cros_sysinfo.rs
@@ -34,7 +34,6 @@
//
use std::ffi::OsStr;
-use std::fmt::Debug;
use std::io::Result as IoResult;
use std::process::{Command, Stdio};
diff --git a/util/flashrom_tester/src/logger.rs b/util/flashrom_tester/src/logger.rs
index e1c00f5de..12e54957b 100644
--- a/util/flashrom_tester/src/logger.rs
+++ b/util/flashrom_tester/src/logger.rs
@@ -129,7 +129,7 @@ mod tests {
for record in records {
if logger.enabled(record.metadata()) {
- logger.log(&record);
+ logger.log(record);
}
}
}
diff --git a/util/flashrom_tester/src/rand_util.rs b/util/flashrom_tester/src/rand_util.rs
index 51411d0d5..1b0912bed 100644
--- a/util/flashrom_tester/src/rand_util.rs
+++ b/util/flashrom_tester/src/rand_util.rs
@@ -42,9 +42,7 @@ use rand::prelude::*;
pub fn gen_rand_testdata(path: &str, size: usize) -> std::io::Result<()> {
let mut buf = BufWriter::new(File::create(path)?);
- let mut a: Vec<u8> = Vec::with_capacity(size);
- // Pad out array to be filled in by Rng::fill().
- a.resize(size, 0b0);
+ let mut a: Vec<u8> = vec![0; size];
thread_rng().fill(a.as_mut_slice());
buf.write_all(a.as_slice())?;
diff --git a/util/flashrom_tester/src/tester.rs b/util/flashrom_tester/src/tester.rs
index e701763aa..f2c38465d 100644
--- a/util/flashrom_tester/src/tester.rs
+++ b/util/flashrom_tester/src/tester.rs
@@ -69,8 +69,8 @@ impl<'a> TestEnv<'a> {
pub fn create(chip_type: FlashChip, cmd: &'a dyn Flashrom) -> Result<Self, FlashromError> {
let rom_sz = cmd.get_size()?;
let out = TestEnv {
- chip_type: chip_type,
- cmd: cmd,
+ chip_type,
+ cmd,
layout: utils::get_layout_sizes(rom_sz)?,
wp: WriteProtectState::from_hardware(cmd, chip_type)?,
original_flash_contents: "/tmp/flashrom_tester_golden.bin".into(),
@@ -462,7 +462,7 @@ impl<T: TestCase + ?Sized> TestCase for &T {
}
#[allow(dead_code)]
-#[derive(Copy, Clone, PartialEq, Debug)]
+#[derive(Copy, Clone, PartialEq, Eq, Debug)]
pub enum TestConclusion {
Pass,
Fail,
@@ -514,7 +514,7 @@ where
results
}
-#[derive(Debug, PartialEq, Clone, Copy)]
+#[derive(Debug, PartialEq, Eq, Clone, Copy)]
pub enum OutputFormat {
Pretty,
Json,
diff --git a/util/flashrom_tester/src/tests.rs b/util/flashrom_tester/src/tests.rs
index 7d746b5d2..1527a6e68 100644
--- a/util/flashrom_tester/src/tests.rs
+++ b/util/flashrom_tester/src/tests.rs
@@ -43,8 +43,8 @@ use std::fs::{self, File};
use std::io::{BufRead, Write};
use std::sync::atomic::AtomicBool;
-const LAYOUT_FILE: &'static str = "/tmp/layout.file";
-const ELOG_FILE: &'static str = "/tmp/elog.file";
+const LAYOUT_FILE: &str = "/tmp/layout.file";
+const ELOG_FILE: &str = "/tmp/elog.file";
/// Iterate over tests, yielding only those tests with names matching filter_names.
///
@@ -79,6 +79,7 @@ fn filter_tests<'n, 't: 'n, T: TestCase>(
/// test_names is the case-insensitive names of tests to run; if None, then all
/// tests are run. Provided names that don't match any known test will be logged
/// as a warning.
+#[allow(clippy::or_fun_call)] // This is used for to_string here and we don't care.
pub fn generic<'a, TN: Iterator<Item = &'a str>>(
cmd: &dyn Flashrom,
fc: FlashChip,
@@ -132,11 +133,8 @@ pub fn generic<'a, TN: Iterator<Item = &'a str>>(
// Limit the tests to only those requested, unless none are requested
// in which case all tests are included.
- let mut filter_names: Option<HashSet<String>> = if let Some(names) = test_names {
- Some(names.map(|s| s.to_lowercase()).collect())
- } else {
- None
- };
+ let mut filter_names: Option<HashSet<String>> =
+ test_names.map(|names| names.map(|s| s.to_lowercase()).collect());
let tests = filter_tests(tests, &mut filter_names);
let chip_name = cmd
@@ -153,15 +151,15 @@ pub fn generic<'a, TN: Iterator<Item = &'a str>>(
warn!("No test matches filter name \"{}\"", leftover);
}
- let os_rel = sys_info::os_release().unwrap_or("<Unknown OS>".to_string());
+ let os_release = sys_info::os_release().unwrap_or("<Unknown OS>".to_string());
let system_info = cros_sysinfo::system_info().unwrap_or("<Unknown System>".to_string());
let bios_info = cros_sysinfo::bios_info().unwrap_or("<Unknown BIOS>".to_string());
let meta_data = tester::ReportMetaData {
- chip_name: chip_name,
- os_release: os_rel,
- system_info: system_info,
- bios_info: bios_info,
+ chip_name,
+ os_release,
+ system_info,
+ bios_info,
};
tester::collate_all_test_runs(&results, meta_data, output_format);
Ok(())
diff --git a/util/flashrom_tester/src/utils.rs b/util/flashrom_tester/src/utils.rs
index e8fbb5311..4e8dd7cce 100644
--- a/util/flashrom_tester/src/utils.rs
+++ b/util/flashrom_tester/src/utils.rs
@@ -143,14 +143,14 @@ pub fn get_hardware_wp() -> std::result::Result<bool, String> {
match wp_s_val {
Ok(v) => {
if v == 1 {
- return Ok(true);
+ Ok(true)
} else if v == 0 {
- return Ok(false);
+ Ok(false)
} else {
- return Err("Unknown write protect value".into());
+ Err("Unknown write protect value".into())
}
}
- Err(_) => return Err("Cannot parse write protect value".into()),
+ Err(_) => Err("Cannot parse write protect value".into()),
}
}