X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fnetconf%2Fconfig-persister-impl%2Fsrc%2Ftest%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fnetconf%2Fpersist%2Fimpl%2Fosgi%2FMockedBundleContext.java;h=bd18c8c30e8791dc08a5e6e4a3eceb82a1f7de6c;hp=8bc787bdef39e571fc4cef62add5b0854c491130;hb=b5e3b3f436f8534ddb6c7f326ccbef995b96ddc3;hpb=3122297fefdbe2aad1aa0efd443e460c1b913e8c diff --git a/opendaylight/netconf/config-persister-impl/src/test/java/org/opendaylight/controller/netconf/persist/impl/osgi/MockedBundleContext.java b/opendaylight/netconf/config-persister-impl/src/test/java/org/opendaylight/controller/netconf/persist/impl/osgi/MockedBundleContext.java index 8bc787bdef..bd18c8c30e 100644 --- a/opendaylight/netconf/config-persister-impl/src/test/java/org/opendaylight/controller/netconf/persist/impl/osgi/MockedBundleContext.java +++ b/opendaylight/netconf/config-persister-impl/src/test/java/org/opendaylight/controller/netconf/persist/impl/osgi/MockedBundleContext.java @@ -7,13 +7,29 @@ */ package org.opendaylight.controller.netconf.persist.impl.osgi; +import static org.mockito.Matchers.any; +import static org.mockito.Matchers.anyString; +import static org.mockito.Matchers.eq; +import static org.mockito.Mockito.doNothing; +import static org.mockito.Mockito.doReturn; +import static org.mockito.Mockito.mock; + import com.google.common.collect.Lists; import com.google.common.collect.Sets; +import java.io.Closeable; +import java.io.IOException; +import java.util.Collections; +import java.util.Dictionary; +import java.util.List; +import java.util.SortedSet; +import java.util.TreeSet; import org.mockito.Mock; import org.mockito.MockitoAnnotations; +import org.opendaylight.controller.config.persist.api.ConfigPusher; import org.opendaylight.controller.config.persist.api.ConfigSnapshotHolder; import org.opendaylight.controller.config.persist.api.Persister; import org.opendaylight.controller.config.persist.api.PropertiesProvider; +import org.opendaylight.controller.netconf.api.Capability; import org.opendaylight.controller.netconf.mapping.api.NetconfOperationService; import org.opendaylight.controller.netconf.mapping.api.NetconfOperationServiceFactory; import org.opendaylight.controller.netconf.persist.impl.DummyAdapter; @@ -22,24 +38,13 @@ import org.osgi.framework.BundleContext; import org.osgi.framework.Filter; import org.osgi.framework.ServiceListener; import org.osgi.framework.ServiceReference; - -import java.io.IOException; -import java.util.Collections; -import java.util.List; -import java.util.SortedSet; -import java.util.TreeSet; - -import static org.mockito.Matchers.any; -import static org.mockito.Matchers.anyString; -import static org.mockito.Matchers.eq; -import static org.mockito.Mockito.doNothing; -import static org.mockito.Mockito.doReturn; +import org.osgi.framework.ServiceRegistration; final class MockedBundleContext { @Mock private BundleContext context; @Mock - private Filter filter; + private Filter outerFilter, innerFilter; @Mock private ServiceReference serviceReference; @Mock @@ -48,24 +53,44 @@ final class MockedBundleContext { NetconfOperationServiceFactory serviceFactory; @Mock private NetconfOperationService service; + @Mock + private ServiceRegistration registration; MockedBundleContext(long maxWaitForCapabilitiesMillis, long conflictingVersionTimeoutMillis) throws Exception { MockitoAnnotations.initMocks(this); doReturn(null).when(context).getProperty(anyString()); initContext(maxWaitForCapabilitiesMillis, conflictingVersionTimeoutMillis); - doReturn(filter).when(context).createFilter(ConfigPersisterActivator.getFilterString()); - String filterString = "filter"; - doReturn(filterString).when(filter).toString(); - doNothing().when(context).addServiceListener(any(ServiceListener.class), eq(filterString)); + + String outerFilterString = "(objectClass=org.opendaylight.controller.netconf.mapping.api.NetconfOperationServiceFactory)"; + doReturn(outerFilter).when(context).createFilter(outerFilterString); + doNothing().when(context).addServiceListener(any(ServiceListener.class), eq(outerFilterString)); ServiceReference[] toBeReturned = {serviceReference}; - doReturn(toBeReturned).when(context).getServiceReferences((String) null, filterString); + doReturn(toBeReturned).when(context).getServiceReferences(NetconfOperationServiceFactory.class.getName(), null); + + String innerFilterString = "innerfilter"; + doReturn(innerFilterString).when(outerFilter).toString(); + + doReturn(innerFilter).when(context).createFilter(ConfigPersisterActivator.getFilterString()); + doReturn(innerFilterString).when(innerFilter).toString(); + doNothing().when(context).addServiceListener(any(ServiceListener.class), eq(innerFilterString)); + + doReturn(toBeReturned).when(context).getServiceReferences((String) null, innerFilterString); doReturn(bundle).when(serviceReference).getBundle(); doReturn(context).when(bundle).getBundleContext(); doReturn("").when(serviceReference).toString(); + doReturn("context").when(context).toString(); doReturn(serviceFactory).when(context).getService(any(ServiceReference.class)); doReturn(service).when(serviceFactory).createService(anyString()); - doReturn(Collections.emptySet()).when(service).getCapabilities(); + final Capability cap = mock(Capability.class); + doReturn("cap1").when(cap).getCapabilityUri(); + doReturn(Collections.singleton(cap)).when(serviceFactory).getCapabilities(); doNothing().when(service).close(); + doReturn("serviceFactoryMock").when(serviceFactory).toString(); + + doNothing().when(registration).unregister(); + doReturn(registration).when(context).registerService( + eq(ConfigPusher.class.getName()), any(Closeable.class), + any(Dictionary.class)); } public BundleContext getBundleContext() {