Files
memby/server/internal/store/metadata_hero_test.go
T
2026-08-22 08:26:10 +12:00

38 lines
1.2 KiB
Go

package store
import (
"reflect"
"testing"
)
func TestNormalizeMetadataHeroSettingsKeepsAnOrderedSubset(t *testing.T) {
got := NormalizeMetadataHeroSettings(MetadataHeroSettings{
ContentOrder: []string{"summary", "unknown", "title", "summary"},
}).ContentOrder
want := []string{"summary", "title"}
if !reflect.DeepEqual(got, want) {
t.Fatalf("content order = %v, want %v", got, want)
}
}
func TestNormalizeMetadataHeroSettingsRestoresTheDefault(t *testing.T) {
got := NormalizeMetadataHeroSettings(MetadataHeroSettings{}).ContentOrder
if !reflect.DeepEqual(got, DefaultMetadataHeroContentOrder) {
t.Fatalf("content order = %v, want %v", got, DefaultMetadataHeroContentOrder)
}
got[0] = "changed"
if DefaultMetadataHeroContentOrder[0] != MetadataHeroTitle {
t.Fatal("normalising an empty document returned the shared default slice")
}
}
func TestNormalizeMetadataHeroSettingsAcceptsOptionalContent(t *testing.T) {
got := NormalizeMetadataHeroSettings(MetadataHeroSettings{
ContentOrder: []string{MetadataHeroTitle, MetadataHeroReason, MetadataHeroTime},
}).ContentOrder
want := []string{MetadataHeroTitle, MetadataHeroReason, MetadataHeroTime}
if !reflect.DeepEqual(got, want) {
t.Fatalf("content order = %v, want %v", got, want)
}
}