2.7.1 팩토리 함수로 beforeEach( ) 함수 완전히 대체
beforeEach()를 전혀 사용하지 않고 하나 이상의 팩토리 함수를 사용해서 코드를 준비(arrange)한다면 어떻게 될까? 아니면 팩토리 함수를 좀 더 작게 만들어서 사용해 보면 어떨까? 어떤 모습일지 다음 예제로 함께 확인해 보자.
예제 2-17 beforeEach()를 팩토리 함수로 대체하기
// __tests__/password-verifier1.spec.js
const makeVerifier = () => new PasswordVerifier1();
const passingRule = () => ({ passed: true, reason: '' });
const makeVerifierWithPassingRule = () => {
const verifier = makeVerifier();
verifier.addRule(passingRule);
return verifier;
};
const makeVerifierWithFailedRule = (reason) => {
const verifier = makeVerifier();
const fakeRule = () => ({ passed: false, reason: reason });
verifier.addRule(fakeRule);
return verifier;
};