package net import ( "context" "net" "os" "testing" "github.com/stretchr/testify/assert" v1 "k8s.io/api/core/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "edge-infra.dev/test/f2" ) var f f2.Framework func TestMain(m *testing.M) { f = f2.New(context.Background(), f2.WithExtensions()). Setup(). Teardown() os.Exit(f.Run(m)) } func TestGetNodeIPs(t *testing.T) { feature := f2.NewFeature("k8s net get node ip's"). Test("get single node ip", func(ctx f2.Context, t *testing.T) f2.Context { ip, ipNet, err := net.ParseCIDR("10.10.12.1/32") assert.NoError(t, err) node := createMockNode(ipNet) actualIP, err := ParseNodeIPs(node) assert.NoError(t, err) assert.Equal(t, ip, *actualIP[0]) actualIPNet, err := ParseNodeCIDRs(node) assert.NoError(t, err) assert.Equal(t, *ipNet, *actualIPNet[0]) return ctx }).Feature() f.Test(t, feature) } func createMockNode(ip *net.IPNet) v1.Node { return v1.Node{ ObjectMeta: metav1.ObjectMeta{ Annotations: map[string]string{ IPAnnotation: ip.String(), }, }, } }