더북(TheBook)
    private fun getToDoList(user: String, listName: String): ToDoList {
        // 테스트에서 액터로 옮겨졌다.
    }
}
 
private fun createList(listName: String, items: List<String>) =
    ToDoList(ListName(listName), items.map(::ToDoItem))

액터의 이름을 포함하는 액터용 제네릭 인터페이스를 정의한다.

ToDoListOwner 액터의 첫 번째 메서드는 이름과 항목이 있는 목록이 있는지 확인하는 것이다. 이렇게 하면 테스트에서 단언문을 대체할 수 있다.

메서드 파라미터에서 작은 유틸리티 함수를 사용해 예상 목록을 생성한다.

이전 테스트에 있던 getToDoList 메서드를 호출해 애플리케이션에서 목록을 가져온다.

마지막으로 예상 목록과 애플리케이션에서 가져온 목록을 비교한다.

 

액터를 사용해 테스트를 다시 작성하면 이미 어떤 일이 벌어지고 있는지 결과가 조금 더 명확해진다.

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