Files
web_hgtv_h5/app/service/configser/home_road_test.go
T
谢宇宁andClaude Opus 5.5 3639d2184a Initial commit
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-22 14:47:17 +07:00

41 lines
1.6 KiB
Go

package configser
import "testing"
func TestBuildHomeRoadPageVMUsesDynamicConfig(t *testing.T) {
cfg := AppConfigVM{
NewURLAddr: "https://main.example.com",
NewURLAddr1: "https://relay.example.com",
NewURLAddr2: "https://latest.example.com",
ForeverURLAddr: "https://forever.example.com",
PDFAddr: "https://publish.example.com",
GmailAddr: "home@example.com",
TGGroup: "https://t.me/example",
Telegram: "https://t.me/business-example",
CustomerServiceHost: "https://service.example.com",
TwitterAddr: "https://x.com/example",
NavPageList: []NavPageItem{
{Line: 1, URL: "https://line1.example.com"},
{Line: 2, URL: "https://line2.example.com"},
{Line: 3, URL: "https://line3.example.com"},
},
}
vm := BuildHomeRoadPageVM(cfg)
if vm.MainURL != cfg.NewURLAddr || len(vm.Routes) != 3 || vm.Routes[1].URL != "https://line2.example.com" {
t.Fatalf("unexpected route VM: %#v", vm)
}
if len(vm.Permanent) != 3 || vm.Permanent[1].URL != cfg.NewURLAddr || vm.Permanent[2].URL != cfg.NewURLAddr1 {
t.Fatalf("unexpected permanent links: %#v", vm.Permanent)
}
if len(vm.Contacts) != 4 || vm.Contacts[0].URL != "mailto:home@example.com" || vm.Contacts[2].URL != cfg.Telegram {
t.Fatalf("unexpected contacts: %#v", vm.Contacts)
}
}
func TestBuildHomeRoadPageVMSkipsEmptyPermanentAddresses(t *testing.T) {
vm := BuildHomeRoadPageVM(AppConfigVM{NewURLAddr: "https://relay.example.com"})
if len(vm.Permanent) != 1 || vm.Permanent[0].Label != "永久中转页" {
t.Fatalf("unexpected permanent links: %#v", vm.Permanent)
}
}