2013-02-14 20 views
5

अच्छा दिन।चमेली - यह जांचने के लिए कि कोई तर्क मौजूद है या नहीं?

आईएम परीक्षण को देखने के लिए परीक्षण उसके सभी तर्क मिल गया।

मुझे पता है क्या मूल्य उसके आर्ग के दो होनी चाहिए,

लेकिन तीसरे आर्ग के लिए, मैं सिर्फ यदि वह मौजूद है परीक्षण करना चाहते हैं। अग्रिम

+0

धन्यवाद formating – adam

उत्तर

4

आप jasmine.any का भी उपयोग कर सकते हैं। मामले में आप उम्मीद करते हैं एक नंबर हो सकता है:

expect(myFunction).toHaveBeenCalledWith({ 
    a: 1, 
    b: 2, 
    c: jasmine.any(Number) 
}); 

यह भी संभव jasmine.any(Function) है और इतने पर। जैस्मीन डॉक्टर से:

jasmine.any एक कन्स्ट्रक्टर या "कक्षा" नाम को अपेक्षित मूल्य के रूप में लेता है। यह वास्तविकता के कन्स्ट्रक्टर से मेल खाता है तो यह सच हो जाता है।

+0

बहुत उपयोगी - बहुत बहुत धन्यवाद :) – adam

4

में

expect(myFunction).toHaveBeenCalledWithMatcher({ 
    a: 1, 
    b: 2, 
    c: dont know its val but want it to exist 
}); 

धन्यवाद प्रयास करें

expect(myFunction.mostRecentCall.args[2]).toBeDefined(); 

और toHaveBeenCalledWith परीक्षा में तर्क को छोड़ दें।

+0

बहुत बहुत धन्यवाद :) पी.एस के लिए - खेद मैं did not वोट - मैं अधिक प्रतिनिधि की जरूरत है ... – adam

+0

आप उस के साथ वाकई सक्षम होने के लिए? मुझे लगता है कि फ़ंक्शन केवल एक तर्क लेता है, इसलिए इस दृष्टिकोण के साथ यह अपेक्षा की जानी चाहिए (myFunction.mostRecentCall.args [0] .c) .toBeDefined() '। – zbynour

संबंधित मुद्दे

 संबंधित मुद्दे