feat: add asynq worker skeleton

This commit is contained in:
Philipp
2026-06-11 09:48:29 +02:00
parent fd9a99a6d8
commit e34dc28fd3
9 changed files with 255 additions and 1 deletions
+37
View File
@@ -0,0 +1,37 @@
package tasks
import (
"context"
"log/slog"
"testing"
"github.com/hibiken/asynq"
)
func TestDummyHandlerProcessesValidTask(t *testing.T) {
task, err := NewDummyTask("hello-worker")
if err != nil {
t.Fatalf("NewDummyTask() error = %v", err)
}
handler := NewDummyHandler(slog.Default())
if err := handler.ProcessTask(context.Background(), task); err != nil {
t.Fatalf("ProcessTask() error = %v", err)
}
}
func TestDummyHandlerRejectsInvalidPayload(t *testing.T) {
handler := NewDummyHandler(slog.Default())
err := handler.ProcessTask(context.Background(), asynq.NewTask(TypeDummy, []byte(`{`)))
if err == nil {
t.Fatal("ProcessTask() error = nil, want error")
}
}
func TestDummyHandlerRejectsMissingMessage(t *testing.T) {
handler := NewDummyHandler(slog.Default())
err := handler.ProcessTask(context.Background(), asynq.NewTask(TypeDummy, []byte(`{"message":""}`)))
if err == nil {
t.Fatal("ProcessTask() error = nil, want error")
}
}