모듈의 함수를 테스트하려고합니다. 이 함수 (function_a로 참조)는 동일한 파일 내에서 다른 함수 (function_b)를 호출합니다. 따라서이 모듈은 다음과 같습니다 :nodejs가 모듈의 함수를 대체합니다.
//the module file
module.exports.function_a = function(){
//does stuff
function_b()
};
module.exports.function_b = function_b = function() {
//more stuff
}
function_a를 function_b의 특정 결과와 함께 테스트해야합니다.
내 테스트 파일에서 function_b를 무시한 다음 내 테스트 파일에서 function_a를 호출하여 function_a가 function_b 대신이 재정의 함수를 호출하게합니다.
그냥 메모, 내가 노력하고 this 질문처럼, 별도의 모듈에서 재정의 기능에 성공,하지만 난에 관심 것이 아닙니다.
나는 아래의 코드를 시도하고, 지금까지 내가 아는 한, 작동하지 않습니다. 그것은 은 내가 무슨 일을하는지 보여줍니다 않습니다.
//test file
that_module = require("that module")
that_module.function_b = function() { ...override ... }
that_module.function_a() //now uses the override function
올바른 방법이 있습니까?
완벽하게 작동했습니다. 엄청 고마워! –