Files
upstream-traggo/tag/suggest_test.go
upstream-mirror cda7c1a474
Some checks failed
build / build (push) Failing after 3s
snapshot of https://github.com/traggo/server.git (master, 2026-09-16; blobs > 131072B omitted)
2026-09-16 05:24:45 +05:00

48 lines
1.3 KiB
Go

package tag
import (
"testing"
"github.com/stretchr/testify/require"
"github.com/traggo/server/generated/gqlmodel"
"github.com/traggo/server/model"
"github.com/traggo/server/test"
"github.com/traggo/server/test/fake"
)
func TestGQL_SuggestTag_matchesTags(t *testing.T) {
db := test.InMemoryDB(t)
defer db.Close()
db.User(1)
db.User(2)
resolver := ResolverForTag{DB: db.DB}
db.Create(&model.TagDefinition{Key: "project", Color: "#fff", UserID: 1})
db.Create(&model.TagDefinition{Key: "project2", Color: "#fff", UserID: 2})
db.Create(&model.TagDefinition{Key: "priority", Color: "#fff", UserID: 1})
db.Create(&model.TagDefinition{Key: "wood", Color: "#fff", UserID: 1})
tags, err := resolver.SuggestTag(fake.User(1), "pr")
require.Nil(t, err)
expected := []*gqlmodel.TagDefinition{
{Key: "project", Color: "#fff"},
{Key: "priority", Color: "#fff"},
}
require.Equal(t, expected, tags)
}
func TestGQL_SuggestTag_noMatchingTags(t *testing.T) {
db := test.InMemoryDB(t)
defer db.Close()
db.User(1)
resolver := ResolverForTag{DB: db.DB}
db.Create(&model.TagDefinition{Key: "project", Color: "#fff", UserID: 1})
db.Create(&model.TagDefinition{Key: "wood", Color: "#fff", UserID: 1})
tags, err := resolver.SuggestTag(fake.User(1), "fire")
require.Nil(t, err)
expected := []*gqlmodel.TagDefinition{}
require.Equal(t, expected, tags)
}