Browse Source

add test for checking overlap in networks

Matthew R. Kasun 3 năm trước cách đây
mục cha
commit
4cd5315e98
1 tập tin đã thay đổi với 35 bổ sung0 xóa
  1. 35 0
      logic/network_test.go

+ 35 - 0
logic/network_test.go

@@ -0,0 +1,35 @@
+package logic
+
+import (
+	"testing"
+
+	"github.com/gravitl/netmaker/netclient/ncutils"
+	"github.com/stretchr/testify/assert"
+)
+
+func TestCheckOverlap(t *testing.T) {
+	_, err := ncutils.RunCmd("ip link add nm-0 type wireguard", false)
+	assert.Nil(t, err)
+	_, err = ncutils.RunCmd("ip a add 10.0.255.254/16 dev nm-0", false)
+	assert.Nil(t, err)
+	_, err = ncutils.RunCmd("ip -6 a add 2001:db8::/64 dev nm-0", false)
+	assert.Nil(t, err)
+	t.Run("4Good", func(t *testing.T) {
+		err = CheckOverlap("10.10.10.0/24", "")
+		assert.Nil(t, err)
+	})
+	t.Run("4Bad", func(t *testing.T) {
+		err = CheckOverlap("10.0.1.0/24", "")
+		assert.NotNil(t, err)
+	})
+	t.Run("6Good", func(t *testing.T) {
+		err = CheckOverlap("", "3001:fe8::/64")
+		assert.Nil(t, err)
+	})
+	t.Run("6Bad", func(t *testing.T) {
+		err = CheckOverlap("", "2001:db8::1:0/64")
+		assert.NotNil(t, err)
+	})
+	_, err = ncutils.RunCmd("ip link del nm-0", false)
+
+}