더북(TheBook)

응답 상태를 확인해 정상인 경우 응답을 파싱하고, 그렇지 않은 경우 오류로 실패한다.

전체 시나리오를 실행하려면 여기에서 서버를 시작한 다음 서버에서 각 단계를 실행하고 마지막에 서버를 자동으로 닫을 수 있다.

 

이제 시작 메서드는 다음과 같다. 클라이언트의 베이스 Uri를 서버와 일치하도록 설정하는 방법에 주목하라. 이렇게 하면 클라이언트가 서버와 동일한 포트를 사용하고 있는지 확인할 수 있으며, 나중에 이 코드를 변경하여 다른 곳에 배포된 서버를 사용할 수도 있다.

fun startTheApplication(lists: Map<User, List<ToDoList>>): ApplicationForAT {
    val port = 8081 // 메인에서 사용한 포트와 다름
    val server = Zettai(lists).asServer(Jetty(port))
    server.start()
    val client = ClientFilters
        .SetBaseUriFrom(Uri.of("http://localhost:$port/"))
        .then(JettyClient())
    return ApplicationForAT(client, server)
}

인수 테스트로 돌아가서 지금은 어떤지 살펴보자.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.