package netutils import ( "net" "testing" ) func TestConversion(t *testing.T) { ip := net.ParseIP("10.1.2.3") if ip == nil { t.Fatal("Failed to parse IP") } u := IPToUint32(ip) t.Log(u) ip2 := Uint32ToIP(u) t.Log(ip2) if !ip2.Equal(ip) { t.Fatal("Conversion back and forth failed") } } func TestGenerateGateway(t *testing.T) { sna, err := NewSubnetAllocator("10.1.0.0/16", 8, nil) if err != nil { t.Fatal("Failed to initialize IP allocator: ", err) } sn, err := sna.GetNetwork() if err != nil { t.Fatal("Failed to get network: ", err) } if sn.String() != "10.1.0.0/24" { t.Fatalf("Did not get expected subnet (sn=%s)", sn.String()) } gatewayIP := GenerateDefaultGateway(sn) if gatewayIP.String() != "10.1.0.1" { t.Fatalf("Did not get expected gateway IP Address (gatewayIP=%s)", gatewayIP.String()) } }