From 537eaf98018083f78411538fddee8db4384f23ba Mon Sep 17 00:00:00 2001 From: Bel LaPointe <153096461+breel-render@users.noreply.github.com> Date: Sun, 27 Apr 2025 11:33:59 -0600 Subject: [PATCH] cron testone tries nonempty --- src/cmd/cron/main_test.go | 60 ++++++++++++++++++++++++++++----------- 1 file changed, 43 insertions(+), 17 deletions(-) diff --git a/src/cmd/cron/main_test.go b/src/cmd/cron/main_test.go index 90d43a1..55debf9 100644 --- a/src/cmd/cron/main_test.go +++ b/src/cmd/cron/main_test.go @@ -4,6 +4,7 @@ import ( "context" "show-rss/src/cmd/cron" "show-rss/src/db" + "show-rss/src/feeds" "strconv" "testing" "time" @@ -13,24 +14,49 @@ func TestOne(t *testing.T) { ctx, can := context.WithTimeout(context.Background(), 5*time.Second) defer can() - t.Run("same ctx", func(t *testing.T) { - ctx := db.Test(t, ctx) - for i := 0; i < 2; i++ { - t.Run(strconv.Itoa(i), func(t *testing.T) { - if err := cron.One(ctx); err != nil && ctx.Err() == nil { - t.Fatalf("failed %d: %v", i, err) - } - }) - } - }) + for name, aCtx := range map[string]func() context.Context{ + "empty": func() context.Context { + return db.Test(t, ctx) + }, + "feeds": func() context.Context { + ctx := db.Test(t, ctx) - t.Run("new ctx", func(t *testing.T) { - for i := 0; i < 2; i++ { - t.Run(strconv.Itoa(i), func(t *testing.T) { - if err := cron.One(db.Test(t, ctx)); err != nil && ctx.Err() == nil { - t.Fatalf("failed %d: %v", i, err) + f, err := feeds.New(ctx) + if err != nil { + t.Fatal(err) + } + for i := 0; i < 2; i++ { + if _, err := f.Insert(ctx, strconv.Itoa(i), "* * * * *"); err != nil { + t.Fatal(err) + } + } + return ctx + }, + } { + name := name + aCtx := aCtx + t.Run(name, func(t *testing.T) { + t.Run("same ctx", func(t *testing.T) { + ctx := aCtx() + for i := 0; i < 2; i++ { + t.Run(strconv.Itoa(i), func(t *testing.T) { + if err := cron.One(ctx); err != nil && ctx.Err() == nil { + t.Fatalf("failed %d: %v", i, err) + } + }) } }) - } - }) + + t.Run("new ctx", func(t *testing.T) { + for i := 0; i < 2; i++ { + t.Run(strconv.Itoa(i), func(t *testing.T) { + ctx := aCtx() + if err := cron.One(ctx); err != nil && ctx.Err() == nil { + t.Fatalf("failed %d: %v", i, err) + } + }) + } + }) + }) + } }