From 709cfda05ba33fa98d4e44bd59b819c404ada702 Mon Sep 17 00:00:00 2001 From: Abraham Toriz Date: Fri, 25 Nov 2022 09:09:23 -0600 Subject: [PATCH] actually display the timesheets after the charts so it is always visible --- src/formatters/chart.rs | 43 ++++++++++++++++++----------------------- 1 file changed, 19 insertions(+), 24 deletions(-) diff --git a/src/formatters/chart.rs b/src/formatters/chart.rs index 00d1b2b..1df7ef2 100644 --- a/src/formatters/chart.rs +++ b/src/formatters/chart.rs @@ -176,18 +176,18 @@ pub fn print_formatted(entries: Vec, 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 "); } }