// SPDX-FileCopyrightText: Copyright The Miniflux Authors. All rights reserved. // SPDX-License-Identifier: Apache-2.0 //go:build integration // +build integration package tests import ( "testing" miniflux "miniflux.app/v2/client" ) func TestCreateCategory(t *testing.T) { categoryName := "My category" client := createClient(t) category, err := client.CreateCategory(categoryName) if err != nil { t.Fatal(err) } if category.ID == 0 { t.Fatalf(`Invalid categoryID, got "%v"`, category.ID) } if category.UserID <= 0 { t.Fatalf(`Invalid userID, got "%v"`, category.UserID) } if category.Title != categoryName { t.Fatalf(`Invalid title, got "%v" instead of "%v"`, category.Title, categoryName) } } func TestCreateCategoryWithEmptyTitle(t *testing.T) { client := createClient(t) _, err := client.CreateCategory("") if err == nil { t.Fatal(`The category title should be mandatory`) } } func TestCannotCreateDuplicatedCategory(t *testing.T) { client := createClient(t) categoryName := "My category" _, err := client.CreateCategory(categoryName) if err != nil { t.Fatal(err) } _, err = client.CreateCategory(categoryName) if err == nil { t.Fatal(`Duplicated categories should not be allowed`) } } func TestUpdateCategory(t *testing.T) { categoryName := "My category" client := createClient(t) category, err := client.CreateCategory(categoryName) if err != nil { t.Fatal(err) } categoryName = "Updated category" category, err = client.UpdateCategory(category.ID, categoryName) if err != nil { t.Fatal(err) } if category.ID == 0 { t.Fatalf(`Invalid categoryID, got "%v"`, category.ID) } if category.UserID <= 0 { t.Fatalf(`Invalid userID, got "%v"`, category.UserID) } if category.Title != categoryName { t.Fatalf(`Invalid title, got %q instead of %q`, category.Title, categoryName) } } func TestUpdateInexistingCategory(t *testing.T) { client := createClient(t) _, err := client.UpdateCategory(4200000, "Test") if err != miniflux.ErrNotFound { t.Errorf(`Updating an inexisting category should returns a 404 instead of %v`, err) } } func TestMarkCategoryAsRead(t *testing.T) { client := createClient(t) feed, category := createFeed(t, client) results, err := client.FeedEntries(feed.ID, nil) if err != nil { t.Fatalf(`Failed to get entries: %v`, err) } if results.Total == 0 { t.Fatalf(`Invalid number of entries: %d`, results.Total) } if results.Entries[0].Status != miniflux.EntryStatusUnread { t.Fatalf(`Invalid entry status, got %q instead of %q`, results.Entries[0].Status, miniflux.EntryStatusUnread) } if err := client.MarkCategoryAsRead(category.ID); err != nil { t.Fatalf(`Failed to mark category as read: %v`, err) } results, err = client.FeedEntries(feed.ID, nil) if err != nil { t.Fatalf(`Failed to get updated entries: %v`, err) } for _, entry := range results.Entries { if entry.Status != miniflux.EntryStatusRead { t.Errorf(`Status for entry %d was %q instead of %q`, entry.ID, entry.Status, miniflux.EntryStatusRead) } } } func TestListCategories(t *testing.T) { categoryName := "My category" client := createClient(t) _, err := client.CreateCategory(categoryName) if err != nil { t.Fatal(err) } categories, err := client.Categories() if err != nil { t.Fatal(err) } if len(categories) != 2 { t.Fatalf(`Invalid number of categories, got "%v" instead of "%v"`, len(categories), 2) } if categories[0].ID == 0 { t.Fatalf(`Invalid categoryID, got "%v"`, categories[0].ID) } if categories[0].UserID <= 0 { t.Fatalf(`Invalid userID, got "%v"`, categories[0].UserID) } if categories[0].Title != "All" { t.Fatalf(`Invalid title, got "%v" instead of "%v"`, categories[0].Title, "All") } if categories[1].ID == 0 { t.Fatalf(`Invalid categoryID, got "%v"`, categories[0].ID) } if categories[1].UserID <= 0 { t.Fatalf(`Invalid userID, got "%v"`, categories[1].UserID) } if categories[1].Title != categoryName { t.Fatalf(`Invalid title, got "%v" instead of "%v"`, categories[1].Title, categoryName) } } func TestDeleteCategory(t *testing.T) { client := createClient(t) category, err := client.CreateCategory("My category") if err != nil { t.Fatal(err) } err = client.DeleteCategory(category.ID) if err != nil { t.Fatal(`Removing a category should not raise any error`) } } func TestCannotDeleteCategoryOfAnotherUser(t *testing.T) { client := createClient(t) categories, err := client.Categories() if err != nil { t.Fatal(err) } client = createClient(t) err = client.DeleteCategory(categories[0].ID) if err == nil { t.Fatal(`Removing a category that belongs to another user should be forbidden`) } } og Unnamed repository; edit this file 'description' to name the repository.
aboutsummaryrefslogtreecommitdiff
path: root/packages/renderers/renderer-svelte/Wrapper.svelte (unfollow)
AgeCommit message (Expand)AuthorFilesLines
2022-02-28Fix typo (#2674)Gravatar Robin Millette 1-1/+1
2022-02-28[ci] update lockfile (#2676)Gravatar Fred K. Schott 1-6/+6
2022-02-28fix(runtime): do not render empty Fragment (#2667)Gravatar Mateus Esdras 1-0/+3
2022-02-28fix(hmr): HMR regression related to .astro updates (#2681)Gravatar Nate Moore 6-7/+24
2022-02-28Fix HTMLElement expression warning (#2675)Gravatar Jonathan Neal 1-1/+1
2022-02-28[ci] collect statsGravatar FredKSchott 1-0/+1
2022-02-27[ci] update lockfile (#2668)Gravatar Fred K. Schott 1-80/+80
2022-02-27[ci] collect statsGravatar FredKSchott 1-0/+1
2022-02-26[ci] collect statsGravatar FredKSchott 1-0/+1
2022-02-25[ci] yarn formatGravatar natemoo-re 1-20/+20
2022-02-25[ci] release (#2666)astro@0.23.2Gravatar github-actions[bot] 32-59/+57
2022-02-25[ci] yarn formatGravatar natemoo-re 2-12/+6
2022-02-25fix astro scoping of "@import" inside of style tags (#2656)Gravatar Fred K. Schott 3-6/+35
2022-02-25[ci] update lockfile (#2659)Gravatar Fred K. Schott 1-20/+20
2022-02-25feat: improve third-party Astro package compatability (#2665)Gravatar Nate Moore 3-6/+100
2022-02-25get new example working during buildGravatar Fred K. Schott 4-16/+21
2022-02-25[ci] yarn formatGravatar FredKSchott 1-7/+6
2022-02-25Add Non-HTML Pages example (#2637)Gravatar Joel Kuzmarski 11-0/+136
2022-02-25[ci] collect statsGravatar FredKSchott 1-0/+1
2022-02-24[ci] yarn formatGravatar natemoo-re 2-24/+24
2022-02-24[ci] release (#2641)astro@0.23.1@astrojs/markdown-remark@0.6.2Gravatar github-actions[bot] 38-90/+81
2022-02-24ensure utf8 encoding when serving html (#2654)Gravatar Fred K. Schott 3-4/+9
2022-02-24fix(core): Issue #2625. error with process.env.LANG larger than 5 (#2645)Gravatar Javier Cortés 2-1/+6
2022-02-24[ci] update lockfile (#2646)Gravatar Fred K. Schott 1-130/+124
2022-02-24chore: upgrade compiler (#2653)Gravatar Nate Moore 3-11/+11
2022-02-24[ci] yarn formatGravatar natemoo-re 2-5/+5
2022-02-24Add fine-grained HMR support (#2649)Gravatar Nate Moore 7-36/+37
2022-02-24[ci] collect statsGravatar FredKSchott 1-0/+1
2022-02-23Fixed incorrect types and imports (#2630)Gravatar Juan Martín Seery 27-35/+37
2022-02-23Add sass dev dep to blog-multiple-authors example (#2643)Gravatar Joel Kuzmarski 1-1/+2
2022-02-23Fix(component): align starting position in Markdown slot (#2631)Gravatar Shinobu Hayashi 4-6/+61
2022-02-23[ci] yarn formatGravatar matthewp 1-1/+1
2022-02-23Run all smoke tests with the static build (#2609)Gravatar Matthew Phillips 2-26/+32
2022-02-23[ci] collect statsGravatar FredKSchott 1-0/+1
2022-02-22[ci] update lockfile (#2624)Gravatar Fred K. Schott 1-171/+201
2022-02-22Fixed shiki import to work with "type": "module" (#2628)Gravatar Juan Martín Seery 3-5/+13