*/
package org.opendaylight.protocol.bgp.rib.spi;
-import com.google.common.collect.Lists;
+import java.util.Collections;
import java.util.List;
import org.junit.Assert;
import org.junit.Test;
import org.mockito.Mockito;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.rib.rev130925.Route;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.types.rev130919.Ipv4AddressFamily;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.types.rev130919.UnicastSubsequentAddressFamily;
+import org.opendaylight.mdsal.binding.dom.adapter.BindingToNormalizedNodeCodec;
+import org.opendaylight.mdsal.binding.dom.adapter.test.AbstractConcurrentDataBrokerTest;
+import org.opendaylight.mdsal.binding.dom.adapter.test.AbstractDataBrokerTestCustomizer;
+import org.opendaylight.mdsal.binding.dom.codec.api.BindingNormalizedNodeSerializer;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.rib.rev180329.Route;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.types.rev200120.Ipv4AddressFamily;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.types.rev200120.UnicastSubsequentAddressFamily;
+import org.opendaylight.yangtools.concepts.Registration;
import org.opendaylight.yangtools.yang.binding.DataObject;
-public class SimpleRIBExtensionTest {
+public class SimpleRIBExtensionTest extends AbstractConcurrentDataBrokerTest {
+ private BindingToNormalizedNodeCodec codec;
+
+ @Override
+ protected final AbstractDataBrokerTestCustomizer createDataBrokerTestCustomizer() {
+ final AbstractDataBrokerTestCustomizer customizer = super.createDataBrokerTestCustomizer();
+ this.codec = customizer.getBindingToNormalized();
+ return customizer;
+ }
@Test
public void testExtensionProvider() {
- final ServiceLoaderRIBExtensionConsumerContext ctx = ServiceLoaderRIBExtensionConsumerContext.createConsumerContext();
+ final ServiceLoaderRIBExtensionConsumerContext ctx =
+ ServiceLoaderRIBExtensionConsumerContext.createConsumerContext(this.codec);
Assert.assertNull(ctx.getRIBSupport(Ipv4AddressFamily.class, UnicastSubsequentAddressFamily.class));
final TestActivator act = new TestActivator();
- act.startRIBExtensionProvider(ctx);
+ act.startRIBExtensionProvider(ctx, this.codec);
Assert.assertNotNull(ctx.getRIBSupport(Ipv4AddressFamily.class, UnicastSubsequentAddressFamily.class));
act.close();
Assert.assertNull(ctx.getRIBSupport(Ipv4AddressFamily.class, UnicastSubsequentAddressFamily.class));
private final class TestActivator extends AbstractRIBExtensionProviderActivator {
@Override
- protected List<AutoCloseable> startRIBExtensionProviderImpl(final RIBExtensionProviderContext context) {
- final RIBSupport support = Mockito.mock(RIBSupport.class);
+ protected List<Registration> startRIBExtensionProviderImpl(final RIBExtensionProviderContext context,
+ final BindingNormalizedNodeSerializer mappingService) {
+ final RIBSupport<?, ?, ?, ?> support = Mockito.mock(RIBSupport.class);
Mockito.doReturn(Route.class).when(support).routesListClass();
Mockito.doReturn(DataObject.class).when(support).routesContainerClass();
Mockito.doReturn(DataObject.class).when(support).routesCaseClass();
- return Lists.newArrayList((AutoCloseable)context.registerRIBSupport(Ipv4AddressFamily.class, UnicastSubsequentAddressFamily.class, support));
+ return Collections.singletonList(context.registerRIBSupport(Ipv4AddressFamily.class,
+ UnicastSubsequentAddressFamily.class, support));
}
}
}