मैं moq.dll उपयोग कर रहा हूँ जब मैं एक वर्ग (सभी IRepository इंटरफेस) नकली मैं इस लाइन कोड का उपयोगएक वर्ग में केवल एक ही विधि moq
int state = 5;
var rep = new Mock<IRepository>();
rep.Setup(x => x.SaveState(state)).Returns(true);
IRepository repository = rep.Object;
लेकिन इस मामले में मैं सभी समारोह नकली भंडार वर्ग में। तब सभी वर्ग भंडार में तरीकों नकली dll
मैं सभी तरीकों वर्ग भंडार (वास्तविक वर्ग) और नकली केवल एक समारोह में परिभाषित का उपयोग करना चाहते करने के तरीकों सेटअप के साथ प्रतिस्थापित कर रहे हैं (savestate)
कैसे कर सकते हैं मैं यह करता हूँ? संभव है? करने के लिए भंडार निर्भरता के रूप में
var mockRep = new Mock<RealRepository>(ctorArg1, ctorArg2, ...)
.As<IRepository>();
mockRep.Setup(x => x.SaveState(state)).Returns(true);
फिर mockRep.Object
:
आपको पता है कि आप rep.Setup कई बार सही कॉल कर सकते हैं? – Liath
क्या SaveState 'virtual' है? – DaveShaw
सेवस्टेट आभासी नहीं है। लीथ क्यों कई बार प्रतिनिधि सेट? मैं केवल इस विधि के लिए सेटअप का उपयोग करना चाहता हूं। अन्य विधियों को असली दुनिया – user3401335