package org.apache.kerberos.kdc.server; import org.apache.kerberos.kdc.server.ApacheKdcServer; import org.junit.After; import org.junit.Before; import org.junit.Test; import java.io.IOException; import java.net.InetSocketAddress; import java.net.SocketAddress; import java.nio.ByteBuffer; import java.nio.channels.SocketChannel; public class KdcTest { private String serverHost = "localhost"; private short serverPort = 8088; private ApacheKdcServer kdcServer; @Before public void setUp() throws Exception { kdcServer = new ApacheKdcServer(); kdcServer.setKdcHost(serverHost); kdcServer.setKdcPort(serverPort); kdcServer.init(); kdcServer.start(); } @Test public void testKdc() throws IOException, InterruptedException { Thread.sleep(10); SocketChannel socketChannel = SocketChannel.open(); socketChannel.configureBlocking(true); SocketAddress sa = new InetSocketAddress(serverHost, serverPort); socketChannel.connect(sa); String BAD_KRB_MESSAGE = "Hello World!"; ByteBuffer writeBuffer = ByteBuffer.allocate(4 + BAD_KRB_MESSAGE.getBytes().length); writeBuffer.putInt(BAD_KRB_MESSAGE.getBytes().length); writeBuffer.put(BAD_KRB_MESSAGE.getBytes()); writeBuffer.flip(); socketChannel.write(writeBuffer); } @After public void tearDown() throws Exception { kdcServer.stop(); } }