feat(verify): add progress percentage in watch mode

This commit is contained in:
azzamsa 2022-10-03 19:56:46 +07:00
parent 56a4f1680d
commit 68388e5d4f
2 changed files with 4 additions and 2 deletions

View file

@ -202,7 +202,7 @@ fn main() {
}); });
let percentage_progress = exercises_done as f32 / exercises.len() as f32 * 100.0; let percentage_progress = exercises_done as f32 / exercises.len() as f32 * 100.0;
println!( println!(
"Progress: You completed {} / {} exercises ({:.2} %).", "Progress: You completed {} / {} exercises ({:.1} %).",
exercises_done, exercises_done,
exercises.len(), exercises.len(),
percentage_progress percentage_progress

View file

@ -16,7 +16,7 @@ pub fn verify<'a>(
let (num_done, total) = progress; let (num_done, total) = progress;
let bar = ProgressBar::new(total as u64); let bar = ProgressBar::new(total as u64);
bar.set_style(ProgressStyle::default_bar() bar.set_style(ProgressStyle::default_bar()
.template("Progress: [{bar:60.green/red}] {pos}/{len}") .template("Progress: [{bar:60.green/red}] {pos}/{len} {msg}")
.progress_chars("#>-") .progress_chars("#>-")
); );
bar.set_position(num_done as u64); bar.set_position(num_done as u64);
@ -29,6 +29,8 @@ pub fn verify<'a>(
if !compile_result.unwrap_or(false) { if !compile_result.unwrap_or(false) {
return Err(exercise); return Err(exercise);
} }
let percentage = num_done as f32 / total as f32 * 100.0;
bar.set_message(format!("({:.1} %)", percentage));
bar.inc(1); bar.inc(1);
} }
Ok(()) Ok(())