मैं एक वापसी मान स्थापित करने के लिएकिसी ऑब्जेक्ट पर पिछली उम्मीदों को कैसे साफ़ किया जाए?
_stubRepository.Stub(Contains(null)).IgnoreArguments().Return(true);
लेकिन फिर एक विशेष परीक्षा में, उस उम्मीद को ओवरराइड झूठी वापसी करना चाहते हैं।
कुछ की तरह:
_stubRepository.ClearExpectations(); //<- this does not exist, I'm just making something up
_stubRepository.Stub(Contains(null)).IgnoreArguments().Return(false);
सूचना, मैं उम्मीद दूसरी कॉल पर झूठी वापस जाने के लिए नहीं करना चाहते, मैं पहली बार उम्मीद ओवरराइड करना चाहते।
इससे मेरे परीक्षण परिदृश्य को काफी सरल बनाने में मदद मिलेगी। BackToRecord
का उपयोग कर रहा स्वीकार करने के लिए है कि मैं वास्तव में कभी नहीं यह प्रयोग किया जाता है क्योंकि यह अजीब है द्वारा
आप उम्मीदों रीसेट कर सकते हैं:
आंतरिक राइनो मॉक में दोहराने का उपयोग करते हुए बोलते हैं। कोई भी दोहराने योग्य उम्मीद बनाता है, जो प्लेबैक के दौरान सामान्य अपेक्षाओं को टंप करता है। मैं बैकट्रो रिकार्ड का उपयोग करने की सलाह देता हूं, हालांकि। –
आह, रीप्ले() कॉल को छोड़कर इसे सब कुछ पता चला। –
यह एक चीज है जो वास्तव में 3.4 या उससे अधिक उम्र के बाद राइनोमोक्स का उपयोग करने वाले लोगों द्वारा जानी जाती है। RhinoMocks रिकॉर्ड-रीप्ले के साथ काम किया, इसका मतलब है कि एक नकली को स्पष्ट रूप से रीप्ले मोड में सेट किया जाना था। 3.5 के साथ, सौभाग्य से यह चला गया है, मैक्स हमेशा रीप्ले मोड में हैं (कम से कम कस्टम कोड के लिए)। जब तक आप इसे वापस रिकॉर्ड मोड में नहीं डालते - साफ़ करने की अपेक्षाओं को छोड़कर मुझे ऐसा करने का कोई कारण नहीं दिखता है। मैं उम्मीदों को आराम से रीसेट करने के लिए पहले से ही इन दो लाइनों के लिए एक पैच लिखना चाहता था। –