mirror of
https://github.com/AvengeMedia/DankMaterialShell.git
synced 2025-12-10 07:25:37 -05:00
126 lines
3.3 KiB
Go
126 lines
3.3 KiB
Go
package network
|
|
|
|
import (
|
|
"testing"
|
|
|
|
"github.com/stretchr/testify/assert"
|
|
)
|
|
|
|
func TestSystemdNetworkdBackend_New(t *testing.T) {
|
|
backend, err := NewSystemdNetworkdBackend()
|
|
assert.NoError(t, err)
|
|
assert.NotNil(t, backend)
|
|
assert.Equal(t, "networkd", backend.state.Backend)
|
|
assert.NotNil(t, backend.links)
|
|
assert.NotNil(t, backend.stopChan)
|
|
}
|
|
|
|
func TestSystemdNetworkdBackend_GetCurrentState(t *testing.T) {
|
|
backend, _ := NewSystemdNetworkdBackend()
|
|
backend.state.NetworkStatus = StatusEthernet
|
|
backend.state.EthernetConnected = true
|
|
backend.state.EthernetIP = "192.168.1.100"
|
|
|
|
state, err := backend.GetCurrentState()
|
|
assert.NoError(t, err)
|
|
assert.NotNil(t, state)
|
|
assert.Equal(t, StatusEthernet, state.NetworkStatus)
|
|
assert.True(t, state.EthernetConnected)
|
|
assert.Equal(t, "192.168.1.100", state.EthernetIP)
|
|
}
|
|
|
|
func TestSystemdNetworkdBackend_WiFiNotSupported(t *testing.T) {
|
|
backend, _ := NewSystemdNetworkdBackend()
|
|
|
|
err := backend.ScanWiFi()
|
|
assert.Error(t, err)
|
|
assert.Contains(t, err.Error(), "not supported")
|
|
|
|
req := ConnectionRequest{SSID: "test"}
|
|
err = backend.ConnectWiFi(req)
|
|
assert.Error(t, err)
|
|
assert.Contains(t, err.Error(), "not supported")
|
|
|
|
err = backend.DisconnectWiFi()
|
|
assert.Error(t, err)
|
|
assert.Contains(t, err.Error(), "not supported")
|
|
|
|
err = backend.ForgetWiFiNetwork("test")
|
|
assert.Error(t, err)
|
|
assert.Contains(t, err.Error(), "not supported")
|
|
|
|
_, err = backend.GetWiFiNetworkDetails("test")
|
|
assert.Error(t, err)
|
|
assert.Contains(t, err.Error(), "not supported")
|
|
}
|
|
|
|
func TestSystemdNetworkdBackend_VPNNotSupported(t *testing.T) {
|
|
backend, _ := NewSystemdNetworkdBackend()
|
|
|
|
profiles, err := backend.ListVPNProfiles()
|
|
assert.NoError(t, err)
|
|
assert.Empty(t, profiles)
|
|
|
|
active, err := backend.ListActiveVPN()
|
|
assert.NoError(t, err)
|
|
assert.Empty(t, active)
|
|
|
|
err = backend.ConnectVPN("test", false)
|
|
assert.Error(t, err)
|
|
assert.Contains(t, err.Error(), "not supported")
|
|
|
|
err = backend.DisconnectVPN("test")
|
|
assert.Error(t, err)
|
|
assert.Contains(t, err.Error(), "not supported")
|
|
|
|
err = backend.DisconnectAllVPN()
|
|
assert.Error(t, err)
|
|
assert.Contains(t, err.Error(), "not supported")
|
|
|
|
err = backend.ClearVPNCredentials("test")
|
|
assert.Error(t, err)
|
|
assert.Contains(t, err.Error(), "not supported")
|
|
}
|
|
|
|
func TestSystemdNetworkdBackend_PromptBroker(t *testing.T) {
|
|
backend, _ := NewSystemdNetworkdBackend()
|
|
|
|
broker := backend.GetPromptBroker()
|
|
assert.Nil(t, broker)
|
|
|
|
err := backend.SetPromptBroker(nil)
|
|
assert.NoError(t, err)
|
|
|
|
err = backend.SubmitCredentials("token", nil, false)
|
|
assert.Error(t, err)
|
|
assert.Contains(t, err.Error(), "not needed")
|
|
|
|
err = backend.CancelCredentials("token")
|
|
assert.Error(t, err)
|
|
assert.Contains(t, err.Error(), "not needed")
|
|
}
|
|
|
|
func TestSystemdNetworkdBackend_GetWiFiEnabled(t *testing.T) {
|
|
backend, _ := NewSystemdNetworkdBackend()
|
|
|
|
enabled, err := backend.GetWiFiEnabled()
|
|
assert.NoError(t, err)
|
|
assert.True(t, enabled)
|
|
}
|
|
|
|
func TestSystemdNetworkdBackend_SetWiFiEnabled(t *testing.T) {
|
|
backend, _ := NewSystemdNetworkdBackend()
|
|
|
|
err := backend.SetWiFiEnabled(false)
|
|
assert.Error(t, err)
|
|
assert.Contains(t, err.Error(), "not supported")
|
|
}
|
|
|
|
func TestSystemdNetworkdBackend_DisconnectEthernet(t *testing.T) {
|
|
backend, _ := NewSystemdNetworkdBackend()
|
|
|
|
err := backend.DisconnectEthernet()
|
|
assert.Error(t, err)
|
|
assert.Contains(t, err.Error(), "not supported")
|
|
}
|