From e878dca3d74e1b8644d56e4f717b0a8e0362e888 Mon Sep 17 00:00:00 2001 From: Frédéric Guillot Date: Sun, 17 Nov 2019 22:53:11 -0800 Subject: Add API parameter to filter entries by category --- tests/entry_test.go | 36 +++++++++++++++++++++++++++++++++++- 1 file changed, 35 insertions(+), 1 deletion(-) (limited to 'tests/entry_test.go') diff --git a/tests/entry_test.go b/tests/entry_test.go index ba22bb9..fa887b0 100644 --- a/tests/entry_test.go +++ b/tests/entry_test.go @@ -93,6 +93,40 @@ func TestGetAllEntries(t *testing.T) { } } +func TestFilterEntriesByCategory(t *testing.T) { + client := createClient(t) + category, err := client.CreateCategory("Test Filter by Category") + if err != nil { + t.Fatal(err) + } + + feedID, err := client.CreateFeed(testFeedURL, category.ID) + if err != nil { + t.Fatal(err) + } + + if feedID == 0 { + t.Fatalf(`Invalid feed ID, got %q`, feedID) + } + + results, err := client.Entries(&miniflux.Filter{CategoryID: category.ID}) + if err != nil { + t.Fatal(err) + } + + if results.Total == 0 { + t.Fatalf(`We should have more than one entry`) + } + + if results.Entries[0].Feed.Category == nil { + t.Fatalf(`The entry feed category should not be nil`) + } + + if results.Entries[0].Feed.Category.ID != category.ID { + t.Errorf(`Entries should be filtered by category_id=%d`, category.ID) + } +} + func TestSearchEntries(t *testing.T) { client := createClient(t) categories, err := client.Categories() @@ -100,7 +134,7 @@ func TestSearchEntries(t *testing.T) { t.Fatal(err) } - feedID, err := client.CreateFeed("https://miniflux.app/feed.xml", categories[0].ID) + feedID, err := client.CreateFeed(testFeedURL, categories[0].ID) if err != nil { t.Fatal(err) } -- cgit v1.2.3