개요
부수효과가 있는 함수를 임포트해서 사용하는 함수를 어떻게 테스트할까? 눈앞이 깜깜해진다. Jest는 테스트를 위한 여러가지 유틸리티를 제공해준다. 역시 모듈을 mocking하는 함수도 제공해준다.
// dependency.js
export function log(){
// some side effect
return "side effect"
}
export default function(){
return "side effect1"
}
// module.js
import dependency, { log } from "./dependency";
export defualt function exampleFunc(){
return [dependency(), log()];
}
// test.js
import exampleFunc from "./module"
jest.mock("./dependency", () => {
log: () => "mocked log"
})
test("", () => {})