95 lines
3.4 KiB
Go
95 lines
3.4 KiB
Go
package common
|
|
|
|
import (
|
|
"testing"
|
|
)
|
|
|
|
func TestNewReticulumConfig(t *testing.T) {
|
|
cfg := NewReticulumConfig()
|
|
|
|
if !cfg.EnableTransport {
|
|
t.Errorf("NewReticulumConfig() EnableTransport = %v; want true", cfg.EnableTransport)
|
|
}
|
|
if cfg.ShareInstance {
|
|
t.Errorf("NewReticulumConfig() ShareInstance = %v; want false", cfg.ShareInstance)
|
|
}
|
|
if cfg.SharedInstancePort != DEFAULT_SHARED_INSTANCE_PORT {
|
|
t.Errorf("NewReticulumConfig() SharedInstancePort = %d; want %d", cfg.SharedInstancePort, DEFAULT_SHARED_INSTANCE_PORT)
|
|
}
|
|
if cfg.InstanceControlPort != DEFAULT_INSTANCE_CONTROL_PORT {
|
|
t.Errorf("NewReticulumConfig() InstanceControlPort = %d; want %d", cfg.InstanceControlPort, DEFAULT_INSTANCE_CONTROL_PORT)
|
|
}
|
|
if cfg.PanicOnInterfaceErr {
|
|
t.Errorf("NewReticulumConfig() PanicOnInterfaceErr = %v; want false", cfg.PanicOnInterfaceErr)
|
|
}
|
|
if cfg.LogLevel != DEFAULT_LOG_LEVEL {
|
|
t.Errorf("NewReticulumConfig() LogLevel = %d; want %d", cfg.LogLevel, DEFAULT_LOG_LEVEL)
|
|
}
|
|
if len(cfg.Interfaces) != 0 {
|
|
t.Errorf("NewReticulumConfig() Interfaces length = %d; want 0", len(cfg.Interfaces))
|
|
}
|
|
}
|
|
|
|
func TestDefaultConfig(t *testing.T) {
|
|
cfg := DefaultConfig()
|
|
|
|
if !cfg.EnableTransport {
|
|
t.Errorf("DefaultConfig() EnableTransport = %v; want true", cfg.EnableTransport)
|
|
}
|
|
if cfg.ShareInstance {
|
|
t.Errorf("DefaultConfig() ShareInstance = %v; want false", cfg.ShareInstance)
|
|
}
|
|
if cfg.SharedInstancePort != DEFAULT_SHARED_INSTANCE_PORT {
|
|
t.Errorf("DefaultConfig() SharedInstancePort = %d; want %d", cfg.SharedInstancePort, DEFAULT_SHARED_INSTANCE_PORT)
|
|
}
|
|
if cfg.InstanceControlPort != DEFAULT_INSTANCE_CONTROL_PORT {
|
|
t.Errorf("DefaultConfig() InstanceControlPort = %d; want %d", cfg.InstanceControlPort, DEFAULT_INSTANCE_CONTROL_PORT)
|
|
}
|
|
if cfg.PanicOnInterfaceErr {
|
|
t.Errorf("DefaultConfig() PanicOnInterfaceErr = %v; want false", cfg.PanicOnInterfaceErr)
|
|
}
|
|
if cfg.LogLevel != DEFAULT_LOG_LEVEL {
|
|
t.Errorf("DefaultConfig() LogLevel = %d; want %d", cfg.LogLevel, DEFAULT_LOG_LEVEL)
|
|
}
|
|
if len(cfg.Interfaces) != 0 {
|
|
t.Errorf("DefaultConfig() Interfaces length = %d; want 0", len(cfg.Interfaces))
|
|
}
|
|
if cfg.AppName != "Go Client" {
|
|
t.Errorf("DefaultConfig() AppName = %q; want %q", cfg.AppName, "Go Client")
|
|
}
|
|
if cfg.AppAspect != "node" {
|
|
t.Errorf("DefaultConfig() AppAspect = %q; want %q", cfg.AppAspect, "node")
|
|
}
|
|
}
|
|
|
|
func TestReticulumConfig_Validate(t *testing.T) {
|
|
validConfig := DefaultConfig()
|
|
if err := validConfig.Validate(); err != nil {
|
|
t.Errorf("Validate() on default config failed: %v", err)
|
|
}
|
|
|
|
invalidPortConfig1 := DefaultConfig()
|
|
invalidPortConfig1.SharedInstancePort = 0
|
|
if err := invalidPortConfig1.Validate(); err == nil {
|
|
t.Errorf("Validate() did not return error for invalid SharedInstancePort 0")
|
|
}
|
|
|
|
invalidPortConfig2 := DefaultConfig()
|
|
invalidPortConfig2.SharedInstancePort = 65536
|
|
if err := invalidPortConfig2.Validate(); err == nil {
|
|
t.Errorf("Validate() did not return error for invalid SharedInstancePort 65536")
|
|
}
|
|
|
|
invalidPortConfig3 := DefaultConfig()
|
|
invalidPortConfig3.InstanceControlPort = 0
|
|
if err := invalidPortConfig3.Validate(); err == nil {
|
|
t.Errorf("Validate() did not return error for invalid InstanceControlPort 0")
|
|
}
|
|
|
|
invalidPortConfig4 := DefaultConfig()
|
|
invalidPortConfig4.InstanceControlPort = 65536
|
|
if err := invalidPortConfig4.Validate(); err == nil {
|
|
t.Errorf("Validate() did not return error for invalid InstanceControlPort 65536")
|
|
}
|
|
}
|