diff --git a/server/test/com/cloud/network/router/VirtualNetworkApplianceManagerTest.java b/server/test/com/cloud/network/router/VirtualNetworkApplianceManagerImplTest.java similarity index 76% rename from server/test/com/cloud/network/router/VirtualNetworkApplianceManagerTest.java rename to server/test/com/cloud/network/router/VirtualNetworkApplianceManagerImplTest.java index 612b4db1230..6ab6eea8195 100644 --- a/server/test/com/cloud/network/router/VirtualNetworkApplianceManagerTest.java +++ b/server/test/com/cloud/network/router/VirtualNetworkApplianceManagerImplTest.java @@ -1,5 +1,11 @@ package com.cloud.network.router; +import java.util.LinkedHashMap; +import java.util.List; +import java.util.Map; + +import javax.inject.Inject; + import org.apache.cloudstack.framework.config.dao.ConfigurationDao; import org.junit.Test; import org.junit.runner.RunWith; @@ -10,12 +16,20 @@ import org.mockito.runners.MockitoJUnitRunner; import static org.mockito.Mockito.when; import com.cloud.cluster.dao.ManagementServerHostDao; +import com.cloud.dc.DataCenter; +import com.cloud.dc.DataCenter.NetworkType; +import com.cloud.dc.DataCenterVO; import com.cloud.dc.dao.ClusterDao; import com.cloud.dc.dao.DataCenterDao; import com.cloud.dc.dao.HostPodDao; import com.cloud.dc.dao.VlanDao; +import com.cloud.deploy.DataCenterDeployment; +import com.cloud.deploy.DeployDestination; +import com.cloud.deploy.DeploymentPlan; import com.cloud.host.dao.HostDao; import com.cloud.hypervisor.Hypervisor.HypervisorType; +import com.cloud.network.Network; +import com.cloud.network.VirtualRouterProvider; import com.cloud.network.dao.FirewallRulesDao; import com.cloud.network.dao.IPAddressDao; import com.cloud.network.dao.LoadBalancerDao; @@ -31,9 +45,11 @@ import com.cloud.network.dao.Site2SiteVpnGatewayDao; import com.cloud.network.dao.UserIpv6AddressDao; import com.cloud.network.dao.VirtualRouterProviderDao; import com.cloud.network.dao.VpnUserDao; +import com.cloud.network.element.VirtualRouterProviderVO; import com.cloud.network.router.VirtualRouter.RedundantState; import com.cloud.network.rules.dao.PortForwardingRulesDao; import com.cloud.offerings.dao.NetworkOfferingDao; +import com.cloud.resource.ResourceManager; import com.cloud.service.dao.ServiceOfferingDao; import com.cloud.storage.dao.GuestOSDao; import com.cloud.storage.dao.VMTemplateDao; @@ -44,7 +60,9 @@ import com.cloud.user.dao.UserDao; import com.cloud.user.dao.UserStatisticsDao; import com.cloud.user.dao.UserStatsLogDao; import com.cloud.vm.DomainRouterVO; +import com.cloud.vm.NicProfile; import com.cloud.vm.VirtualMachineManager; +import com.cloud.vm.VirtualMachineProfile.Param; import com.cloud.vm.dao.DomainRouterDao; import com.cloud.vm.dao.NicDao; import com.cloud.vm.dao.NicIpAliasDao; @@ -53,7 +71,7 @@ import com.cloud.vm.dao.UserVmDetailsDao; import com.cloud.vm.dao.VMInstanceDao; @RunWith(MockitoJUnitRunner.class) -public class VirtualNetworkApplianceManagerTest { +public class VirtualNetworkApplianceManagerImplTest { @Mock private ClusterDao _clusterDao; @@ -169,6 +187,8 @@ public class VirtualNetworkApplianceManagerTest { @Mock private VirtualMachineManager _itMgr; + @Mock private ResourceManager _resourceMgr; + @InjectMocks private VirtualNetworkApplianceManagerImpl virtualNetworkApplianceManagerImpl; @@ -181,4 +201,16 @@ public class VirtualNetworkApplianceManagerTest { assert vr != null; } + @Test + public void testDeployRouterNotRedundant() throws Exception { + DataCenter dc = new DataCenterVO(1L, "name", "description", "dns", null, null, null, "cidr", "domain", null, + NetworkType.Basic, "zoneToken", "domainSuffix"); + when(_routerDao.getNextInSequence(Long.class, "id")).thenReturn(1L); + when(_resourceMgr.getDefaultHypervisor(1L)).thenReturn(HypervisorType.Any); + DeploymentPlan plan = new DataCenterDeployment(1L); + VirtualRouter vr = virtualNetworkApplianceManagerImpl.deployRouter(new AccountVO(1L), new DeployDestination(dc,null,null,null), plan, null, false, + new VirtualRouterProviderVO(), 0L, null, new LinkedHashMap> (), true /* start the router */, + null); + assert vr != null; + } }