]> code.octet-stream.net Git - hashgood/blobdiff - src/verify.rs
Fix clippy lint for write! vs writeln!
[hashgood] / src / verify.rs
index e655d1a5052024a33d82079098f3edc82614be9c..c3d0147507df69c66633295da2a17e1739f745e9 100644 (file)
@@ -23,7 +23,7 @@ pub fn get_candidate_hashes(opt: &Opt) -> Result<Option<CandidateHashes>, String
 /// Generate a candidate hash from the provided command line parameter, or throw an error.
 fn get_by_parameter(param: &str) -> Result<CandidateHashes, String> {
     let bytes =
 /// Generate a candidate hash from the provided command line parameter, or throw an error.
 fn get_by_parameter(param: &str) -> Result<CandidateHashes, String> {
     let bytes =
-        hex::decode(&param).map_err(|_| "Provided hash is invalid or truncated hex".to_owned())?;
+        hex::decode(param).map_err(|_| "Provided hash is invalid or truncated hex".to_owned())?;
     let alg = Algorithm::from_len(bytes.len())?;
     let candidate = CandidateHash {
         filename: None,
     let alg = Algorithm::from_len(bytes.len())?;
     let candidate = CandidateHash {
         filename: None,
@@ -254,6 +254,7 @@ mod tests {
         let valid_sha1 = "b314c7ebb7d599944981908b7f3ed33a30e78f3a";
         let valid_sha1_2 = valid_sha1.to_uppercase();
         let valid_sha256 = "1eb85fc97224598dad1852b5d6483bbcf0aa8608790dcc657a5a2a761ae9c8c6";
         let valid_sha1 = "b314c7ebb7d599944981908b7f3ed33a30e78f3a";
         let valid_sha1_2 = valid_sha1.to_uppercase();
         let valid_sha256 = "1eb85fc97224598dad1852b5d6483bbcf0aa8608790dcc657a5a2a761ae9c8c6";
+        let valid_sha512 = "f4f7de1665cdcd00b2e526da6876f3e06a37da3549e9f880602f64407f602983a571c142eb0de0eacfc9c1d0f534e9339cdce04eb9daddc6ddfa8cf34853beed";
 
         let invalid1 = "x";
         let invalid2 = "a";
 
         let invalid1 = "x";
         let invalid2 = "a";
@@ -289,9 +290,16 @@ mod tests {
                 ..
             })
         ));
                 ..
             })
         ));
+        assert!(matches!(
+            read_raw_candidate_from_file(valid_sha512, example_path),
+            Some(CandidateHashes {
+                alg: Algorithm::Sha512,
+                ..
+            })
+        ));
 
         for i in &[invalid1, invalid2, invalid3, invalid4, invalid5] {
 
         for i in &[invalid1, invalid2, invalid3, invalid4, invalid5] {
-            assert!(read_raw_candidate_from_file(*i, example_path).is_none());
+            assert!(read_raw_candidate_from_file(i, example_path).is_none());
         }
     }
 
         }
     }