|
26 | 26 | import java.util.Collections; |
27 | 27 | import java.util.Set; |
28 | 28 |
|
29 | | -import com.cloud.network.dao.NetworkDao; |
30 | | -import com.cloud.network.dao.NetworkVO; |
31 | | -import com.cloud.tags.dao.ResourceTagDao; |
32 | 29 | import org.junit.Before; |
33 | 30 | import org.junit.Test; |
34 | 31 | import org.mockito.InjectMocks; |
|
50 | 47 | import com.cloud.exception.ConcurrentOperationException; |
51 | 48 | import com.cloud.exception.InsufficientCapacityException; |
52 | 49 | import com.cloud.exception.ResourceUnavailableException; |
| 50 | +import com.cloud.exception.UnsupportedServiceException; |
53 | 51 | import com.cloud.host.HostVO; |
54 | 52 | import com.cloud.host.dao.HostDao; |
55 | 53 | import com.cloud.network.Network; |
|
62 | 60 | import com.cloud.network.dao.FirewallRulesDao; |
63 | 61 | import com.cloud.network.dao.IPAddressDao; |
64 | 62 | import com.cloud.network.dao.IPAddressVO; |
| 63 | +import com.cloud.network.dao.NetworkDao; |
65 | 64 | import com.cloud.network.dao.NetworkServiceMapDao; |
| 65 | +import com.cloud.network.dao.NetworkVO; |
66 | 66 | import com.cloud.network.dao.NuageVspDao; |
67 | 67 | import com.cloud.network.dao.PhysicalNetworkDao; |
68 | 68 | import com.cloud.network.dao.PhysicalNetworkVO; |
|
77 | 77 | import com.cloud.offerings.dao.NetworkOfferingDao; |
78 | 78 | import com.cloud.offerings.dao.NetworkOfferingServiceMapDao; |
79 | 79 | import com.cloud.resource.ResourceManager; |
| 80 | +import com.cloud.tags.dao.ResourceTagDao; |
80 | 81 | import com.cloud.user.Account; |
81 | 82 | import com.cloud.util.NuageVspEntityBuilder; |
82 | 83 | import com.cloud.vm.DomainRouterVO; |
83 | 84 | import com.cloud.vm.ReservationContext; |
84 | 85 | import com.cloud.vm.dao.DomainRouterDao; |
85 | 86 |
|
| 87 | +import static org.hamcrest.Matchers.is; |
86 | 88 | import static org.junit.Assert.assertFalse; |
| 89 | +import static org.junit.Assert.assertThat; |
87 | 90 | import static org.junit.Assert.assertTrue; |
| 91 | +import static org.junit.Assert.fail; |
88 | 92 | import static org.mockito.Matchers.any; |
89 | 93 | import static org.mockito.Matchers.eq; |
90 | 94 | import static org.mockito.Mockito.mock; |
@@ -233,6 +237,18 @@ public void testVerifyServiceCombination() { |
233 | 237 | Service.Connectivity, |
234 | 238 | Service.Firewall); |
235 | 239 | assertTrue(_nuageVspElement.verifyServicesCombination(services)); |
| 240 | + |
| 241 | + |
| 242 | + services = Sets.newHashSet( |
| 243 | + Service.Dhcp, |
| 244 | + Service.StaticNat, |
| 245 | + Service.Firewall); |
| 246 | + try { |
| 247 | + _nuageVspElement.verifyServicesCombination(services); |
| 248 | + fail("Expected Exception"); |
| 249 | + } catch (UnsupportedServiceException e) { |
| 250 | + assertThat(e.getMessage(), is("Provider Network.Provider[name=NuageVsp] requires services: [Network.Service[name=Connectivity]]")); |
| 251 | + } |
236 | 252 | } |
237 | 253 |
|
238 | 254 | @Test |
|
0 commit comments