X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fnetconf%2Fnetconf-it%2Fsrc%2Ftest%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fnetconf%2Fit%2FNetconfITTest.java;h=4ca9690211c87bccd6ee79ddc23985c191024653;hp=954da5f4874a03c10f772822a163750d451f0e6b;hb=44bac35e828c5dfee8a9fb7fad4f57bceaa9490b;hpb=aa186fdb5e8950f06824cf907aaad96e8cbed93e 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 954da5f487..4ca9690211 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 @@ -14,6 +14,7 @@ import com.google.common.collect.Lists; import com.google.common.collect.Sets; import io.netty.channel.ChannelFuture; import junit.framework.Assert; +import org.apache.commons.io.IOUtils; import org.junit.After; import org.junit.Before; import org.junit.Ignore; @@ -21,8 +22,6 @@ import org.junit.Test; import org.opendaylight.controller.config.manager.impl.factoriesresolver.HardcodedModuleFactoriesResolver; import org.opendaylight.controller.config.spi.ModuleFactory; import org.opendaylight.controller.config.util.ConfigTransactionJMXClient; -import org.opendaylight.controller.config.yang.store.api.YangStoreException; -import org.opendaylight.controller.config.yang.store.impl.HardcodedYangStoreService; import org.opendaylight.controller.config.yang.test.impl.DepTestImplModuleFactory; import org.opendaylight.controller.config.yang.test.impl.NetconfTestImplModuleFactory; import org.opendaylight.controller.config.yang.test.impl.NetconfTestImplModuleMXBean; @@ -32,6 +31,7 @@ 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.confignetconfconnector.osgi.YangStoreException; import org.opendaylight.controller.netconf.impl.DefaultCommitNotificationProducer; import org.opendaylight.controller.netconf.impl.NetconfServerDispatcher; import org.opendaylight.controller.netconf.impl.osgi.NetconfMonitoringServiceImpl; @@ -64,6 +64,8 @@ import java.util.Collection; import java.util.Collections; import java.util.List; import java.util.Set; +import java.util.concurrent.ExecutionException; +import java.util.concurrent.TimeoutException; import static java.util.Collections.emptyList; import static junit.framework.Assert.assertEquals; @@ -77,7 +79,7 @@ public class NetconfITTest extends AbstractNetconfConfigTest { // TODO refactor, pull common code up to AbstractNetconfITTest - private static final Logger logger = LoggerFactory.getLogger(NetconfITTest.class); + private static final Logger logger = LoggerFactory.getLogger(NetconfITTest.class); private static final InetSocketAddress tcpAddress = new InetSocketAddress("127.0.0.1", 12023); private static final InetSocketAddress sshAddress = new InetSocketAddress("127.0.0.1", 10830); @@ -108,7 +110,7 @@ public class NetconfITTest extends AbstractNetconfConfigTest { ChannelFuture s = dispatch.createServer(tcpAddress); s.await(); - clientDispatcher = new NetconfClientDispatcher( nettyThreadgroup, nettyThreadgroup, 5000); + clientDispatcher = new NetconfClientDispatcher(nettyThreadgroup, nettyThreadgroup, 5000); } private NetconfServerDispatcher createDispatcher(NetconfOperationServiceFactoryListenerImpl factoriesListener) { @@ -159,13 +161,14 @@ public class NetconfITTest extends AbstractNetconfConfigTest { yangDependencies.add(resourceAsStream); } } - assertEquals("Some yang files were not found",emptyList(), failedToFind); + assertEquals("Some yang files were not found", emptyList(), failedToFind); return yangDependencies; } protected List getModuleFactories() { return getModuleFactoriesS(); } + static List getModuleFactoriesS() { return Lists.newArrayList(new TestImplModuleFactory(), new DepTestImplModuleFactory(), new NetconfTestImplModuleFactory()); @@ -188,7 +191,7 @@ public class NetconfITTest extends AbstractNetconfConfigTest { @Test public void testTwoSessions() throws Exception { - try (NetconfClient netconfClient = new NetconfClient("1", tcpAddress, 10000, clientDispatcher)) { + try (NetconfClient netconfClient = new NetconfClient("1", tcpAddress, 10000, clientDispatcher)) { try (NetconfClient netconfClient2 = new NetconfClient("2", tcpAddress, 10000, clientDispatcher)) { } } @@ -253,7 +256,7 @@ public class NetconfITTest extends AbstractNetconfConfigTest { NetconfTestImplModuleMXBean proxy = configRegistryClient .newMXBeanProxy(impl, NetconfTestImplModuleMXBean.class); proxy.setTestingDep(dep); - proxy.setSimpleShort((short)0); + proxy.setSimpleShort((short) 0); transaction.commit(); @@ -304,7 +307,7 @@ public class NetconfITTest extends AbstractNetconfConfigTest { } } - */ + */ @Test public void testCloseSession() throws Exception { @@ -350,12 +353,12 @@ public class NetconfITTest extends AbstractNetconfConfigTest { assertEquals("ok", XmlElement.fromDomDocument(rpcReply).getOnlyChildElement().getName()); } - private Document assertGetConfigWorks(final NetconfClient netconfClient) throws InterruptedException { + private Document assertGetConfigWorks(final NetconfClient netconfClient) throws InterruptedException, ExecutionException, TimeoutException { return assertGetConfigWorks(netconfClient, this.getConfig); } private Document assertGetConfigWorks(final NetconfClient netconfClient, final NetconfMessage getConfigMessage) - throws InterruptedException { + throws InterruptedException, ExecutionException, TimeoutException { final NetconfMessage rpcReply = netconfClient.sendMessage(getConfigMessage); assertNotNull(rpcReply); assertEquals("data", XmlElement.fromDomDocument(rpcReply.getDocument()).getOnlyChildElement().getName()); @@ -395,12 +398,15 @@ public class NetconfITTest extends AbstractNetconfConfigTest { return netconfClient; } - private void startSSHServer() throws Exception{ + private void startSSHServer() throws Exception { logger.info("Creating SSH server"); - 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)); + StubUserManager um = new StubUserManager(USERNAME, PASSWORD); + String pem; + try (InputStream is = getClass().getResourceAsStream("/RSA.pk")) { + pem = IOUtils.toString(is); + } + AuthProvider ap = new AuthProvider(um, pem); + Thread sshServerThread = new Thread(NetconfSSHServer.start(10830, tcpAddress, ap)); sshServerThread.setDaemon(true); sshServerThread.start(); logger.info("SSH server on"); @@ -410,11 +416,11 @@ public class NetconfITTest extends AbstractNetconfConfigTest { public void sshTest() throws Exception { startSSHServer(); logger.info("creating connection"); - Connection conn = new Connection(sshAddress.getHostName(),sshAddress.getPort()); + Connection conn = new Connection(sshAddress.getHostName(), sshAddress.getPort()); Assert.assertNotNull(conn); logger.info("connection created"); conn.connect(); - boolean isAuthenticated = conn.authenticateWithPassword(USERNAME,PASSWORD); + boolean isAuthenticated = conn.authenticateWithPassword(USERNAME, PASSWORD); assertTrue(isAuthenticated); logger.info("user authenticated"); final Session sess = conn.openSession(); @@ -422,20 +428,23 @@ public class NetconfITTest extends AbstractNetconfConfigTest { logger.info("user authenticated"); sess.getStdin().write(XmlUtil.toString(this.getConfig.getDocument()).getBytes()); - new Thread(){ - public void run(){ - while (true){ - byte[] bytes = new byte[1024]; - int c = 0; - try { - c = sess.getStdout().read(bytes); - } catch (IOException e) { - e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates. - } - logger.info("got data:"+bytes); - if (c == 0) break; - } - } + new Thread() { + @Override + public void run() { + while (true) { + byte[] bytes = new byte[1024]; + int c = 0; + try { + c = sess.getStdout().read(bytes); + } catch (IOException e) { + e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates. + } + logger.info("got data:" + bytes); + if (c == 0) { + break; + } + } + } }.join(); }