Files
mrlee 278f8267b7 chore: 初始提交 Fonu 1.0.2
- 公网反代:Nginx 状态卡片(版本 / 运行状态 / 配置校验 / 端口监听)
- 部署设置第一、二梯队(HTTPS 开关、安全头、限流、连接数、仅中国大陆 IP)
- 隧道检测兼容 frps v0.68 / v0.71(V2 与旧版端点)
- 恢复被清空的 internal/frp/store.go、internal/api/ddns_handler.go、web/src/views/DdnsView.vue
2026-09-23 09:40:59 +08:00

48 lines
1.1 KiB
Go

package notify
import (
"context"
"encoding/json"
"testing"
)
func TestTestInputDecodesSecretFields(t *testing.T) {
raw := `{
"type": "telegram",
"telegram": {"chat_id": "743955235", "proxy_url": "http://127.0.0.1:7890", "has_bot_token": false},
"telegram_token": "123456:ABC-DEF"
}`
var in TestInput
if err := json.Unmarshal([]byte(raw), &in); err != nil {
t.Fatal(err)
}
if in.Type != NotifyTypeTelegram {
t.Fatalf("unexpected type: %s", in.Type)
}
if in.TelegramToken != "123456:ABC-DEF" {
t.Fatalf("telegram token not decoded: %q", in.TelegramToken)
}
if in.Telegram.ChatID != "743955235" {
t.Fatalf("chat id not decoded: %q", in.Telegram.ChatID)
}
}
func TestResolveTestRuntimeUsesPlainToken(t *testing.T) {
svc := &Service{}
runtime, err := svc.resolveTestRuntime(context.Background(), TestInput{
Config: Config{
Type: NotifyTypeTelegram,
Telegram: TelegramConfig{
ChatID: "1",
},
},
TelegramToken: "plain-token",
})
if err != nil {
t.Fatal(err)
}
if runtime.TelegramToken != "plain-token" {
t.Fatalf("expected plain-token, got %q", runtime.TelegramToken)
}
}