package org.chiefly.nautilus.net;
import java.net.Inet4Address;
import java.net.Inet6Address;
import java.net.UnknownHostException;
import junit.framework.Assert;
import org.junit.Test;
public class InetAddressComparatorTest {
private static final InetAddressComparator V4_LESS = new InetAddressComparator(
true);
private static final InetAddressComparator V6_LESS = new InetAddressComparator(
false);
@Test
public void testCompareEqual4() throws UnknownHostException {
final Inet4Address ip1 = Inet4AddressComparatorTest.ip("1.1.1.1");
final Inet4Address ip2 = Inet4AddressComparatorTest.ip("1.1.1.1");
Assert.assertEquals(0, V4_LESS.compare(ip1, ip2));
}
@Test
public void testCompareEqual6() throws UnknownHostException {
final Inet6Address ip1 = Inet6AddressComparatorTest
.ip("1111:1111:1111:1111:1111:1111:1111:1111");
final Inet6Address ip2 = Inet6AddressComparatorTest
.ip("1111:1111:1111:1111:1111:1111:1111:1111");
Assert.assertEquals(0, V6_LESS.compare(ip1, ip2));
}
@Test
public void testCompareGreater4() throws UnknownHostException {
final Inet4Address ip1 = Inet4AddressComparatorTest
.ip("250.250.250.250");
final Inet4Address ip2 = Inet4AddressComparatorTest
.ip("100.100.100.100");
Assert.assertTrue(V4_LESS.compare(ip1, ip2) > 0);
}
@Test
public void testCompareGreater6() throws UnknownHostException {
final Inet6Address ip1 = Inet6AddressComparatorTest
.ip("FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF:FFFF");
final Inet6Address ip2 = Inet6AddressComparatorTest
.ip("AAAA:AAAA:AAAA:AAAA:AAAA:AAAA:AAAA:AAAA");
Assert.assertTrue(V6_LESS.compare(ip1, ip2) > 0);
}
@Test
public void testCompareLesser4() throws UnknownHostException {
final Inet4Address ip1 = Inet4AddressComparatorTest.ip("1.1.1.1");
final Inet4Address ip2 = Inet4AddressComparatorTest
.ip("100.100.100.100");
Assert.assertTrue(V4_LESS.compare(ip1, ip2) < 0);
}
@Test
public void testCompareLesser6() throws UnknownHostException {
final Inet6Address ip1 = Inet6AddressComparatorTest
.ip("6666:6666:6666:6666:6666:6666:6666:6666");
final Inet6Address ip2 = Inet6AddressComparatorTest
.ip("7777:7777:7777:7777:7777:7777:7777:7777");
Assert.assertTrue(V6_LESS.compare(ip1, ip2) < 0);
}
@Test
public void testCompareDifferentVersions() throws UnknownHostException {
Inet4Address ipv4 = Inet4AddressComparatorTest.ip("10.10.10.10");
Inet6Address ipv6 = Inet6AddressComparatorTest.ip("1111:1111:1111:1111:1111:1111:1111:1111");
Assert.assertTrue(V4_LESS.compare(ipv4, ipv6) < 0);
Assert.assertTrue(V4_LESS.compare(ipv6, ipv4) > 0);
Assert.assertTrue(V6_LESS.compare(ipv4, ipv6) > 0);
Assert.assertTrue(V6_LESS.compare(ipv6, ipv4) < 0);
}
}