체크인 처리/등록 기능을 별개의 모듈로 추출한 덕분에 아주 간명한 checkInService.checkIn 단위 테스트가 만들어졌다.
checkInService 구현 역시 간단하다(예제 5-5).
예제 5-5 checkinService.checkIn(attendee) 구현부
소스 파일 5장\Callbacks\checkInService.js
var Conference = Conference | | {}; Conference.checkInService = function(checkInRecorder) { // 주입한 checkInRecorder의 참조값을 보관한다. var recorder = checkInRecorder; return { checkIn: function(attendee) { attendee.checkIn(); recorder.recordCheckIn(attendee); } }; };
테스트 꾸러미를 실행하면 성공이다(그림 5-4).

►그림 5-4