Skip to content

Commit a64c42a

Browse files
committed
chore: Clippy and fmt fixes
1 parent e6d0357 commit a64c42a

5 files changed

Lines changed: 43 additions & 23 deletions

File tree

src/bias.rs

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2514,11 +2514,11 @@ mod tests {
25142514
let pos_counts = [100u64; 255];
25152515
let neg_counts = [100u64; 255];
25162516

2517-
for i in 200..255 {
2518-
p_pos[i] = 1.0 / 55.0;
2517+
for value in p_pos.iter_mut().skip(200) {
2518+
*value = 1.0 / 55.0;
25192519
}
2520-
for i in 0..55 {
2521-
p_neg[i] = 1.0 / 55.0;
2520+
for value in p_neg.iter_mut().take(55) {
2521+
*value = 1.0 / 55.0;
25222522
}
25232523

25242524
let pos_sum: f64 = p_pos.iter().sum();
@@ -2640,11 +2640,11 @@ mod tests {
26402640
let pos_counts = [100u64; 255];
26412641
let neg_counts = [100u64; 255];
26422642

2643-
for i in 180..255 {
2644-
p_pos[i] = 1.0 / 75.0;
2643+
for value in p_pos.iter_mut().skip(180) {
2644+
*value = 1.0 / 75.0;
26452645
}
2646-
for i in 0..75 {
2647-
p_neg[i] = 1.0 / 75.0;
2646+
for value in p_neg.iter_mut().take(75) {
2647+
*value = 1.0 / 75.0;
26482648
}
26492649

26502650
let pos_sum: f64 = p_pos.iter().sum();

src/cli/handlers.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -440,7 +440,7 @@ fn compute_distance_chunk_size(
440440
) -> usize {
441441
debug_assert!(total_samples > 0);
442442

443-
let min_chunk_size = total_samples.min(100).max(1);
443+
let min_chunk_size = total_samples.clamp(1, 100);
444444
let raw_chunk_size = budget_bytes / per_sample_bytes.max(1);
445445

446446
raw_chunk_size.clamp(min_chunk_size, total_samples)

src/io.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ pub fn is_sequence_file(path: &Path) -> bool {
6565
pub fn read_entries<P: AsRef<Path>>(path: P) -> io::Result<Vec<Entry>> {
6666
let file = File::open(path)?;
6767
let file_size = file.metadata()?.len() as usize;
68-
if file_size % ENTRY_SIZE != 0 {
68+
if !file_size.is_multiple_of(ENTRY_SIZE) {
6969
return Err(io::Error::new(
7070
io::ErrorKind::InvalidData,
7171
format!("entry file size {file_size} is not a multiple of {ENTRY_SIZE}"),

src/query.rs

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -318,6 +318,9 @@ pub struct QueryResult {
318318
pub total_query_weight: f64,
319319
}
320320

321+
type SampleHitMap = HashMap<u32, (u32, f64)>;
322+
type QueryBucketHitMap = HashMap<usize, SampleHitMap>;
323+
321324
impl QueryResult {
322325
pub fn top(&self, n: usize) -> Vec<&SampleMatch> {
323326
let mut sorted: Vec<_> = self.matches.iter().collect();
@@ -528,10 +531,10 @@ impl QueryEngine {
528531

529532
let bias_table = &self.bias_table;
530533

531-
let bucket_maps: Vec<HashMap<usize, HashMap<u32, (u32, f64)>>> = (0..BUCKET_COUNT)
534+
let bucket_maps: Vec<QueryBucketHitMap> = (0..BUCKET_COUNT)
532535
.into_par_iter()
533536
.map(|bucket_idx| {
534-
let mut local_maps: HashMap<usize, HashMap<u32, (u32, f64)>> = HashMap::new();
537+
let mut local_maps: QueryBucketHitMap = HashMap::new();
535538

536539
let query_bucket = sketch.bucket(bucket_idx);
537540
if query_bucket.is_empty() {
@@ -627,10 +630,10 @@ impl QueryEngine {
627630
})
628631
.collect();
629632

630-
let merged: Vec<HashMap<u32, (u32, f64)>> = (0..chunk_len)
633+
let merged: Vec<SampleHitMap> = (0..chunk_len)
631634
.into_par_iter()
632635
.map(|local_idx| {
633-
let mut combined: HashMap<u32, (u32, f64)> = HashMap::new();
636+
let mut combined: SampleHitMap = HashMap::new();
634637
for per_bucket in &bucket_maps {
635638
if let Some(local_map) = per_bucket.get(&local_idx) {
636639
for (&db_id, &(count, weight)) in local_map {

tests/coverage_tests.rs

Lines changed: 26 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -230,14 +230,21 @@ fn test_expand_input_paths_relative_paths() -> Result<()> {
230230
fn test_expand_input_paths_compressed_files() -> Result<()> {
231231
let env = CoverageTestEnvironment::new()?;
232232

233-
let gz_file = env.create_test_fasta("test.fa.gz", ">seq\nACGT\n")?;
234-
let fq_gz_file = env.create_test_fasta("test.fq.gz", "@seq\nACGT\n+\nIIII\n")?;
233+
let compressed_files = [
234+
env.create_test_fasta("test.fa.gz", ">seq\nACGT\n")?,
235+
env.create_test_fasta("test.fq.gz", "@seq\nACGT\n+\nIIII\n")?,
236+
env.create_test_fasta("test.fa.bz2", ">seq\nACGT\n")?,
237+
env.create_test_fasta("test.fasta.xz", ">seq\nACGT\n")?,
238+
env.create_test_fasta("test.fastq.zst", "@seq\nACGT\n+\nIIII\n")?,
239+
env.create_test_fasta("test.fq.zstd", "@seq\nACGT\n+\nIIII\n")?,
240+
];
235241

236-
let result = expand_input_paths(&[gz_file.clone(), fq_gz_file.clone()])?;
242+
let result = expand_input_paths(&compressed_files)?;
237243

238-
assert_eq!(result.len(), 2);
239-
assert!(result.contains(&gz_file));
240-
assert!(result.contains(&fq_gz_file));
244+
assert_eq!(result.len(), compressed_files.len());
245+
for file in compressed_files {
246+
assert!(result.contains(&file));
247+
}
241248

242249
Ok(())
243250
}
@@ -328,9 +335,19 @@ fn test_is_sequence_file_edge_cases() {
328335
assert!(is_sequence_file(Path::new("file.name.with.dots.fa")));
329336
assert!(is_sequence_file(Path::new("version.1.0.fasta")));
330337

331-
assert!(is_sequence_file(Path::new("file.fastq.gz")));
332-
assert!(is_sequence_file(Path::new("file.fq.gz")));
333-
assert!(!is_sequence_file(Path::new("file.fa.bz2")));
338+
for filename in [
339+
"file.fastq.gz",
340+
"file.fq.gz",
341+
"file.fa.bz2",
342+
"file.fasta.xz",
343+
"file.fastq.zst",
344+
"file.fq.zstd",
345+
] {
346+
assert!(
347+
is_sequence_file(Path::new(filename)),
348+
"Failed for {filename}"
349+
);
350+
}
334351

335352
let mixed_case = vec![
336353
"File.Fa",

0 commit comments

Comments
 (0)