more tag helpers.

This commit is contained in:
fiatjaf
2024-10-13 10:32:34 -03:00
parent 9069fb6743
commit 97ed96ef73
4 changed files with 50 additions and 13 deletions

View File

@@ -21,8 +21,18 @@ func TestTagHelpers(t *testing.T) {
assert.NotNil(t, tags.GetFirst([]string{"p", "abcdef", ""}), "failed to get with existing prefix (blank last string)")
assert.Equal(t, "ffffff", (*(tags.GetLast([]string{"e"})))[1], "failed to get last")
assert.Equal(t, 2, len(tags.GetAll([]string{"e", ""})), "failed to get all")
c := make(Tags, 0, 2)
for _, tag := range tags.All([]string{"e", ""}) {
c = append(c, tag)
}
assert.Equal(t, tags.GetAll([]string{"e", ""}), c)
assert.Equal(t, 5, len(tags.AppendUnique(Tag{"e", "ffffff"})), "append unique changed the array size when existed")
assert.Equal(t, 6, len(tags.AppendUnique(Tag{"e", "bbbbbb"})), "append unique failed to append when didn't exist")
assert.Equal(t, "ffffff", tags.AppendUnique(Tag{"e", "eeeeee"})[4][1], "append unique changed the order")
assert.Equal(t, "eeeeee", tags.AppendUnique(Tag{"e", "eeeeee"})[3][1], "append unique changed the order")
filtered := tags.FilterOut([]string{"e"})
tags.FilterOutInPlace([]string{"e"})
assert.ElementsMatch(t, filtered, tags)
assert.Len(t, filtered, 3)
}