2.4 앞으로 이 책에서 주로 다루는 예제: 비밀번호 검증 프로젝트
이 책에서는 많은 예제를 다루지만 대부분은 하나의 함수만 포함하는 단순한 형태의 프로젝트에서 시작한다. 책 뒷부분으로 갈수록 좀 더 많은 함수나 클래스, 모듈을 추가하면서 단위 테스트를 다각도에서 비출 예정이다. 이 프로젝트를 비밀번호 검증 프로젝트라고 하겠다.
첫 번째 시나리오는 간단하다. 비밀번호 검증 라이브러리를 만들 텐데, 사실 라이브러리라고 했지만 아직은 단출한 하나의 작은 함수에 불과하다. 함수 이름은 비밀번호를 검증해야 하니 verifyPassword(rules)로 짓는다. verifyPassword는 rules를 매개변수로 받는데, 이는 또 다른 함수다. 그리고 에러 메시지를 담은 배열을 반환한다. 매개변수 rules로 전달되는 함수는 다음 데이터 형태를 반환 값으로 내보내야 한다.
{
passed: (boolean),
reason: (string)
}