X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fnetconf%2Fnetconf-it%2Fsrc%2Ftest%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fnetconf%2Fit%2FNetconfITTest.java;h=954da5f4874a03c10f772822a163750d451f0e6b;hb=9a65c3aa52f1d5b430f4c3ecd82434dcbc6300f6;hp=ccc7c85eb39e38d345d710e50a42aed2d485df0b;hpb=38dbf4451a20bee38ccb5a9c685dcf9fa9d6fb33;p=controller.git diff --git a/opendaylight/netconf/netconf-it/src/test/java/org/opendaylight/controller/netconf/it/NetconfITTest.java b/opendaylight/netconf/netconf-it/src/test/java/org/opendaylight/controller/netconf/it/NetconfITTest.java index ccc7c85eb3..954da5f487 100644 --- a/opendaylight/netconf/netconf-it/src/test/java/org/opendaylight/controller/netconf/it/NetconfITTest.java +++ b/opendaylight/netconf/netconf-it/src/test/java/org/opendaylight/controller/netconf/it/NetconfITTest.java @@ -10,21 +10,15 @@ package org.opendaylight.controller.netconf.it; import ch.ethz.ssh2.Connection; import ch.ethz.ssh2.Session; -import com.google.common.base.Optional; import com.google.common.collect.Lists; import com.google.common.collect.Sets; import io.netty.channel.ChannelFuture; -import io.netty.channel.EventLoopGroup; -import io.netty.channel.nio.NioEventLoopGroup; -import io.netty.util.HashedWheelTimer; import junit.framework.Assert; import org.junit.After; import org.junit.Before; import org.junit.Ignore; import org.junit.Test; -import org.opendaylight.controller.config.manager.impl.AbstractConfigTest; import org.opendaylight.controller.config.manager.impl.factoriesresolver.HardcodedModuleFactoriesResolver; -import org.opendaylight.controller.config.persist.api.Persister; import org.opendaylight.controller.config.spi.ModuleFactory; import org.opendaylight.controller.config.util.ConfigTransactionJMXClient; import org.opendaylight.controller.config.yang.store.api.YangStoreException; @@ -33,27 +27,21 @@ import org.opendaylight.controller.config.yang.test.impl.DepTestImplModuleFactor import org.opendaylight.controller.config.yang.test.impl.NetconfTestImplModuleFactory; import org.opendaylight.controller.config.yang.test.impl.NetconfTestImplModuleMXBean; import org.opendaylight.controller.config.yang.test.impl.TestImplModuleFactory; +import org.opendaylight.controller.netconf.StubUserManager; import org.opendaylight.controller.netconf.api.NetconfMessage; import org.opendaylight.controller.netconf.client.NetconfClient; import org.opendaylight.controller.netconf.client.NetconfClientDispatcher; import org.opendaylight.controller.netconf.confignetconfconnector.osgi.NetconfOperationServiceFactoryImpl; import org.opendaylight.controller.netconf.impl.DefaultCommitNotificationProducer; import org.opendaylight.controller.netconf.impl.NetconfServerDispatcher; -import org.opendaylight.controller.netconf.impl.NetconfServerSessionListenerFactory; -import org.opendaylight.controller.netconf.impl.NetconfServerSessionNegotiatorFactory; -import org.opendaylight.controller.netconf.impl.SessionIdProvider; -import org.opendaylight.controller.netconf.impl.mapping.ExiDecoderHandler; -import org.opendaylight.controller.netconf.impl.mapping.ExiEncoderHandler; import org.opendaylight.controller.netconf.impl.osgi.NetconfMonitoringServiceImpl; import org.opendaylight.controller.netconf.impl.osgi.NetconfOperationServiceFactoryListener; import org.opendaylight.controller.netconf.impl.osgi.NetconfOperationServiceFactoryListenerImpl; import org.opendaylight.controller.netconf.impl.osgi.NetconfOperationServiceSnapshot; import org.opendaylight.controller.netconf.mapping.api.NetconfOperationService; -import org.opendaylight.controller.netconf.persist.impl.ConfigPersisterNotificationHandler; -import org.opendaylight.controller.netconf.persist.impl.osgi.ConfigPersisterActivator; import org.opendaylight.controller.netconf.ssh.NetconfSSHServer; +import org.opendaylight.controller.netconf.ssh.authentication.AuthProvider; import org.opendaylight.controller.netconf.util.test.XmlFileLoader; -import org.opendaylight.controller.netconf.util.xml.ExiParameters; import org.opendaylight.controller.netconf.util.xml.XmlElement; import org.opendaylight.controller.netconf.util.xml.XmlUtil; import org.slf4j.Logger; @@ -76,8 +64,6 @@ import java.util.Collection; import java.util.Collections; import java.util.List; import java.util.Set; -import java.util.concurrent.TimeUnit; -import java.util.regex.Pattern; import static java.util.Collections.emptyList; import static junit.framework.Assert.assertEquals; @@ -87,7 +73,7 @@ import static org.mockito.Matchers.anyLong; import static org.mockito.Mockito.doReturn; import static org.mockito.Mockito.mock; -public class NetconfITTest extends AbstractConfigTest { +public class NetconfITTest extends AbstractNetconfConfigTest { // TODO refactor, pull common code up to AbstractNetconfITTest @@ -102,7 +88,6 @@ public class NetconfITTest extends AbstractConfigTest { closeSession, startExi, stopExi; private DefaultCommitNotificationProducer commitNot; private NetconfServerDispatcher dispatch; - private EventLoopGroup nettyThreadgroup; private NetconfClientDispatcher clientDispatcher; @@ -116,7 +101,6 @@ public class NetconfITTest extends AbstractConfigTest { NetconfOperationServiceFactoryListenerImpl factoriesListener = new NetconfOperationServiceFactoryListenerImpl(); factoriesListener.onAddNetconfOperationServiceFactory(new NetconfOperationServiceFactoryImpl(getYangStore())); - nettyThreadgroup = new NioEventLoopGroup(); commitNot = new DefaultCommitNotificationProducer(ManagementFactory.getPlatformMBeanServer()); @@ -124,20 +108,11 @@ public class NetconfITTest extends AbstractConfigTest { ChannelFuture s = dispatch.createServer(tcpAddress); s.await(); - clientDispatcher = new NetconfClientDispatcher( nettyThreadgroup, nettyThreadgroup); + clientDispatcher = new NetconfClientDispatcher( nettyThreadgroup, nettyThreadgroup, 5000); } private NetconfServerDispatcher createDispatcher(NetconfOperationServiceFactoryListenerImpl factoriesListener) { - SessionIdProvider idProvider = new SessionIdProvider(); - NetconfServerSessionNegotiatorFactory serverNegotiatorFactory = new NetconfServerSessionNegotiatorFactory( - new HashedWheelTimer(5000, TimeUnit.MILLISECONDS), factoriesListener, idProvider); - - NetconfServerSessionListenerFactory listenerFactory = new NetconfServerSessionListenerFactory( - factoriesListener, commitNot, idProvider, getNetconfMonitoringListenerService()); - - NetconfServerDispatcher.ServerChannelInitializer serverChannelInitializer = new NetconfServerDispatcher.ServerChannelInitializer( - serverNegotiatorFactory, listenerFactory); - return new NetconfServerDispatcher(serverChannelInitializer, nettyThreadgroup, nettyThreadgroup); + return super.createDispatcher(factoriesListener, getNetconfMonitoringListenerService(), commitNot); } static NetconfMonitoringServiceImpl getNetconfMonitoringListenerService() { @@ -151,7 +126,6 @@ public class NetconfITTest extends AbstractConfigTest { @After public void tearDown() throws Exception { commitNot.close(); - nettyThreadgroup.shutdownGracefully(); clientDispatcher.close(); } @@ -220,16 +194,6 @@ public class NetconfITTest extends AbstractConfigTest { } } - @Test(timeout = 10000) - public void testPersister() throws Exception { - Persister persister = mock(Persister.class); - doReturn("mockPersister").when(persister).toString(); - doReturn(Optional.absent()).when(persister).loadLastConfig(); - ConfigPersisterNotificationHandler h = - new ConfigPersisterNotificationHandler(persister, tcpAddress, ManagementFactory.getPlatformMBeanServer(), Pattern.compile(ConfigPersisterActivator.DEFAULT_IGNORED_REGEX)); - h.init(); - } - @Ignore @Test public void waitingTest() throws Exception { @@ -314,8 +278,8 @@ public class NetconfITTest extends AbstractConfigTest { } } + /* @Test -// @Ignore public void testStartExi() throws Exception { try (NetconfClient netconfClient = createSession(tcpAddress, "1")) { @@ -340,6 +304,7 @@ public class NetconfITTest extends AbstractConfigTest { } } + */ @Test public void testCloseSession() throws Exception { @@ -432,7 +397,10 @@ public class NetconfITTest extends AbstractConfigTest { private void startSSHServer() throws Exception{ logger.info("Creating SSH server"); - Thread sshServerThread = new Thread(NetconfSSHServer.start(10830,tcpAddress)); + StubUserManager um = new StubUserManager(USERNAME,PASSWORD); + InputStream is = getClass().getResourceAsStream("/RSA.pk"); + AuthProvider ap = new AuthProvider(um, is); + Thread sshServerThread = new Thread(NetconfSSHServer.start(10830,tcpAddress,ap)); sshServerThread.setDaemon(true); sshServerThread.start(); logger.info("SSH server on");