From 5147625901e9a0f5771a59cf281c598233a05195 Mon Sep 17 00:00:00 2001 From: Erik Winter Date: Tue, 7 Sep 2021 06:50:30 +0200 Subject: [PATCH] apply updates in commands and done test --- cmd/cli/command/folder.go | 3 ++- cmd/cli/command/project.go | 3 ++- cmd/cli/command/today.go | 1 + cmd/cli/command/tomorrow.go | 3 ++- cmd/cli/command/week.go | 1 + internal/process/list.go | 7 +++++++ internal/process/list_test.go | 13 ++++++++++--- 7 files changed, 25 insertions(+), 6 deletions(-) diff --git a/cmd/cli/command/folder.go b/cmd/cli/command/folder.go index 7fbde0a..0ecb746 100644 --- a/cmd/cli/command/folder.go +++ b/cmd/cli/command/folder.go @@ -35,7 +35,8 @@ func NewFolder(conf *configuration.Configuration, cmdArgs []string) (*Folder, er } reqs := process.ListReqs{ - Folder: folder, + Folder: folder, + ApplyUpdates: true, } lister := process.NewList(local, reqs) diff --git a/cmd/cli/command/project.go b/cmd/cli/command/project.go index b53dae8..9c392ea 100644 --- a/cmd/cli/command/project.go +++ b/cmd/cli/command/project.go @@ -22,7 +22,8 @@ func NewProject(conf *configuration.Configuration, cmdArgs []string) (*Project, return &Project{}, ErrInvalidAmountOfArgs } reqs := process.ListReqs{ - Project: strings.ToLower(cmdArgs[0]), + Project: strings.ToLower(cmdArgs[0]), + ApplyUpdates: true, } lister := process.NewList(local, reqs) diff --git a/cmd/cli/command/today.go b/cmd/cli/command/today.go index 5847039..42d3ebb 100644 --- a/cmd/cli/command/today.go +++ b/cmd/cli/command/today.go @@ -21,6 +21,7 @@ func NewToday(conf *configuration.Configuration) (*Today, error) { reqs := process.ListReqs{ Due: task.Today, IncludeBefore: true, + ApplyUpdates: true, } lister := process.NewList(local, reqs) diff --git a/cmd/cli/command/tomorrow.go b/cmd/cli/command/tomorrow.go index 9aad2d0..f67effa 100644 --- a/cmd/cli/command/tomorrow.go +++ b/cmd/cli/command/tomorrow.go @@ -20,7 +20,8 @@ func NewTomorrow(conf *configuration.Configuration) (*Tomorrow, error) { } reqs := process.ListReqs{ - Due: task.Today.Add(1), + Due: task.Today.Add(1), + ApplyUpdates: true, } lister := process.NewList(local, reqs) diff --git a/cmd/cli/command/week.go b/cmd/cli/command/week.go index 8a1130a..cc0eef0 100644 --- a/cmd/cli/command/week.go +++ b/cmd/cli/command/week.go @@ -21,6 +21,7 @@ func NewWeek(conf *configuration.Configuration) (*Week, error) { reqs := process.ListReqs{ Due: task.Today.Add(7), IncludeBefore: true, + ApplyUpdates: true, } return &Week{ lister: process.NewList(local, reqs), diff --git a/internal/process/list.go b/internal/process/list.go index 0c36bc0..02f390c 100644 --- a/internal/process/list.go +++ b/internal/process/list.go @@ -67,6 +67,13 @@ func (l *List) Process() (*ListResult, error) { for i := range potentialTasks { potentialTasks[i].ApplyUpdate() } + var undoneTasks []*task.LocalTask + for _, pt := range potentialTasks { + if !pt.Done { + undoneTasks = append(undoneTasks, pt) + } + } + potentialTasks = undoneTasks } // folder diff --git a/internal/process/list_test.go b/internal/process/list_test.go index 8810f9c..127a6da 100644 --- a/internal/process/list_test.go +++ b/internal/process/list_test.go @@ -114,13 +114,20 @@ func TestListProcess(t *testing.T) { t.Run("applyupdates", func(t *testing.T) { mem := storage.NewMemory() - test.OK(t, mem.SetTasks([]*task.Task{task2, task4})) - lu := &task.LocalUpdate{ + test.OK(t, mem.SetTasks([]*task.Task{task2, task3, task4})) + lu3 := &task.LocalUpdate{ + ForVersion: task3.Version, + Fields: []string{task.FIELD_PROJECT, task.FIELD_DONE}, + Project: "project4", + Done: true, + } + test.OK(t, mem.SetLocalUpdate(task3.Id, lu3)) + lu4 := &task.LocalUpdate{ ForVersion: task4.Version, Fields: []string{task.FIELD_PROJECT}, Project: "project4", } - test.OK(t, mem.SetLocalUpdate(task4.Id, lu)) + test.OK(t, mem.SetLocalUpdate(task4.Id, lu4)) lr := process.ListReqs{ Project: "project4",