7.4.4 EH 메신저 가입 라이브러리 테스트 [TCP/IP 소켓 프로그래밍 with 윈도우즈]

이번에는 EHPacket 라이브러리와 가입 라이브러리가 정상적으로 동작하는지 확인하는 테스트 프로그램을 작성해 봅시다. 여러 컴포넌트로 구성하는 프로젝트를 만들 때에 컴포넌트 별로 단위 테스트를 수행하는 작업을 거쳐야 통합 테스트에서 예상하지 못한 비용을 줄일 수 있습니다.

먼저 콘솔 응용 프로젝트로 테스트 가입 서버(TracerRegServer)를 추가합니다. 프로젝트에 Program.cpp 파일을 추가하여 코드를 작성합니다. 먼저 필요한 헤더 파일을 포함합니다.

윈속 라이브러리와 EH 패킷 라이브러리와 가입 라이브러리를 참조 추가합니다.

진입점인 main에서는 윈속 초기화와 테스트 서버 가동 및 윈속 해제화를 수행합니다.

테스트 서버 가동 함수를 작성합시다. 앞에서 설명한 내용들이므로 코드 설명은 생략할게요.

가입 테스트 클라이언트가 연결한 이후에 테스트로 보내는 패킷을 받아 처리하는 루틴을 구현합시다.

쓰레드 진입점에 전달한 인자는 클라이언트와 통신에 사용할 소켓입니다.

먼저 클라이언트에서 전송한 패킷을 수신합니다.

그리고 메시지 아이디에 따라 각 메시지 처리 루틴을 호출합니다.

처리 루틴을 마치면 소켓을 닫습니다.

가입 요청 메시지 처리 루틴입니다.

먼저 EHPacket을 가입 요청 패킷으로 전환합니다.

그리고 확인을 위해 가입 메시지에 전달한 정보를 출력합니다.

가입 요청 응답 메시지 처리 루틴입니다. 처리 방법은 같습니다.

먼저 EHPacket을 가입 요청 응답 패킷으로 전환합니다.

요청 응답 결과를 출력합니다.

탈퇴 요청 메시지 처리 루틴입니다. 처리 방법은 같습니다.

먼저 EHPacket을 탈퇴 요청 패킷으로 전환합니다.

탈퇴 요청 정보를 출력합니다.