tag_test.go 894 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. package teststore
  2. import (
  3. "context"
  4. "testing"
  5. "github.com/stretchr/testify/require"
  6. "github.com/usememos/memos/store"
  7. )
  8. func TestTagStore(t *testing.T) {
  9. ctx := context.Background()
  10. ts := NewTestingStore(ctx, t)
  11. user, err := createTestingHostUser(ctx, ts)
  12. require.NoError(t, err)
  13. tag, err := ts.UpsertTag(ctx, &store.Tag{
  14. CreatorID: user.ID,
  15. Name: "test_tag",
  16. })
  17. require.NoError(t, err)
  18. require.Equal(t, "test_tag", tag.Name)
  19. require.Equal(t, user.ID, tag.CreatorID)
  20. tags, err := ts.ListTags(ctx, &store.FindTag{
  21. CreatorID: user.ID,
  22. })
  23. require.NoError(t, err)
  24. require.Equal(t, 1, len(tags))
  25. require.Equal(t, tag, tags[0])
  26. err = ts.DeleteTag(ctx, &store.DeleteTag{
  27. Name: "test_tag",
  28. CreatorID: user.ID,
  29. })
  30. require.NoError(t, err)
  31. tags, err = ts.ListTags(ctx, &store.FindTag{})
  32. require.NoError(t, err)
  33. require.Equal(t, 0, len(tags))
  34. ts.Close()
  35. }