+
+ @Test
+ public void testSetDependencies() throws Exception {
+ EventDispatcher eventDispatcher = mock(EventDispatcher.class);
+ LoadBalancerProvider loadBalancerProvider = mock(LoadBalancerProvider.class);
+ NodeCacheManager nodeCacheManager = mock(NodeCacheManager.class);
+
+ PowerMockito.mockStatic(ServiceHelper.class);
+ PowerMockito.when(ServiceHelper.getGlobalInstance(EventDispatcher.class, lBaaSPoolHandler)).thenReturn(eventDispatcher);
+ PowerMockito.when(ServiceHelper.getGlobalInstance(LoadBalancerProvider.class, lBaaSPoolHandler)).thenReturn(loadBalancerProvider);
+ PowerMockito.when(ServiceHelper.getGlobalInstance(NodeCacheManager.class, lBaaSPoolHandler)).thenReturn(nodeCacheManager);
+
+ lBaaSPoolHandler.setDependencies(mock(ServiceReference.class));
+
+ assertEquals("Error, did not return the correct object", lBaaSPoolHandler.eventDispatcher, eventDispatcher);
+ assertEquals("Error, did not return the correct object", getField("loadBalancerProvider"), loadBalancerProvider);
+ assertEquals("Error, did not return the correct object", getField("nodeCacheManager"), nodeCacheManager);
+ }
+
+ @Test
+ public void testSetDependenciesObject() throws Exception{
+ INeutronNetworkCRUD iNeutronNetworkCRUD = mock(INeutronNetworkCRUD.class);
+ lBaaSPoolHandler.setDependencies(iNeutronNetworkCRUD);
+ assertEquals("Error, did not return the correct object", getField("neutronNetworkCache"), iNeutronNetworkCRUD);
+
+ INeutronPortCRUD iNeutronPortCRUD = mock(INeutronPortCRUD.class);
+ lBaaSPoolHandler.setDependencies(iNeutronPortCRUD);
+ assertEquals("Error, did not return the correct object", getField("neutronPortCache"), iNeutronPortCRUD);
+
+ INeutronSubnetCRUD iNeutronSubnetCRUD = mock(INeutronSubnetCRUD.class);
+ lBaaSPoolHandler.setDependencies(iNeutronSubnetCRUD);
+ assertEquals("Error, did not return the correct object", getField("neutronSubnetCache"), iNeutronSubnetCRUD);
+
+ INeutronLoadBalancerCRUD iNeutronLoadBalancerCRUD = mock(INeutronLoadBalancerCRUD.class);
+ lBaaSPoolHandler.setDependencies(iNeutronLoadBalancerCRUD);
+ assertEquals("Error, did not return the correct object", getField("neutronLBCache"), iNeutronLoadBalancerCRUD);
+
+ LoadBalancerProvider loadBalancerProvider = mock(LoadBalancerProvider.class);
+ lBaaSPoolHandler.setDependencies(loadBalancerProvider);
+ assertEquals("Error, did not return the correct object", getField("loadBalancerProvider"), loadBalancerProvider);
+ }
+
+ private Object getField(String fieldName) throws Exception {
+ Field field = LBaaSPoolHandler.class.getDeclaredField(fieldName);
+ field.setAccessible(true);
+ return field.get(lBaaSPoolHandler);
+ }