actually display the timesheets after the charts so it is always visible

This commit is contained in:
Abraham Toriz 2022-11-25 09:09:23 -06:00
parent 83498ac654
commit 709cfda05b
No known key found for this signature in database
GPG Key ID: D5B4A746DB5DD42A
1 changed files with 19 additions and 24 deletions

View File

@ -176,18 +176,18 @@ pub fn print_formatted<W: Write>(entries: Vec<Entry>, out: &mut W, facts: &Facts
week_total(week_accumulated, weekly_goal_hours),
]);
out.write_all(tabs.print(facts.env.stdout_is_tty).as_bytes())?;
if timesheets.len() == 1 {
out.write_all(format!("Timesheet: {}\n\n", timesheets.into_iter().next().unwrap()).as_bytes())?;
out.write_all(format!("\nTimesheet: {}\n", timesheets.into_iter().next().unwrap()).as_bytes())?;
} else {
let mut timesheets: Vec<_> = timesheets.into_iter().collect();
timesheets.sort_unstable();
out.write_all(format!("Timesheets: {}\n\n", timesheets.join(", ")).as_bytes())?;
out.write_all(format!("\nTimesheets: {}\n", timesheets.join(", ")).as_bytes())?;
}
out.write_all(tabs.print(facts.env.stdout_is_tty).as_bytes())?;
Ok(())
}
@ -231,10 +231,7 @@ mod tests {
print_formatted(entries, &mut out, &facts).unwrap();
assert_str_eq!(String::from_utf8_lossy(&out), "\
Timesheet: default
Date Day Chart Hours
assert_str_eq!(String::from_utf8_lossy(&out), " Date Day Chart Hours
Aug 15 Mon \u{1b}[42m \u{1b}[0m\u{1b}[48;5;10m \u{1b}[0m 5.0
16 Tue \u{1b}[42m \u{1b}[0m\u{1b}[47m \u{1b}[0m 3.5
@ -242,6 +239,8 @@ Aug 15 Mon \u{1b}[42m \u{1b}[0m\u{1b}[48;5;10m \u{1b}[0m 5.0
18 Thu \u{1b}[42m \u{1b}[0m\u{1b}[47m \u{1b}[0m 2.0
Week \u{1b}[31m14.5\u{1b}[0m/20.0
Timesheet: default
");
}
@ -262,10 +261,7 @@ Aug 15 Mon \u{1b}[42m \u{1b}[0m\u{1b}[48;5;10m \u{1b}[0m 5.0
print_formatted(entries, &mut out, &facts).unwrap();
assert_str_eq!(String::from_utf8_lossy(&out), "\
Timesheet: default
Date Day Chart Hours
assert_str_eq!(String::from_utf8_lossy(&out), " Date Day Chart Hours
Aug 28 Sun \u{1b}[48;5;10m \u{1b}[0m 5.0
@ -274,6 +270,8 @@ Aug 28 Sun \u{1b}[48;5;10m \u{1b}[0m 5.0
Aug 29 Mon \u{1b}[48;5;10m \u{1b}[0m 3.0
Week 3.0
Timesheet: default
");
}
@ -304,16 +302,15 @@ Aug 29 Mon \u{1b}[48;5;10m \u{1b}[0m 3.0
print_formatted(entries, &mut out, &facts).unwrap();
assert_str_eq!(String::from_utf8_lossy(&out), "\
Timesheet: default
Date Day Chart Hours
assert_str_eq!(String::from_utf8_lossy(&out), " Date Day Chart Hours
Aug 15 Mon \u{1b}[48;5;10m \u{1b}[0m 5.0
16 Tue 0.0
17 Wed \u{1b}[48;5;10m \u{1b}[0m 4.0
Week 9.0
Timesheet: default
");
}
@ -337,10 +334,7 @@ Aug 15 Mon \u{1b}[48;5;10m \u{1b}[0m 5.0
print_formatted(entries, &mut out, &facts).unwrap();
assert_str_eq!(String::from_utf8_lossy(&out), "\
Timesheet: default
Date Day Chart Hours
assert_str_eq!(String::from_utf8_lossy(&out), " Date Day Chart Hours
Aug 15 Mon \u{1b}[48;5;10m \u{1b}[0m 5.0
16 Tue \u{1b}[48;5;10m \u{1b}[0m 3.5
@ -348,6 +342,8 @@ Aug 15 Mon \u{1b}[48;5;10m \u{1b}[0m 5.0
18 Thu \u{1b}[48;5;10m \u{1b}[0m 2.0
Week 14.5
Timesheet: default
");
}
@ -371,10 +367,7 @@ Aug 15 Mon \u{1b}[48;5;10m \u{1b}[0m 5.0
print_formatted(entries, &mut out, &facts).unwrap();
assert_str_eq!(String::from_utf8_lossy(&out), "\
Timesheets: foo, var
Date Day Chart Hours
assert_str_eq!(String::from_utf8_lossy(&out), " Date Day Chart Hours
Aug 15 Mon \u{1b}[48;5;10m \u{1b}[0m 5.0
16 Tue \u{1b}[48;5;10m \u{1b}[0m 3.5
@ -382,6 +375,8 @@ Aug 15 Mon \u{1b}[48;5;10m \u{1b}[0m 5.0
18 Thu \u{1b}[48;5;10m \u{1b}[0m 2.0
Week 14.5
Timesheets: foo, var
");
}
}