mirror of
https://github.com/GothenburgBitFactory/timewarrior.git
synced 2025-07-07 20:06:39 +02:00
Set upper limit for summary table to now
if both filter and latest interval are open
- Closes #378 Signed-off-by: Thomas Lauf <thomas.lauf@tngtech.com>
This commit is contained in:
parent
b9d3b284fa
commit
86024b1a41
2 changed files with 43 additions and 0 deletions
|
@ -116,6 +116,11 @@ int CmdSummary (
|
|||
auto days_start = filter.is_started() ? filter.start : tracked.front ().start;
|
||||
auto days_end = filter.is_ended() ? filter.end : tracked.back ().end;
|
||||
|
||||
if (days_end == 0)
|
||||
{
|
||||
days_end = Datetime ();
|
||||
}
|
||||
|
||||
for (Datetime day = days_start; day < days_end; day++)
|
||||
{
|
||||
auto day_range = getFullDay (day);
|
||||
|
|
|
@ -63,6 +63,25 @@ Wk ?Date Day ID Tags ?Start ?End Time Total
|
|||
W\d{1,2} \d{4}-\d{2}-\d{2} .{3} @1 ?\d{1,2}:\d{2}:\d{2} \d{1,2}:\d{2}:\d{2} \d{1,2}:\d{2}:\d{2} \d{1,2}:\d{2}:\d{2}(
|
||||
W\d{1,2} \d{4}-\d{2}-\d{2} .{3} @1 ?\d{1,2}:\d{2}:\d{2} \d{1,2}:\d{2}:\d{2} \d{1,2}:\d{2}:\d{2} \d{1,2}:\d{2}:\d{2})?
|
||||
|
||||
[ ]+1:00:0[01]
|
||||
""")
|
||||
|
||||
def test_with_closed_interval_and_all_hint(self):
|
||||
"""Summary should print closed interval with :all hint"""
|
||||
now = datetime.now()
|
||||
yesterday = now - timedelta(days=1)
|
||||
tomorrow = now + timedelta(days=1)
|
||||
|
||||
self.t("track for 1h")
|
||||
|
||||
code, out, err = self.t("summary :ids :all".format(yesterday, tomorrow))
|
||||
|
||||
self.assertRegex(out, """
|
||||
Wk ?Date Day ID Tags ?Start ?End Time Total
|
||||
[ -]+
|
||||
W\d{1,2} \d{4}-\d{2}-\d{2} .{3} @1 ?\d{1,2}:\d{2}:\d{2} \d{1,2}:\d{2}:\d{2} \d{1,2}:\d{2}:\d{2} \d{1,2}:\d{2}:\d{2}(
|
||||
W\d{1,2} \d{4}-\d{2}-\d{2} .{3} @1 ?\d{1,2}:\d{2}:\d{2} \d{1,2}:\d{2}:\d{2} \d{1,2}:\d{2}:\d{2} \d{1,2}:\d{2}:\d{2})?
|
||||
|
||||
[ ]+1:00:0[01]
|
||||
""")
|
||||
|
||||
|
@ -82,6 +101,25 @@ Wk ?Date Day ID Tags ?Start End Time Total
|
|||
W\d{1,2} \d{4}-\d{2}-\d{2} .{3} @1 ?\d{1,2}:\d{2}:\d{2}[ ]+- \d{1,2}:\d{2}:\d{2} \d{1,2}:\d{2}:\d{2}(
|
||||
W\d{1,2} \d{4}-\d{2}-\d{2} .{3} @1 ?\d{1,2}:\d{2}:\d{2}[ ]+- \d{1,2}:\d{2}:\d{2} \d{1,2}:\d{2}:\d{2})?
|
||||
|
||||
[ ]+1:00:0[01]
|
||||
""")
|
||||
|
||||
def test_with_open_interval_and_all_hint(self):
|
||||
"""Summary should print open interval with :all hint"""
|
||||
now = datetime.now()
|
||||
yesterday = now - timedelta(days=1)
|
||||
tomorrow = now + timedelta(days=1)
|
||||
|
||||
self.t("start 1h ago")
|
||||
|
||||
code, out, err = self.t("summary :ids :all".format(yesterday, tomorrow))
|
||||
|
||||
self.assertRegex(out, """
|
||||
Wk ?Date Day ID Tags ?Start End Time Total
|
||||
[ -]+
|
||||
W\d{1,2} \d{4}-\d{2}-\d{2} .{3} @1 ?\d{1,2}:\d{2}:\d{2}[ ]+- \d{1,2}:\d{2}:\d{2} \d{1,2}:\d{2}:\d{2}(
|
||||
W\d{1,2} \d{4}-\d{2}-\d{2} .{3} @1 ?\d{1,2}:\d{2}:\d{2}[ ]+- \d{1,2}:\d{2}:\d{2} \d{1,2}:\d{2}:\d{2})?
|
||||
|
||||
[ ]+1:00:0[01]
|
||||
""")
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue