From 1fed2d648f7f554771ee3fb26d1d0ab8f8603379 Mon Sep 17 00:00:00 2001 From: Bel LaPointe <153096461+breel-render@users.noreply.github.com> Date: Sun, 27 Apr 2025 12:06:40 -0600 Subject: [PATCH] stub feeds http test --- src/feeds/http_test.go | 63 +++++++++++++++++++++++++++--------------- 1 file changed, 40 insertions(+), 23 deletions(-) diff --git a/src/feeds/http_test.go b/src/feeds/http_test.go index 214fc5a..8851912 100644 --- a/src/feeds/http_test.go +++ b/src/feeds/http_test.go @@ -1,32 +1,49 @@ package feeds_test import ( + "context" + "net/http" + "net/http/httptest" "show-rss/src/feeds" "testing" "time" ) -func TestFeed(t *testing.T) { - t.Run("fetch", func(t *testing.T) { - created := time.Now().Add(-4 * time.Second) - feed := feeds.Feed{ - Entry: feeds.Entry{ - ID: "id", - Created: created, - Updated: created, - Deleted: time.Time{}, - }, - Version: feeds.Version{ - Created: created, - URL: "url", - Cron: "* * * * *", - Pattern: "matches", - }, - Execution: feeds.Execution{ - Executed: created.Add(-2 * time.Second), - Version: created, - }, - } - _ = feed - }) +func TestFeedFetch(t *testing.T) { + ctx := context.Background() + + s := httptest.NewServer(http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { + t.Logf("%s", r.URL.String()) + })) + t.Cleanup(s.Close) + + created := time.Now().Add(-4 * time.Second) + feed := feeds.Feed{ + Entry: feeds.Entry{ + ID: "id", + Created: created, + Updated: created, + Deleted: time.Time{}, + }, + Version: feeds.Version{ + Created: created, + URL: s.URL, + Cron: "* * * * *", + Pattern: "matches", + }, + Execution: feeds.Execution{ + Executed: created.Add(-2 * time.Second), + Version: created, + }, + } + + items, err := feed.Fetch(ctx) + if err != nil { + t.Fatalf("failed fetch: %v", err) + } + + if len(items) != 2 { + t.Fatalf("expected 2 items but got %+v", items) + } + t.Errorf("check items") }