mirror of
https://github.com/netbirdio/netbird.git
synced 2025-03-22 03:18:16 +01:00
* feature: add peer sync and a server public key endpoints * test: add Management.Sync() gRpc endpoint test * feat: implement peer sync * docs: added some comments to the Management server * chore: use for loop over channel when monitoring peer updates * fix: exit infinite loop when sending updates to peers * test: add multiple concurrent peers test for management service * chore: remove unused test * fix: reduce the amount peers for a concurrent peer update test Co-authored-by: braginini <m.bragin@wiretrustee.com>
140 lines
2.9 KiB
Go
140 lines
2.9 KiB
Go
package cmd
|
|
|
|
import (
|
|
"bytes"
|
|
"github.com/kardianos/service"
|
|
"io/ioutil"
|
|
"os"
|
|
"testing"
|
|
)
|
|
|
|
func Test_ServiceInstallCMD(t *testing.T) {
|
|
b := bytes.NewBufferString("")
|
|
rootCmd.SetOut(b)
|
|
rootCmd.SetErr(b)
|
|
rootCmd.SetArgs([]string{
|
|
"service",
|
|
"install",
|
|
"--config",
|
|
"/tmp/config.json",
|
|
})
|
|
err := rootCmd.Execute()
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
out, err := ioutil.ReadAll(b)
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
expectedMSG := "Wiretrustee service has been installed"
|
|
if string(out) != expectedMSG {
|
|
t.Fatalf("expected \"%s\" got \"%s\"", expectedMSG, string(out))
|
|
}
|
|
}
|
|
|
|
func Test_ServiceStartCMD(t *testing.T) {
|
|
b := bytes.NewBufferString("")
|
|
rootCmd.SetOut(b)
|
|
rootCmd.SetErr(b)
|
|
rootCmd.SetArgs([]string{"service", "start"})
|
|
err := rootCmd.Execute()
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
out, err := ioutil.ReadAll(b)
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
expectedMSG := "Wiretrustee service has been started"
|
|
if string(out) != expectedMSG {
|
|
t.Fatalf("expected \"%s\" got \"%s\"", expectedMSG, string(out))
|
|
}
|
|
}
|
|
|
|
func Test_ServiceRunCMD(t *testing.T) {
|
|
configFilePath := "/tmp/config.json"
|
|
if _, err := os.Stat(configFilePath); err == nil {
|
|
e := os.Remove(configFilePath)
|
|
if e != nil {
|
|
t.Fatal(err)
|
|
}
|
|
}
|
|
rootCmd.SetArgs([]string{
|
|
"init",
|
|
"--stunURLs",
|
|
"stun:stun.wiretrustee.com:3468",
|
|
"--signalAddr",
|
|
"signal.wiretrustee.com:10000",
|
|
"--turnURLs",
|
|
"foo:bar@turn:stun.wiretrustee.com:3468",
|
|
"--wgInterface",
|
|
"utun99",
|
|
"--wgLocalAddr",
|
|
"10.100.100.1/24",
|
|
"--config",
|
|
configFilePath,
|
|
})
|
|
err := rootCmd.Execute()
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
|
|
rootCmd.ResetFlags()
|
|
rootCmd.SetArgs([]string{"service", "start"})
|
|
err = rootCmd.Execute()
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
s, err := newSVC(&program{}, newSVCConfig())
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
status, err := s.Status()
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
|
|
if status != service.StatusRunning {
|
|
t.Fatalf("expected running status of \"%d\" got \"%d\"", service.StatusRunning, status)
|
|
}
|
|
}
|
|
|
|
/*func Test_ServiceStopCMD(t *testing.T) {
|
|
b := bytes.NewBufferString("")
|
|
rootCmd.SetOut(b)
|
|
rootCmd.SetErr(b)
|
|
rootCmd.SetArgs([]string{"service", "stop"})
|
|
err := rootCmd.Execute()
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
out, err := ioutil.ReadAll(b)
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
|
|
expectedMSG := "Wiretrustee service has been stopped"
|
|
if string(out) != expectedMSG {
|
|
t.Fatalf("expected \"%s\" got \"%s\"", expectedMSG, string(out))
|
|
}
|
|
}*/
|
|
|
|
func Test_ServiceUninstallCMD(t *testing.T) {
|
|
b := bytes.NewBufferString("")
|
|
rootCmd.SetOut(b)
|
|
rootCmd.SetErr(b)
|
|
rootCmd.SetArgs([]string{"service", "uninstall"})
|
|
err := rootCmd.Execute()
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
out, err := ioutil.ReadAll(b)
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
expectedMSG := "Wiretrustee has been uninstalled"
|
|
if string(out) != expectedMSG {
|
|
t.Fatalf("expected \"%s\" got \"%s\"", expectedMSG, string(out))
|
|
}
|
|
}
|