के लिए मोक का उपयोग करने की कोशिश कर रहा है, मैं यह देखने की कोशिश कर रहा हूं कि मोक कुछ ऐसा है जो मैं एक नई परियोजना में उपयोग करना चाहता हूं क्योंकि मैंने जो अन्य मॉकिंग फ्रेमवर्क का उपयोग किया है, वह आईएमएचओ को चुनौती दे रहा है। तो उदाहरण के लिए, मैं इस तरह के रूप में एक विधि है:न्यूबी ने गणितीय विधि
IEnumerable<PickList> GetPickLists();
मुझे यकीन है कि कैसे मैं इस उपहास करने के लिए ... मैं कोशिश की है कुछ इस तरह माना जाता रहा हूँ नहीं कर रहा हूँ, लेकिन मैं compliation त्रुटियों हो रही है (मैं निम्नलिखित रिटर्न्स() सही नहीं है पता है, लेकिन समझ नहीं क्या रिटर्न शरीर में डाल करने के लिए:
var mockCrm = new Mock<ICrmProvider>();
mockCrm.Setup<IEnumerable<PickList>>(foo => foo.GetPickLists())
.Returns<IEnumerable<PickList>>({});
इसके अलावा
, इन दोनों तरीकों की तरह कुछ नकली करने की कोशिश कर:
CustomerSyncResult ApplyActions(IEnumerable<CustomerAction> actions);
IEnumerable<Customer> GetCustomers(IEnumerable<string> crmIDs, IEnumerable<string> emails);
मुझे पता है कि मैं पूछ रहा हूँ जी एक कंबल सवाल है, लेकिन मुझे एक समय शुरू करने का एक बिल्ली है। डाउनलोड में सीएचएम में मेरे लिए पर्याप्त नमूने नहीं हैं और वहां कुछ ट्यूटोरियल अप्रचलित विधियों का उपयोग करते हैं और साथ ही साथ गणनाओं को कवर नहीं करते हैं जो मेरे लिए मुश्किल बनाते हैं :(
किसी भी सुझाव की सराहना की जाएगी ।
बहुत बढ़िया ... धन्यवाद! जेल से शुरू ... –
इसके साथ चिपकाएं; यह एक महान पुस्तकालय है। आप DLLs को [LINQPad] (http://www.linqpad.net/) में आयात कर सकते हैं और यदि आप चाहें तो मॉकिंग प्रकारों के साथ खेल सकते हैं। – TrueWill
अनुवर्ती प्रश्न ... क्या होगा यदि आप जिस वस्तु को मजाक कर रहे हैं उसे कन्स्ट्रक्टर में पैरामीटर की आवश्यकता है। उदाहरण के लिए: सार्वजनिक ग्राहक SyncEngine (ILoggingProvider लॉगिंगप्रदाता, आईसीआरएमप्रोवाइडर crmProvider, ICacheProvider cacheProvider) आप वहां कन्स्ट्रक्टर के पैरा कैसे प्राप्त करते हैं? –