2016-05-04 4 views
5

मान लीजिए के साथ चमेली spyOn मैंविशिष्ट तर्क

spyOn($cookieStore,'get').and.returnValue('abc'); 

है यह मेरा उपयोग स्थिति के लिए बहुत सामान्य है। किसी भी समय हम

$cookieStore.get('someValue') --> returns 'abc' 
$cookieStore.get('anotherValue') --> returns 'abc' 

मैं चाहता हूँ सेटअप करने के लिए एक spyOn फोन तो मैं तर्क के आधार पर अलग-अलग लाभ प्राप्त:

$cookieStore.get('someValue') --> returns 'someabc' 
$cookieStore.get('anotherValue') --> returns 'anotherabc' 

कोई सुझाव?

+0

आप इस प्रश्न पर एक नज़र हुई है: http://stackoverflow.com/questions/16198353/any-way-to-modify-jasmine-spies-based- ऑन-तर्कों – Andrew

उत्तर

9

आप callFake उपयोग कर सकते हैं:

spyOn($cookieStore,'get').and.callFake(function(arg) { 
    if (arg === 'someValue'){ 
     return 'someabc'; 
    } else if(arg === 'anotherValue') { 
     return 'anotherabc'; 
    } 
} 
संबंधित मुद्दे