network_test.go 927 B

1234567891011121314151617181920212223242526272829303132333435
  1. package logic
  2. import (
  3. "testing"
  4. "github.com/gravitl/netmaker/netclient/ncutils"
  5. "github.com/stretchr/testify/assert"
  6. )
  7. func TestCheckOverlap(t *testing.T) {
  8. _, err := ncutils.RunCmd("sudo ip link add nm-0 type wireguard", false)
  9. assert.Nil(t, err)
  10. _, err = ncutils.RunCmd("sudo ip a add 10.0.255.254/16 dev nm-0", false)
  11. assert.Nil(t, err)
  12. _, err = ncutils.RunCmd("sudo ip -6 a add 2001:db8::/64 dev nm-0", false)
  13. assert.Nil(t, err)
  14. t.Run("4Good", func(t *testing.T) {
  15. err = CheckOverlap("10.10.10.0/24", "")
  16. assert.Nil(t, err)
  17. })
  18. t.Run("4Bad", func(t *testing.T) {
  19. err = CheckOverlap("10.0.1.0/24", "")
  20. assert.NotNil(t, err)
  21. })
  22. t.Run("6Good", func(t *testing.T) {
  23. err = CheckOverlap("", "3001:fe8::/64")
  24. assert.Nil(t, err)
  25. })
  26. t.Run("6Bad", func(t *testing.T) {
  27. err = CheckOverlap("", "2001:db8::1:0/64")
  28. assert.NotNil(t, err)
  29. })
  30. _, err = ncutils.RunCmd("sudo ip link del nm-0", false)
  31. }