मूल विधि है जिसे मैंने अभी भी Moq का उपयोग करने का प्रयास किया है। यहाँ मेरी कोड है:Moq सेटअप काम नहीं कर रहा है, मूल विधि अभी भी
var mockedBetRepository = new Mock<BetRepository>(new FakeSiteContext());
mockedBetRepository.CallBase = true;
Bet bet = new Bet();
mockedBetRepository.Setup<Bet>(m => m.UpdateBet(bet)).Returns(bet);
betRepository = mockedBetRepository.Object;
कोड में बाद में, betRepository.UpdateBet(bet)
कहा जाता है, लेकिन इसकी नहीं मेरी मज़ाक उड़ाया विधि है जो कहा जाता हो जाता है, बजाय, वर्ग की विधि कहा जाता हो जाता है:
public virtual Bet UpdateBet(Bet betToUpdate)
{
siteContext.Entry(betToUpdate).State = System.Data.EntityState.Modified;
siteContext.SaveChanges();
return betToUpdate;
}
क्यों हो रहा ?
क्या आप उसी संदर्भ का उपयोग कर रहे हैं जब आप विधि को सेटअप करते हैं जैसा कि वास्तव में कहा जाता है? ऐसा इसलिए है जो आप देख रहे व्यवहार को समझाएंगे, क्योंकि मोक का उपयोग यह जांचने के लिए किया जा सकता है कि सत्यापन के दौरान उस विशिष्ट मान का उपयोग किया गया था। संदर्भ प्रकारों के लिए, यह आपके ऑब्जेक्ट के विशिष्ट उदाहरण होंगे। – Andy
हाँ, शायद यह था। पता नहीं था कि मोजे इतने अनन्य और स्पष्ट थे। – ErikTJ