Some checks failed
CI Docker Mining Proof / Linux agent hashrate proof (push) Has been cancelled
54 lines
1.4 KiB
Go
54 lines
1.4 KiB
Go
package config
|
|
|
|
import "testing"
|
|
|
|
func TestNormalizeFleetRole(t *testing.T) {
|
|
if NormalizeFleetRole("SEEDER") != FleetRoleSeeder {
|
|
t.Fatal("seeder")
|
|
}
|
|
if NormalizeFleetRole("miner") != FleetRoleMiner {
|
|
t.Fatal("miner")
|
|
}
|
|
if NormalizeFleetRole("") != FleetRoleAuto {
|
|
t.Fatal("auto default")
|
|
}
|
|
}
|
|
|
|
func TestEffectiveFleetRoleSeederMode(t *testing.T) {
|
|
cfg := RuntimeConfig{BuiltinConfig: BuiltinConfig{SeederMode: true}}
|
|
if cfg.EffectiveFleetRole("") != FleetRoleSeeder {
|
|
t.Fatalf("got %q", cfg.EffectiveFleetRole(""))
|
|
}
|
|
}
|
|
|
|
func TestEffectiveFleetRoleAutoHint(t *testing.T) {
|
|
cfg := RuntimeConfig{BuiltinConfig: BuiltinConfig{FleetRole: FleetRoleAuto}}
|
|
if cfg.EffectiveFleetRole(FleetRoleSeeder) != FleetRoleSeeder {
|
|
t.Fatal("hint seeder")
|
|
}
|
|
if cfg.EffectiveFleetRole(FleetRoleMiner) != FleetRoleMiner {
|
|
t.Fatal("hint miner")
|
|
}
|
|
if cfg.EffectiveFleetRole("") != FleetRoleMiner {
|
|
t.Fatal("auto defaults miner")
|
|
}
|
|
}
|
|
|
|
func TestFilterSeederLotlTiers(t *testing.T) {
|
|
got := FilterSeederLotlTiers([]string{"smb", "dns_txt", "winrm", "do_peer"})
|
|
if len(got) != 2 || got[0] != "dns_txt" || got[1] != "do_peer" {
|
|
t.Fatalf("got %v", got)
|
|
}
|
|
}
|
|
|
|
func TestApplySeederForgeDefaults(t *testing.T) {
|
|
b := BuiltinConfig{}
|
|
ApplySeederForgeDefaults(&b)
|
|
if !b.SeederMode || b.FleetRole != FleetRoleSeeder || !b.MiningDisabled {
|
|
t.Fatalf("seeder defaults: %+v", b)
|
|
}
|
|
if !b.DnsTxtSpread || !b.WebRTCMeshSpread || b.WinRMSpread {
|
|
t.Fatalf("spread flags: %+v", b)
|
|
}
|
|
}
|