*/
package org.opendaylight.controller.config.yang.bmp.impl;
+import static org.mockito.Matchers.any;
+import static org.mockito.Matchers.anyString;
+import static org.mockito.Matchers.contains;
+import static org.mockito.Mockito.doAnswer;
+import static org.mockito.Mockito.doNothing;
+import static org.mockito.Mockito.doReturn;
+import static org.mockito.Mockito.mock;
+import io.netty.channel.EventLoopGroup;
+import io.netty.util.Timer;
+import io.netty.util.concurrent.EventExecutor;
import javax.management.InstanceAlreadyExistsException;
import javax.management.ObjectName;
import org.junit.Before;
import org.junit.Test;
+import org.mockito.invocation.InvocationOnMock;
+import org.mockito.stubbing.Answer;
import org.opendaylight.controller.config.api.jmx.CommitStatus;
import org.opendaylight.controller.config.manager.impl.AbstractConfigTest;
import org.opendaylight.controller.config.manager.impl.factoriesresolver.HardcodedModuleFactoriesResolver;
import org.opendaylight.controller.config.yang.netty.eventexecutor.GlobalEventExecutorModuleFactory;
import org.opendaylight.controller.config.yang.netty.threadgroup.NettyThreadgroupModuleFactory;
import org.opendaylight.controller.config.yang.netty.threadgroup.NettyThreadgroupModuleMXBean;
+import org.osgi.framework.Filter;
+import org.osgi.framework.ServiceListener;
+import org.osgi.framework.ServiceReference;
public class BmpDispatcherImplModuleTest extends AbstractConfigTest {
private static final String INSTANCE_NAME = "bmp-message-fct";
new NettyThreadgroupModuleFactory(),
new GlobalEventExecutorModuleFactory(),
new SimpleBmpExtensionProviderContextModuleFactory()));
+
+ doAnswer(new Answer<Filter>() {
+ @Override
+ public Filter answer(InvocationOnMock invocation) {
+ String str = invocation.getArgumentAt(0, String.class);
+ Filter mockFilter = mock(Filter.class);
+ doReturn(str).when(mockFilter).toString();
+ return mockFilter;
+ }
+ }).when(mockedContext).createFilter(anyString());
+ doNothing().when(mockedContext).addServiceListener(any(ServiceListener.class), anyString());
+
+ setupMockService(EventLoopGroup.class);
+ setupMockService(Timer.class);
+ setupMockService(EventExecutor.class);
+ }
+
+ private void setupMockService(Class<?> serviceInterface) throws Exception {
+ ServiceReference<?> mockServiceRef = mock(ServiceReference.class);
+ doReturn(new ServiceReference[]{mockServiceRef}).when(mockedContext).
+ getServiceReferences(anyString(), contains(serviceInterface.getName()));
+ doReturn(mock(serviceInterface)).when(mockedContext).getService(mockServiceRef);
}
@Test
package org.opendaylight.controller.config.yang.bmp.impl;
import static org.mockito.Matchers.any;
+import static org.mockito.Matchers.anyString;
+import static org.mockito.Matchers.contains;
+import static org.mockito.Mockito.doAnswer;
+import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.mock;
-
import com.google.common.base.Optional;
import com.google.common.collect.Lists;
import com.google.common.io.ByteSource;
import com.google.common.io.Resources;
import com.google.common.util.concurrent.CheckedFuture;
+import io.netty.channel.EventLoopGroup;
+import io.netty.util.concurrent.EventExecutor;
import java.lang.reflect.Field;
import java.lang.reflect.Modifier;
import java.net.URL;
import org.mockito.Mock;
import org.mockito.Mockito;
import org.mockito.MockitoAnnotations;
+import org.mockito.invocation.InvocationOnMock;
+import org.mockito.stubbing.Answer;
import org.opendaylight.controller.config.api.jmx.CommitStatus;
import org.opendaylight.controller.config.manager.impl.AbstractConfigTest;
import org.opendaylight.controller.config.manager.impl.factoriesresolver.HardcodedModuleFactoriesResolver;
import org.opendaylight.controller.config.yang.md.sal.dom.impl.DomInmemoryDataBrokerModuleMXBean;
import org.opendaylight.controller.config.yang.md.sal.dom.impl.SchemaServiceImplSingletonModuleFactory;
import org.opendaylight.controller.config.yang.md.sal.dom.impl.SchemaServiceImplSingletonModuleMXBean;
+import org.opendaylight.controller.config.yang.netty.eventexecutor.AutoCloseableEventExecutor;
import org.opendaylight.controller.config.yang.netty.eventexecutor.GlobalEventExecutorModuleFactory;
import org.opendaylight.controller.config.yang.netty.threadgroup.NettyThreadgroupModuleFactory;
+import org.opendaylight.controller.config.yang.netty.threadgroup.NioEventLoopGroupCloseable;
import org.opendaylight.controller.md.sal.binding.api.DataBroker;
import org.opendaylight.controller.md.sal.binding.api.ReadWriteTransaction;
+import org.opendaylight.controller.md.sal.binding.impl.BindingToNormalizedNodeCodecFactory;
import org.opendaylight.controller.md.sal.common.api.TransactionStatus;
import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;
import org.opendaylight.controller.md.sal.common.api.data.TransactionCommitFailedException;
new GlobalEventExecutorModuleFactory(),
new SchemaServiceImplSingletonModuleFactory()));
- final Filter mockedFilter = mock(Filter.class);
- Mockito.doReturn(mockedFilter).when(this.mockedContext).createFilter(Mockito.anyString());
+ doAnswer(new Answer<Filter>() {
+ @Override
+ public Filter answer(InvocationOnMock invocation) {
+ String str = invocation.getArgumentAt(0, String.class);
+ Filter mockFilter = mock(Filter.class);
+ doReturn(str).when(mockFilter).toString();
+ return mockFilter;
+ }
+ }).when(mockedContext).createFilter(anyString());
final ServiceReference<?> emptyServiceReference = mock(ServiceReference.class, "Empty");
final ServiceReference<?> classLoadingStrategySR = mock(ServiceReference.class, "ClassLoadingStrategy");
final ServiceReference<?> dataProviderServiceReference = mock(ServiceReference.class, "Data Provider");
final ServiceReference<?> schemaServiceReference = mock(ServiceReference.class, "schemaServiceReference");
- Mockito.doReturn(mockedFilter).when(this.mockedContext).createFilter(Mockito.anyString());
-
Mockito.doNothing().when(this.mockedContext).addServiceListener(any(ServiceListener.class), Mockito.anyString());
Mockito.doNothing().when(this.mockedContext).removeServiceListener(any(ServiceListener.class));
modifiersField.setInt(contextResolverField, contextResolverField.getModifiers() & ~Modifier.FINAL);
contextResolverField.set(schemaService, mockedContextResolver);
+
+ BindingToNormalizedNodeCodecFactory.getOrCreateInstance(
+ GeneratedClassLoadingStrategy.getTCCLClassLoadingStrategy(), schemaService);
+
+ setupMockService(EventLoopGroup.class, NioEventLoopGroupCloseable.newInstance(0));
+ setupMockService(EventExecutor.class, AutoCloseableEventExecutor.CloseableEventExecutorMixin.globalEventExecutor());
+ }
+
+ private void setupMockService(Class<?> serviceInterface, Object instance) throws Exception {
+ ServiceReference<?> mockServiceRef = mock(ServiceReference.class);
+ doReturn(new ServiceReference[]{mockServiceRef}).when(mockedContext).
+ getServiceReferences(anyString(), contains(serviceInterface.getName()));
+ doReturn(instance).when(mockedContext).getService(mockServiceRef);
}
private List<String> getYangModelsPaths() {
package org.opendaylight.controller.config.yang.bgp.rib.impl;
import static org.mockito.Matchers.any;
+import static org.mockito.Matchers.anyString;
+import static org.mockito.Matchers.contains;
+import static org.mockito.Mockito.doAnswer;
+import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.mock;
import com.google.common.base.Optional;
import com.google.common.io.ByteSource;
import com.google.common.io.Resources;
import com.google.common.util.concurrent.CheckedFuture;
+import io.netty.channel.EventLoopGroup;
+import io.netty.util.concurrent.EventExecutor;
import java.io.IOException;
import java.lang.reflect.Field;
import java.lang.reflect.Modifier;
import org.mockito.Mock;
import org.mockito.Mockito;
import org.mockito.MockitoAnnotations;
+import org.mockito.invocation.InvocationOnMock;
+import org.mockito.stubbing.Answer;
import org.opendaylight.controller.config.api.jmx.CommitStatus;
import org.opendaylight.controller.config.manager.impl.AbstractConfigTest;
import org.opendaylight.controller.config.manager.impl.factoriesresolver.HardcodedModuleFactoriesResolver;
import org.opendaylight.controller.config.yang.md.sal.dom.impl.DomInmemoryDataBrokerModuleFactory;
import org.opendaylight.controller.config.yang.md.sal.dom.impl.DomInmemoryDataBrokerModuleMXBean;
import org.opendaylight.controller.config.yang.md.sal.dom.impl.SchemaServiceImplSingletonModuleFactory;
+import org.opendaylight.controller.config.yang.netty.eventexecutor.AutoCloseableEventExecutor;
import org.opendaylight.controller.config.yang.netty.eventexecutor.GlobalEventExecutorModuleFactory;
import org.opendaylight.controller.config.yang.netty.threadgroup.NettyThreadgroupModuleFactory;
+import org.opendaylight.controller.config.yang.netty.threadgroup.NioEventLoopGroupCloseable;
import org.opendaylight.controller.config.yang.netty.timer.HashedWheelTimerModuleFactory;
import org.opendaylight.controller.md.sal.binding.api.DataBroker;
import org.opendaylight.controller.md.sal.binding.api.ReadWriteTransaction;
+import org.opendaylight.controller.md.sal.binding.impl.BindingToNormalizedNodeCodecFactory;
import org.opendaylight.controller.md.sal.common.api.TransactionStatus;
import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;
import org.opendaylight.controller.md.sal.common.api.data.TransactionCommitFailedException;
+import org.opendaylight.controller.md.sal.dom.api.DOMMountPointService;
+import org.opendaylight.controller.md.sal.dom.api.DOMNotificationPublishService;
+import org.opendaylight.controller.md.sal.dom.api.DOMNotificationService;
+import org.opendaylight.controller.md.sal.dom.api.DOMRpcProviderService;
+import org.opendaylight.controller.md.sal.dom.api.DOMRpcService;
import org.opendaylight.controller.sal.dom.broker.GlobalBundleScanningSchemaServiceImpl;
import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev100924.Ipv4Address;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.rib.rev130925.RibId;
final List<ModuleFactory> moduleFactories = getModuleFactories();
super.initConfigTransactionManagerImpl(new HardcodedModuleFactoriesResolver(this.mockedContext, moduleFactories.toArray(new ModuleFactory[moduleFactories.size()])));
- final Filter mockedFilter = mock(Filter.class);
- Mockito.doReturn(mockedFilter).when(this.mockedContext).createFilter(Mockito.anyString());
+ doAnswer(new Answer<Filter>() {
+ @Override
+ public Filter answer(InvocationOnMock invocation) {
+ String str = invocation.getArgumentAt(0, String.class);
+ Filter mockFilter = mock(Filter.class);
+ doReturn(str).when(mockFilter).toString();
+ return mockFilter;
+ }
+ }).when(mockedContext).createFilter(anyString());
final ServiceReference<?> emptyServiceReference = mock(ServiceReference.class, "Empty");
final ServiceReference<?> classLoadingStrategySR = mock(ServiceReference.class, "ClassLoadingStrategy");
final ServiceReference<?> dataProviderServiceReference = mock(ServiceReference.class, "Data Provider");
- Mockito.doReturn(mockedFilter).when(this.mockedContext).createFilter(Mockito.anyString());
-
Mockito.doNothing().when(this.mockedContext).addServiceListener(any(ServiceListener.class), Mockito.anyString());
Mockito.doNothing().when(this.mockedContext).removeServiceListener(any(ServiceListener.class));
modifiersField.setInt(contextResolverField, contextResolverField.getModifiers() & ~Modifier.FINAL);
contextResolverField.set(schemaService, mockedContextResolver);
+
+ BindingToNormalizedNodeCodecFactory.getOrCreateInstance(
+ GeneratedClassLoadingStrategy.getTCCLClassLoadingStrategy(), schemaService);
+
+ setupMockService(EventLoopGroup.class, NioEventLoopGroupCloseable.newInstance(0));
+ setupMockService(EventExecutor.class, AutoCloseableEventExecutor.CloseableEventExecutorMixin.globalEventExecutor());
+
+ setupMockService(DOMNotificationService.class, mock(DOMNotificationService.class));
+ setupMockService(DOMNotificationPublishService.class, mock(DOMNotificationPublishService.class));
+ setupMockService(DOMRpcService.class, mock(DOMRpcService.class));
+ setupMockService(DOMRpcProviderService.class, mock(DOMRpcProviderService.class));
+ setupMockService(DOMMountPointService.class, mock(DOMMountPointService.class));
+ }
+
+ private void setupMockService(Class<?> serviceInterface, Object instance) throws Exception {
+ ServiceReference<?> mockServiceRef = mock(ServiceReference.class);
+ doReturn(new ServiceReference[]{mockServiceRef}).when(mockedContext).
+ getServiceReferences(anyString(), contains(serviceInterface.getName()));
+ doReturn(new ServiceReference[]{mockServiceRef}).when(mockedContext).
+ getServiceReferences(serviceInterface.getName(), null);
+ doReturn(instance).when(mockedContext).getService(mockServiceRef);
}
protected List<ModuleFactory> getModuleFactories() {
import javax.management.InstanceAlreadyExistsException;
import javax.management.ObjectName;
-import org.junit.Before;
import org.junit.Test;
import org.opendaylight.controller.config.api.jmx.CommitStatus;
-import org.opendaylight.controller.config.manager.impl.AbstractConfigTest;
-import org.opendaylight.controller.config.manager.impl.factoriesresolver.HardcodedModuleFactoriesResolver;
import org.opendaylight.controller.config.util.ConfigTransactionJMXClient;
import org.opendaylight.controller.config.yang.bgp.parser.spi.SimpleBGPExtensionProviderContextModuleFactory;
import org.opendaylight.controller.config.yang.bgp.parser.spi.SimpleBGPExtensionProviderContextModuleMXBean;
-import org.opendaylight.controller.config.yang.bgp.rib.spi.RIBExtensionsImplModuleFactory;
import org.opendaylight.controller.config.yang.netty.threadgroup.NettyThreadgroupModuleFactory;
import org.opendaylight.controller.config.yang.netty.threadgroup.NettyThreadgroupModuleMXBean;
-import org.opendaylight.controller.config.yang.netty.timer.HashedWheelTimerModuleFactory;
-public class BGPDispatcherImplModuleTest extends AbstractConfigTest {
+public class BGPDispatcherImplModuleTest extends AbstractRIBImplModuleTest {
private static final String INSTANCE_NAME = "bgp-message-fct";
private static final String FACTORY_NAME = BGPDispatcherImplModuleFactory.NAME;
private static final String BOSS_TG_INSTANCE_NAME = "boss-threadgroup-impl";
private static final String WORKER_TG_INSTANCE_NAME = "worker-threadgroup-impl";
- @Before
- public void setUp() throws Exception {
- super.initConfigTransactionManagerImpl(new HardcodedModuleFactoriesResolver(this.mockedContext, new BGPDispatcherImplModuleFactory(), new NettyThreadgroupModuleFactory(), new RIBExtensionsImplModuleFactory(), new SimpleBGPExtensionProviderContextModuleFactory(), new HashedWheelTimerModuleFactory()));
- }
-
@Test
public void testCreateBean() throws Exception {
final CommitStatus status = createInstance();
assertStatus(status, 0, 0, 4);
}
- private CommitStatus createInstance() throws Exception {
+ @Override
+ protected CommitStatus createInstance() throws Exception {
final ConfigTransactionJMXClient transaction = this.configRegistryClient.createTransaction();
createInstance(transaction);
return transaction.commit();
import static org.junit.Assert.assertTrue;
import static org.junit.Assert.fail;
-
+import static org.mockito.Matchers.any;
+import static org.mockito.Matchers.anyString;
+import static org.mockito.Matchers.contains;
+import static org.mockito.Mockito.doAnswer;
+import static org.mockito.Mockito.doNothing;
+import static org.mockito.Mockito.doReturn;
+import static org.mockito.Mockito.mock;
+import io.netty.channel.EventLoopGroup;
import javax.management.InstanceAlreadyExistsException;
import javax.management.ObjectName;
import org.junit.Before;
import org.junit.Test;
+import org.mockito.invocation.InvocationOnMock;
+import org.mockito.stubbing.Answer;
import org.opendaylight.controller.config.api.ValidationException;
import org.opendaylight.controller.config.api.jmx.CommitStatus;
import org.opendaylight.controller.config.manager.impl.AbstractConfigTest;
import org.opendaylight.controller.config.yang.pcep.spi.SimplePCEPExtensionProviderContextModuleMXBean;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.controller.pcep.impl.rev130627.PathType;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.controller.pcep.impl.rev130627.StoreType;
+import org.osgi.framework.Filter;
+import org.osgi.framework.ServiceListener;
+import org.osgi.framework.ServiceReference;
public class PCEPDispatcherImplModuleTest extends AbstractConfigTest {
@Before
public void setUp() throws Exception {
super.initConfigTransactionManagerImpl(new HardcodedModuleFactoriesResolver(this.mockedContext, new PCEPDispatcherImplModuleFactory(), new PCEPSessionProposalFactoryImplModuleFactory(), new NettyThreadgroupModuleFactory(), new SimplePCEPExtensionProviderContextModuleFactory()));
+
+ doAnswer(new Answer<Filter>() {
+ @Override
+ public Filter answer(InvocationOnMock invocation) {
+ String str = invocation.getArgumentAt(0, String.class);
+ Filter mockFilter = mock(Filter.class);
+ doReturn(str).when(mockFilter).toString();
+ return mockFilter;
+ }
+ }).when(mockedContext).createFilter(anyString());
+ doNothing().when(mockedContext).addServiceListener(any(ServiceListener.class), anyString());
+
+ setupMockService(EventLoopGroup.class);
+ }
+
+ private void setupMockService(Class<?> serviceInterface) throws Exception {
+ ServiceReference<?> mockServiceRef = mock(ServiceReference.class);
+ doReturn(new ServiceReference[]{mockServiceRef}).when(mockedContext).
+ getServiceReferences(anyString(), contains(serviceInterface.getName()));
+ doReturn(mock(serviceInterface)).when(mockedContext).getService(mockServiceRef);
}
@Test
package org.opendaylight.controller.config.yang.programming.impl;
import static org.mockito.Matchers.any;
+import static org.mockito.Matchers.anyString;
+import static org.mockito.Matchers.contains;
+import static org.mockito.Mockito.doAnswer;
+import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.mock;
-
import com.google.common.base.Optional;
import com.google.common.collect.Lists;
import com.google.common.io.ByteSource;
import com.google.common.io.Resources;
+import io.netty.channel.EventLoopGroup;
+import io.netty.channel.nio.NioEventLoopGroup;
+import io.netty.util.Timer;
import java.io.IOException;
import java.lang.reflect.Field;
import java.lang.reflect.Modifier;
import java.util.Collections;
import java.util.Dictionary;
import java.util.List;
+import java.util.Set;
import javax.management.InstanceAlreadyExistsException;
import javax.management.InstanceNotFoundException;
import javax.management.ObjectName;
import org.mockito.Mock;
import org.mockito.Mockito;
import org.mockito.MockitoAnnotations;
+import org.mockito.invocation.InvocationOnMock;
+import org.mockito.stubbing.Answer;
import org.opendaylight.controller.config.manager.impl.AbstractConfigTest;
import org.opendaylight.controller.config.manager.impl.factoriesresolver.HardcodedModuleFactoriesResolver;
import org.opendaylight.controller.config.spi.ModuleFactory;
import org.opendaylight.controller.config.yang.md.sal.dom.impl.DomInmemoryDataBrokerModuleMXBean;
import org.opendaylight.controller.config.yang.md.sal.dom.impl.SchemaServiceImplSingletonModuleFactory;
import org.opendaylight.controller.config.yang.netty.timer.HashedWheelTimerModuleFactory;
+import org.opendaylight.controller.md.sal.binding.impl.BindingToNormalizedNodeCodecFactory;
import org.opendaylight.controller.md.sal.common.api.TransactionStatus;
+import org.opendaylight.controller.md.sal.dom.api.DOMMountPointService;
+import org.opendaylight.controller.md.sal.dom.api.DOMNotificationPublishService;
+import org.opendaylight.controller.md.sal.dom.api.DOMNotificationService;
+import org.opendaylight.controller.md.sal.dom.api.DOMRpcImplementation;
+import org.opendaylight.controller.md.sal.dom.api.DOMRpcImplementationRegistration;
+import org.opendaylight.controller.md.sal.dom.api.DOMRpcProviderService;
+import org.opendaylight.controller.md.sal.dom.api.DOMRpcService;
import org.opendaylight.controller.sal.dom.broker.GlobalBundleScanningSchemaServiceImpl;
import org.opendaylight.yangtools.sal.binding.generator.api.ClassLoadingStrategy;
import org.opendaylight.yangtools.sal.binding.generator.impl.GeneratedClassLoadingStrategy;
@Mock
private RpcResult<TransactionStatus> mockedResult;
+ @SuppressWarnings("unchecked")
@Before
public void setUp() throws Exception {
MockitoAnnotations.initMocks(this);
final List<ModuleFactory> moduleFactories = getModuleFactories();
super.initConfigTransactionManagerImpl(new HardcodedModuleFactoriesResolver(mockedContext, moduleFactories.toArray(new ModuleFactory[moduleFactories.size()])));
- final Filter mockedFilter = mock(Filter.class);
+ doAnswer(new Answer<Filter>() {
+ @Override
+ public Filter answer(InvocationOnMock invocation) {
+ String str = invocation.getArgumentAt(0, String.class);
+ Filter mockFilter = mock(Filter.class);
+ doReturn(str).when(mockFilter).toString();
+ return mockFilter;
+ }
+ }).when(mockedContext).createFilter(anyString());
Mockito.doReturn(new ServiceReference[] {}).when(mockedContext).getServiceReferences(Matchers.anyString(), Matchers.anyString());
final ServiceReference<?> classLoadingStrategySR = mock(ServiceReference.class, "ClassLoadingStrategy");
final ServiceReference<?> emptyServiceReference = mock(ServiceReference.class, "Empty");
- Mockito.doReturn(mockedFilter).when(mockedContext).createFilter(Mockito.anyString());
-
Mockito.doNothing().when(mockedContext).addServiceListener(any(ServiceListener.class), Mockito.anyString());
Mockito.doNothing().when(mockedContext).removeServiceListener(any(ServiceListener.class));
modifiersField.setInt(contextResolverField, contextResolverField.getModifiers() & ~Modifier.FINAL);
contextResolverField.set(schemaService, mockedContextResolver);
+
+ BindingToNormalizedNodeCodecFactory.getOrCreateInstance(
+ GeneratedClassLoadingStrategy.getTCCLClassLoadingStrategy(), schemaService);
+
+ setupMockService(Timer.class, mock(Timer.class));
+ setupMockService(EventLoopGroup.class, new NioEventLoopGroup());
+ setupMockService(DOMNotificationService.class, mock(DOMNotificationService.class));
+ setupMockService(DOMNotificationPublishService.class, mock(DOMNotificationPublishService.class));
+ setupMockService(DOMRpcService.class, mock(DOMRpcService.class));
+ setupMockService(DOMMountPointService.class, mock(DOMMountPointService.class));
+
+ DOMRpcProviderService mockRpcProvider = mock(DOMRpcProviderService.class);
+ doReturn(mock(DOMRpcImplementationRegistration.class)).when(mockRpcProvider).registerRpcImplementation(
+ any(DOMRpcImplementation.class), any(Set.class));
+ setupMockService(DOMRpcProviderService.class, mockRpcProvider);
+ }
+
+ private void setupMockService(Class<?> serviceInterface, Object instance) throws Exception {
+ ServiceReference<?> mockServiceRef = mock(ServiceReference.class);
+ doReturn(new ServiceReference[]{mockServiceRef}).when(mockedContext).
+ getServiceReferences(anyString(), contains(serviceInterface.getName()));
+ doReturn(new ServiceReference[]{mockServiceRef}).when(mockedContext).
+ getServiceReferences(serviceInterface.getName(), null);
+ doReturn(instance).when(mockedContext).getService(mockServiceRef);
}
@After