2017-05-13 9 views
0

이 궁금하네요 내가 아래의 기능에 중첩 된 객체 mappedValues를 스텁 Sinon을 사용하는 방법/IF :Sinon을 사용하여 객체를 스텁하는 방법은 무엇입니까?

function getValueFromObj(key) { 
    var mappedValues = { 
     "a": "aaa", 
     "b": "bbb", 
     "c": "ccc", 
     "d": "ddd", 
    }; 

    return mappedValues[key]; 
} 

시험에 대한 나의 목표는 각각의 값을 확인보다는 단지 할 아닌지 확인 통과 때 key 올바르게 대응하는 값이 리턴되고 값은 어떤 식 으로든 증가되지 않습니다. 내가이를 테스트하는 가장 좋은 방법은 생각

테스트 스텁 mappedValues이 다음 getValueFromObj의 반환 값을 확인하는 것입니다하지만 난 실제로 객체를 스텁하는 방법을 모르겠어요.

+0

mappedValues.hasOwnProperty (key)를 사용할 수 있습니다. –

답변

0

나는이 목적으로 sinon을 사용하는 것은 좋은 생각이라고 생각하지 않습니다. 난 당신이 단순히이 같은 테스트를 작성할 수 있다고 생각 :이 기대 (내가 차이가 쓰기를 기대 사용) 만족

expect(getValueFromObj("a")).to.eql("aaa"); 

당신이 모든 일이 제대로 확신합니다.