के साथ बुलाया जाने की उम्मीद है मैं जैस्मीन 1.3 से 2.0 तक माइग्रेशन पूरा कर रहा हूं। अब तक मैंने 2.0 के नए सिंटैक्स का अनुपालन करने के लिए अधिकांश कोड को दोबारा प्रतिक्रिया दी है। हालांकि, एक निश्चित प्रकार के परीक्षण अभी भी असफल हो रहे हैं।जैस्मीन जासूस को "ऑब्जेक्ट (...)"
संक्षेप में, अपने परीक्षण इस तरह दिखता है:
var obj = new CustomCriteria();
spyOn(my, "function");
my.function(obj);
expect(my.function).toHaveBeenCalledWith({ big: "fat object" });
मेरी CustomCriteria
वर्ग:
var CustomCriteria = function() {
this.big = "fat object";
};
परीक्षण के साथ निम्नलिखित में विफल रहता है:
Expected spy function to have been called with [ Object({ big: "fat object" }) ] but actual calls were [ ({ big: "fat object" }) ].
नोट कैसे उम्मीद है एक "Object
" इसके चारों ओर लपेटकर, लेकिन दूसरा नहीं है। यह परीक्षण जैस्मीन के < 2.0 में विफल नहीं हुआ था, लेकिन जैस्मीन अपडेट करने के बाद अब विफल रहा है। मैं इसे कैसे ठीक करूं?
अद्यतन: मैं new
के माध्यम से एक नई वस्तु बनाने के साथ चारों ओर tinkered एक function
बनाम ing शाब्दिक वाक्य रचना वस्तु, और ऐसा लगता है कि __proto__
रों अलग हैं। शायद यह जैस्मीन की समानता तुलना को प्रभावित करता है?
क्या आप एक नया कस्टमक्रिटियरिया बना सकते हैं और उसे पास कर सकते हैं? –
देखकर कि आपके पास अपने परीक्षण क्षेत्र में सभी आवश्यक संसाधन हैं, आप भी '.toHaveBeenCalledWith (obj)' के लिए जांच सकते हैं। – Phil