/** * Copyright (c) 2009--2010 Red Hat, Inc. * * This software is licensed to you under the GNU General Public License, * version 2 (GPLv2). There is NO WARRANTY for this software, express or * implied, including the implied warranties of MERCHANTABILITY or FITNESS * FOR A PARTICULAR PURPOSE. You should have received a copy of GPLv2 * along with this software; if not, see * http://www.gnu.org/licenses/old-licenses/gpl-2.0.txt. * * Red Hat trademarks are not licensed under GPLv2. No permission is * granted to use or replicate Red Hat trademarks that are incorporated * in this software or its documentation. */ package com.redhat.rhn.manager.kickstart.test; import com.redhat.rhn.domain.kickstart.KickstartData; import com.redhat.rhn.domain.kickstart.KickstartIpRange; import com.redhat.rhn.domain.kickstart.test.KickstartDataTest; import com.redhat.rhn.manager.kickstart.IpAddress; import com.redhat.rhn.manager.kickstart.IpAddressRange; import com.redhat.rhn.testing.BaseTestCaseWithUser; import java.util.Date; import java.util.Set; /** * IpAddressRangeTest - test for IpAddressRange * @version $Rev$ */ public class IpAddressRangeTest extends BaseTestCaseWithUser { private static long [] minIp = { 192 , 168 , 1 , 1 }; private static IpAddress min = new IpAddress(minIp); private static long [] maxIp = { 192 , 168 , 1 , 5 }; private static IpAddress max = new IpAddress(maxIp); private static long [] minIp2 = { 192 , 168 , 1 , 1 }; private static IpAddress min2 = new IpAddress(minIp2); private static long [] maxIp2 = { 192 , 168 , 1 , 5 }; private static IpAddress max2 = new IpAddress(maxIp2); private static long [] minIp3 = { 192 , 168 , 1 , 1 }; private static IpAddress min3 = new IpAddress(minIp3); private static long [] maxIp3 = { 192 , 168 , 1 , 9 }; private static IpAddress max3 = new IpAddress(maxIp3); private static long [] minIp4 = { 192 , 168 , 1 , 2 }; private static IpAddress min4 = new IpAddress(minIp4); private static long [] maxIp4 = { 192 , 168 , 1 , 4 }; private static IpAddress max4 = new IpAddress(maxIp4); private static long [] minIp5 = { 192 , 168 , 1 , 11 }; private static IpAddress min5 = new IpAddress(minIp5); private static long [] maxIp5 = { 192 , 168 , 1 , 13 }; private static IpAddress max5 = new IpAddress(maxIp5); public void testRange() throws Exception { KickstartData k = KickstartDataTest.createTestKickstartData(user.getOrg()); IpAddressRange range1 = new IpAddressRange(min, max, k.getId()); IpAddressRange range2 = new IpAddressRange(min2, max2, k.getId()); IpAddressRange range3 = new IpAddressRange(min3, max3, k.getId()); assertTrue(range1.equals(range2)); assertFalse(range1.equals(range3)); assertEquals(range1.getMax().getNumber(), range2.getMax().getNumber()); assertEquals(range1.getMin().getNumber(), range2.getMin().getNumber()); KickstartIpRange ipr = new KickstartIpRange(); assertNotNull(ipr); ipr.setKsdata(k); ipr.setMax(max.getNumber()); ipr.setMin(min.getNumber()); ipr.setModified(new Date()); ipr.setOrg(k.getOrg()); k.addIpRange(ipr); Set s = k.getIps(); assertEquals(1, s.size()); } public void testSetTheory() throws Exception { KickstartData k = KickstartDataTest.createTestKickstartData(user.getOrg()); IpAddressRange range1 = new IpAddressRange(min, max3, k.getId()); IpAddressRange range2 = new IpAddressRange(min4, max4, k.getId()); IpAddressRange range3 = new IpAddressRange(min5, max5, k.getId()); assertTrue(range1.isSuperset(range2)); assertTrue(range2.isSubset(range1)); assertTrue(range3.isDisjoint(range1)); assertTrue(range1.canCoexist(range2)); assertTrue(range1.isRangeBefore(range3)); assertTrue(range3.isRangeAfter(range1)); assertTrue(range1.isIpAddressContained(min4)); } }