का उपयोग कर एक कन्स्ट्रक्टर पर जासूसी मैं जैस्मीन का उपयोग करके परीक्षण कर रहा हूं कि कुछ वस्तुएं बनाई गई हैं और उन पर विधियों को बुलाया जाता है।जैस्मीन
मेरे पास एक jQuery विजेट है जो फ्लिपकॉन्टर ऑब्जेक्ट बनाता है और उन पर सेट वैल्यू विधि को कॉल करता है। flipcounter के लिए कोड यहाँ है: https://bitbucket.org/cnanney/apple-style-flip-counter/src/13fd00129a41/js/flipcounter.js
flipcounters का उपयोग कर बनाई गई हैं:
var myFlipCounter = new flipCounter("counter", {inc: 23, pace: 500});
मैं परीक्षण करने के लिए है कि flipcounters बनाई गई हैं और setValue विधि उन पर कहा जाता है चाहता हूँ। मेरी समस्या यह है कि मैं इन वस्तुओं पर बनाये जाने से पहले भी कैसे जासूसी कर सकता हूं? क्या मैं निर्माता पर जासूसी करता हूं और नकली वस्तुओं को वापस करता हूं? नमूना कोड वास्तव में मदद करेगा। आपकी सहायताके लिए धन्यवाद! :)
अद्यतन:
myStub = jasmine.createSpy('myStub');
spyOn(window, 'flipCounter').andReturn(myStub);
//expectation
expect(window.flipCounter).toHaveBeenCalled();
फिर flipCounter द्वारा setValue कॉल के लिए परीक्षण:
spyOn(myStub, 'setValue');
//expectation
expect(myStub.setValue).toHaveBeenCalled();
पहले
मैं इस तरह flipCounter पर जासूसी की कोशिश की है फ्लिप काउंटर शुरू करने के लिए परीक्षण ठीक है, लेकिन सेटवैल्यू कॉल का परीक्षण करने के लिए, मुझे बस एक 'setValue() विधि मौजूद नहीं है' त्रुटि। क्या मैं इसे सही तरीके से कर रहा हूं? धन्यवाद!
कारण आप उस पर 'जासूस' करना चाहते हैं क्या है? –
मैं यह सुनिश्चित करना चाहता हूं कि फ्लिप काउंटर बनाया गया है और उचित मूल्य निर्धारित है। – maru