fix(verify): progress bar proportion now updates with the number of files verified
This commit is contained in:
parent
915a59e514
commit
951826e6b5
|
@ -13,13 +13,15 @@ pub fn verify<'a>(
|
||||||
progress: (usize, usize),
|
progress: (usize, usize),
|
||||||
verbose: bool,
|
verbose: bool,
|
||||||
) -> Result<(), &'a Exercise> {
|
) -> Result<(), &'a Exercise> {
|
||||||
let (num_done, total) = progress;
|
let (mut 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} {msg}")
|
.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);
|
||||||
|
bar.set_message(format!("({:.1} %)", 0.));
|
||||||
|
|
||||||
for exercise in exercises {
|
for exercise in exercises {
|
||||||
let compile_result = match exercise.mode {
|
let compile_result = match exercise.mode {
|
||||||
Mode::Test => compile_and_test(exercise, RunMode::Interactive, verbose),
|
Mode::Test => compile_and_test(exercise, RunMode::Interactive, verbose),
|
||||||
|
@ -29,9 +31,10 @@ pub fn verify<'a>(
|
||||||
if !compile_result.unwrap_or(false) {
|
if !compile_result.unwrap_or(false) {
|
||||||
return Err(exercise);
|
return Err(exercise);
|
||||||
}
|
}
|
||||||
|
num_done += 1;
|
||||||
let percentage = num_done as f32 / total as f32 * 100.0;
|
let percentage = num_done as f32 / total as f32 * 100.0;
|
||||||
bar.set_message(format!("({:.1} %)", percentage));
|
|
||||||
bar.inc(1);
|
bar.inc(1);
|
||||||
|
bar.set_message(format!("({:.1} %)", percentage));
|
||||||
}
|
}
|
||||||
Ok(())
|
Ok(())
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue