/**
 * $Id: CAsyncClientServerSocketTest.java,v 1.1 2005/05/08 03:06:59 rampil Exp $
 * LOGICAL-PARADOX.ORG
 * Copyright (C)2004 satoshi akabane(akabane@logical-paradox.org)
 *
 */
package org.logical_paradox.common.net.async;

import org.logical_paradox.common.net.async.CAsyncClientSocketFactory;
import org.logical_paradox.common.net.async.CAsyncServerSocket;
import org.logical_paradox.common.net.async.CAsyncServerSocketFactory;
import org.logical_paradox.common.net.async.impl.CAsyncClientSocketFactoryImpl;
import org.logical_paradox.common.net.async.impl.CAsyncServerSocketFactoryImpl;

import junit.framework.TestCase;

/**
 * CAsyncClient/ServerSocketのテストケース
 * @author satoshi akabane@logical-paradox.org
 * @version $Revision: 1.1 $
 */
public class CAsyncClientServerSocketTest extends TestCase {
	/** テストサーバーのポート番号 */
	public static final int TEST_SERVER_PORT = 12345;

	/** クライアントソケットファクトリ */
	private final CAsyncClientSocketFactory clientSocketFactory = new CAsyncClientSocketFactoryImpl();
	/** サーバーソケットファクトリ */
	private final CAsyncServerSocketFactory serverSocketFactory = new CAsyncServerSocketFactoryImpl();

	/** サーバーソケット */
	private CAsyncServerSocket serverSocket;

	/**
	 * セットアップ
	 */
	protected void setUp() throws Exception {
		// サーバーの起動
		serverSocket = serverSocketFactory.createServerSocket(TEST_SERVER_PORT);
	}

	/**
	 * ティアダウン
	 */
	protected void tearDown() throws Exception {
		// サーバーがまだlisteningしている場合はクローズする
		if(serverSocket != null && serverSocket.isListening() == true) {
			serverSocket.close();
		}
	}

}
