feat(sub): allow identity tokens on every subscription link (#5935)

Keep usage tokens first-link-only while adding an opt-in setting for repeating EMAIL and USERNAME in subscription-body remarks.

Co-authored-by: x06579 <x06579@ai-dashboard>
This commit is contained in:
H-TTTTT
2026-07-29 04:12:52 +08:00
committed by GitHub
parent 8bbca76bdd
commit 8f49327efb
29 changed files with 190 additions and 9 deletions
@@ -0,0 +1,39 @@
package service
import "testing"
func TestSubShowIdentityOnAllLinksDefaultsAndPersists(t *testing.T) {
setupSettingTestDB(t)
s := &SettingService{}
if got, err := s.GetSubShowIdentityOnAllLinks(); err != nil || got {
t.Fatalf("missing setting = %t, %v; want false, nil", got, err)
}
settings, err := s.GetAllSetting()
if err != nil {
t.Fatal(err)
}
if settings.SubShowIdentityOnAllLinks {
t.Fatal("GetAllSetting returned true for a missing setting")
}
settings.SubShowIdentityOnAllLinks = true
if err := s.UpdateAllSetting(settings, SecretClears{}); err != nil {
t.Fatal(err)
}
if got, err := s.GetSubShowIdentityOnAllLinks(); err != nil || !got {
t.Fatalf("persisted setting = %t, %v; want true, nil", got, err)
}
settings, err = s.GetAllSetting()
if err != nil {
t.Fatal(err)
}
settings.SubShowIdentityOnAllLinks = false
if err := s.UpdateAllSetting(settings, SecretClears{}); err != nil {
t.Fatal(err)
}
if got, err := s.GetSubShowIdentityOnAllLinks(); err != nil || got {
t.Fatalf("persisted setting = %t, %v; want false, nil", got, err)
}
}