Files
br ca6cdcca63 software steht so weit.
jetzt build + docker build und testen
2026-10-02 13:25:34 +02:00

45 lines
1.5 KiB
Go

package agent
import "testing"
func TestBackendHost(t *testing.T) {
tests := []struct {
name, explicit, iface, server, want string
wantErr bool
}{
{"explizit", "100.64.0.42", "", "https://127.0.0.1:8443", "100.64.0.42", false},
{"explizit schlägt Interface", "192.168.1.5", "lo", "https://127.0.0.1:8443", "192.168.1.5", false},
{"Interface", "", "lo", "https://127.0.0.1:8443", "127.0.0.1", false},
{"unbekanntes Interface", "", "gibtsnicht0", "https://127.0.0.1:8443", "", true},
{"automatisch: Route zum Server", "", "", "https://127.0.0.1:8443", "127.0.0.1", false},
{"automatisch ohne Port", "", "", "https://127.0.0.1", "127.0.0.1", false},
}
for _, tt := range tests {
got, err := backendHost(tt.explicit, tt.iface, tt.server)
if (err != nil) != tt.wantErr || got != tt.want {
t.Errorf("%s: %q, %v; erwartet %q (Fehler=%v)", tt.name, got, err, tt.want, tt.wantErr)
}
}
}
func TestDefaultNodeID(t *testing.T) {
tests := map[string]string{
"pi": "pi",
"Proxmox-VM.42.local": "proxmox-vm-42-local",
"web__01": "web_01",
" -host- ": "host",
"äöü-box": "box",
}
for in, want := range tests {
got, err := DefaultNodeID(in)
if err != nil || got != want {
t.Errorf("DefaultNodeID(%q) = %q, %v; erwartet %q", in, got, err, want)
}
}
for _, bad := range []string{"", "---", "äöü"} {
if _, err := DefaultNodeID(bad); err == nil {
t.Errorf("DefaultNodeID(%q): erwartet Fehler", bad)
}
}
}