Skip to content

Commit c8273e0

Browse files
authored
Merge pull request #1404 from nidhalmessaoudi/master
Always showing correct progress percentages.
2 parents ff50159 + 34aafa8 commit c8273e0

File tree

1 file changed

+4
-4
lines changed

1 file changed

+4
-4
lines changed

src/verify.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -13,14 +13,15 @@ pub fn verify<'a>(
1313
progress: (usize, usize),
1414
verbose: bool,
1515
) -> Result<(), &'a Exercise> {
16-
let (mut num_done, total) = progress;
16+
let (num_done, total) = progress;
1717
let bar = ProgressBar::new(total as u64);
18+
let mut percentage = num_done as f32 / total as f32 * 100.0;
1819
bar.set_style(ProgressStyle::default_bar()
1920
.template("Progress: [{bar:60.green/red}] {pos}/{len} {msg}")
2021
.progress_chars("#>-")
2122
);
2223
bar.set_position(num_done as u64);
23-
bar.set_message(format!("({:.1} %)", 0.));
24+
bar.set_message(format!("({:.1} %)", percentage));
2425

2526
for exercise in exercises {
2627
let compile_result = match exercise.mode {
@@ -31,8 +32,7 @@ pub fn verify<'a>(
3132
if !compile_result.unwrap_or(false) {
3233
return Err(exercise);
3334
}
34-
num_done += 1;
35-
let percentage = num_done as f32 / total as f32 * 100.0;
35+
percentage += 100.0 / total as f32;
3636
bar.inc(1);
3737
bar.set_message(format!("({:.1} %)", percentage));
3838
}

0 commit comments

Comments
 (0)