package io.evercam.network.discovery.test; import static org.junit.Assert.*; import io.evercam.network.discovery.IpTranslator; import io.evercam.network.discovery.NetworkInfo; import java.io.IOException; import java.net.NetworkInterface; import org.junit.Test; public class NetworkInfoTest { private final String TEST_IP = "10.0.0.25"; private final String TEST_NET_MASK = "255.255.255.0"; private final String TEST_EXTERNAL_IP = "5.149.169.19"; private final int TEST_CIDR = 24; @Test public void testGetCidr() throws IOException { NetworkInterface networkInterface = NetworkInfo .getNetworkInterfaceByIp(TEST_IP); int cidr = NetworkInfo.getCidrFromInterface(networkInterface); assertEquals(TEST_CIDR, cidr); assertEquals(TEST_NET_MASK, IpTranslator.cidrToMask(cidr)); } @Test public void testGetTranslateCidrToMask() throws IOException { assertEquals(TEST_NET_MASK, IpTranslator.cidrToMask(TEST_CIDR)); assertEquals(TEST_CIDR, IpTranslator.maskIpToCidr(TEST_NET_MASK)); } @Test public void testExternalIp() { assertEquals(TEST_EXTERNAL_IP, NetworkInfo.getExternalIP()); } @Test public void testValidIpv4() { String ipv41 = "192.168.1.1"; String ipv42 = "172.0.0.6"; String ipv43 = "89.101.130.1"; String wrongIpv4 = "(192.168.1.1)"; String ipv6 = "FE80:0000:0000:0000:0202:B3FF"; String wrongIpv6 = "(FE80:0000:0000:0000:0202:B3FF)"; assertTrue(IpTranslator.isValidIpv4Addr(ipv41)); assertTrue(IpTranslator.isValidIpv4Addr(ipv42)); assertTrue(IpTranslator.isValidIpv4Addr(ipv43)); assertFalse(IpTranslator.isValidIpv4Addr(wrongIpv4)); assertFalse(IpTranslator.isValidIpv4Addr(ipv6)); assertFalse(IpTranslator.isValidIpv4Addr(wrongIpv6)); } }