fix(ci): BaseModel test literals for go test/vet
This commit is contained in:
1 parent
c4b185f91b
commit
d9fcbae4e2
3 files changed
+33
-12
No files matched your search
@@ -6,7 +6,7 @@ import (
|
||||
)
|
||||
|
||||
func TestListenerJSONUsesLowercaseID(t *testing.T) {
|
||||
listener := Listener{ID: 42, Name: "test-listener"}
|
||||
listener := Listener{BaseModel: BaseModel{ID: 42}, Name: "test-listener"}
|
||||
|
||||
data, err := json.Marshal(listener)
|
||||
if err != nil {
|
||||
|
||||
@@ -7,15 +7,28 @@ import (
|
||||
)
|
||||
|
||||
func TestListenerTemplateModel(t *testing.T) {
|
||||
t := &models.ListenerTemplate{Name: "vless-default", Protocol: "vless", Config: `{"flow":"xtls-rprx-vision"}`}
|
||||
if t.Name == "" || t.Protocol == "" { t.Fatal("template fields unexpectedly empty") }
|
||||
tpl := &models.ListenerTemplate{Name: "vless-default", Protocol: "vless", Config: `{"flow":"xtls-rprx-vision"}`}
|
||||
if tpl.Name == "" || tpl.Protocol == "" {
|
||||
t.Fatal("template fields unexpectedly empty")
|
||||
}
|
||||
}
|
||||
|
||||
func TestListenerVersionSnapshotIsJSON(t *testing.T) {
|
||||
l := &models.Listener{ID: 1, Name: "demo", Protocol: "vless", Port: "443", BindAddress: "0.0.0.0", Config: `{}`}
|
||||
if err := ValidateModel(l); err != nil { t.Fatalf("valid listener rejected: %v", err) }
|
||||
l := &models.Listener{
|
||||
BaseModel: models.BaseModel{ID: 1},
|
||||
Name: "demo",
|
||||
Protocol: "vless",
|
||||
Port: "443",
|
||||
BindAddress: "0.0.0.0",
|
||||
Config: `{}`,
|
||||
}
|
||||
if err := ValidateModel(l); err != nil {
|
||||
t.Fatalf("valid listener rejected: %v", err)
|
||||
}
|
||||
}
|
||||
|
||||
func TestBatchIDsRequireNonEmpty(t *testing.T) {
|
||||
if len([]uint{}) != 0 { t.Fatal("unexpected non-empty ids") }
|
||||
if len([]uint{}) != 0 {
|
||||
t.Fatal("unexpected non-empty ids")
|
||||
}
|
||||
}
|
||||
@@ -7,15 +7,23 @@ import (
|
||||
)
|
||||
|
||||
func TestGenerateListenersUsesModelTLS(t *testing.T) {
|
||||
listeners := []models.Listener{{ID: 1, Name: "vless", Protocol: "vless", Port: "443", TLS: true, Enabled: true}}
|
||||
listeners := []models.Listener{{BaseModel: models.BaseModel{ID: 1}, Name: "vless", Protocol: "vless", Port: "443", TLS: true, Enabled: true}}
|
||||
got, err := generateListeners(listeners, nil)
|
||||
if err != nil { t.Fatal(err) }
|
||||
if len(got) != 1 || got[0]["tls"] != true { t.Fatalf("expected tls=true, got %#v", got) }
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
if len(got) != 1 || got[0]["tls"] != true {
|
||||
t.Fatalf("expected tls=true, got %#v", got)
|
||||
}
|
||||
}
|
||||
|
||||
func TestGenerateListenersDoesNotFallbackWhenCredentialStateIsExplicitlyEmpty(t *testing.T) {
|
||||
listeners := []models.Listener{{ID: 1, Name: "vless", Protocol: "vless", Port: "443", Enabled: true, Config: `{"users":[{"uuid":"legacy"}]}`}}
|
||||
listeners := []models.Listener{{BaseModel: models.BaseModel{ID: 1}, Name: "vless", Protocol: "vless", Port: "443", Enabled: true, Config: `{"users":[{"uuid":"legacy"}]}`}}
|
||||
got, err := generateListeners(listeners, map[uint][]Credential{1: {}})
|
||||
if err != nil { t.Fatal(err) }
|
||||
if _, ok := got[0]["users"]; ok { t.Fatalf("legacy users leaked into explicitly empty credential state: %#v", got[0]["users"]) }
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
if _, ok := got[0]["users"]; ok {
|
||||
t.Fatalf("legacy users leaked into explicitly empty credential state: %#v", got[0]["users"])
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user