mirror of
https://github.com/netbirdio/netbird.git
synced 2026-10-21 12:59:08 +02:00
* [client] Drop the non-functional admin URL #4218 deprecated --admin-url, but #3980 merged right after it and restored the flag and its wiring. The value has been stored and echoed back ever since, without anything reading it. Stop sending it from the CLI, ignore it in the daemon and drop it from the profile config, the UI settings service and the debug bundle. The proto fields stay for older clients, and the mobile getters and setters keep their signatures as deprecated stubs. * [client] Drop adminUrl from the Wails API reference
126 lines
3.0 KiB
Go
126 lines
3.0 KiB
Go
//go:build ios
|
|
|
|
package NetBirdSDK
|
|
|
|
import (
|
|
"path/filepath"
|
|
"testing"
|
|
|
|
"github.com/netbirdio/netbird/client/internal/profilemanager"
|
|
)
|
|
|
|
func TestPreferences_DefaultValues(t *testing.T) {
|
|
cfgFile := filepath.Join(t.TempDir(), "netbird.json")
|
|
stateFile := filepath.Join(t.TempDir(), "state.json")
|
|
p := NewPreferences(cfgFile, stateFile)
|
|
defaultVar, err := p.GetAdminURL()
|
|
if err != nil {
|
|
t.Fatalf("failed to read default value: %s", err)
|
|
}
|
|
|
|
if defaultVar != profilemanager.DefaultAdminURL {
|
|
t.Errorf("invalid default admin url: %s", defaultVar)
|
|
}
|
|
|
|
defaultVar, err = p.GetManagementURL()
|
|
if err != nil {
|
|
t.Fatalf("failed to read default management URL: %s", err)
|
|
}
|
|
|
|
if defaultVar != profilemanager.DefaultManagementURL {
|
|
t.Errorf("invalid default management url: %s", defaultVar)
|
|
}
|
|
|
|
hasPSK, err := p.HasPreSharedKey()
|
|
if err != nil {
|
|
t.Fatalf("failed to read default preshared key presence: %s", err)
|
|
}
|
|
|
|
if hasPSK {
|
|
t.Errorf("unexpected preshared key presence on fresh config")
|
|
}
|
|
}
|
|
|
|
func TestPreferences_ReadUncommitedValues(t *testing.T) {
|
|
exampleString := "exampleString"
|
|
cfgFile := filepath.Join(t.TempDir(), "netbird.json")
|
|
stateFile := filepath.Join(t.TempDir(), "state.json")
|
|
p := NewPreferences(cfgFile, stateFile)
|
|
|
|
// The admin URL is deprecated: setting it is a no-op.
|
|
p.SetAdminURL(exampleString)
|
|
resp, err := p.GetAdminURL()
|
|
if err != nil {
|
|
t.Fatalf("failed to read admin url: %s", err)
|
|
}
|
|
|
|
if resp != profilemanager.DefaultAdminURL {
|
|
t.Errorf("unexpected admin url: %s", resp)
|
|
}
|
|
|
|
p.SetManagementURL(exampleString)
|
|
resp, err = p.GetManagementURL()
|
|
if err != nil {
|
|
t.Fatalf("failed to read management url: %s", err)
|
|
}
|
|
|
|
if resp != exampleString {
|
|
t.Errorf("unexpected management url: %s", resp)
|
|
}
|
|
|
|
p.SetPreSharedKey(exampleString)
|
|
hasPSK, err := p.HasPreSharedKey()
|
|
if err != nil {
|
|
t.Fatalf("failed to read preshared key presence: %s", err)
|
|
}
|
|
|
|
if !hasPSK {
|
|
t.Errorf("expected preshared key presence after staging one")
|
|
}
|
|
}
|
|
|
|
func TestPreferences_Commit(t *testing.T) {
|
|
exampleURL := "https://myurl.com:443"
|
|
examplePresharedKey := "topsecret"
|
|
cfgFile := filepath.Join(t.TempDir(), "netbird.json")
|
|
stateFile := filepath.Join(t.TempDir(), "state.json")
|
|
p := NewPreferences(cfgFile, stateFile)
|
|
|
|
p.SetAdminURL(exampleURL)
|
|
p.SetManagementURL(exampleURL)
|
|
p.SetPreSharedKey(examplePresharedKey)
|
|
|
|
err := p.Commit()
|
|
if err != nil {
|
|
t.Fatalf("failed to save changes: %s", err)
|
|
}
|
|
|
|
p = NewPreferences(cfgFile, stateFile)
|
|
resp, err := p.GetAdminURL()
|
|
if err != nil {
|
|
t.Fatalf("failed to read admin url: %s", err)
|
|
}
|
|
|
|
if resp != profilemanager.DefaultAdminURL {
|
|
t.Errorf("unexpected admin url: %s", resp)
|
|
}
|
|
|
|
resp, err = p.GetManagementURL()
|
|
if err != nil {
|
|
t.Fatalf("failed to read management url: %s", err)
|
|
}
|
|
|
|
if resp != exampleURL {
|
|
t.Errorf("unexpected management url: %s", resp)
|
|
}
|
|
|
|
hasPSK, err := p.HasPreSharedKey()
|
|
if err != nil {
|
|
t.Fatalf("failed to read preshared key presence: %s", err)
|
|
}
|
|
|
|
if !hasPSK {
|
|
t.Errorf("expected preshared key presence after commit")
|
|
}
|
|
}
|