gte/internal/storage/dispatch_test.go

43 lines
852 B
Go
Raw Normal View History

2021-06-25 09:14:27 +02:00
package storage_test
2021-06-24 06:56:00 +02:00
import (
"fmt"
"testing"
"git.ewintr.nl/go-kit/test"
2021-06-25 09:14:27 +02:00
"git.ewintr.nl/gte/internal/storage"
2021-06-24 06:56:00 +02:00
"git.ewintr.nl/gte/internal/task"
"git.ewintr.nl/gte/pkg/msend"
)
func TestDispatcherDispatch(t *testing.T) {
mem := msend.NewMemory()
2021-06-25 09:14:27 +02:00
disp := storage.NewDispatcher(mem)
2021-06-24 06:56:00 +02:00
tsk := &task.Task{
Id: "id",
Version: 3,
Action: "action",
Project: "project",
Due: task.NewDate(2021, 6, 24),
}
t.Run("err", func(t *testing.T) {
expErr := fmt.Errorf("not good")
mem.Err = expErr
actErr := disp.Dispatch(tsk)
test.Equals(t, expErr, actErr)
})
t.Run("success", func(t *testing.T) {
mem.Err = nil
test.OK(t, disp.Dispatch(tsk))
test.Equals(t, 1, len(mem.Messages))
actMsg := mem.Messages[0]
test.Equals(t, tsk.FormatSubject(), actMsg.Subject)
test.Equals(t, tsk.FormatBody(), actMsg.Body)
})
}