Ich habe die folgende Methode:
public CustomObect MyMethod()
{
var lUser = GetCurrentUser();
if (lUser.HaveAccess)
{
//One behavior
}
else
{
//Other behavior
}
//return CustomObject
}
Ich möchte verspotten IMyInterface.GetCurrentUser
, damit MyMethod
ich beim Aufrufen zu einem der Codepfade gelangen kann, um ihn zu überprüfen. Wie macht man das mit Moq?
Ich mache folgendes:
var moq = new Mock<IMyInterface>();
moq.Setup(x => x.GetCurrentUser()).Returns(lUnauthorizedUser);
//act
var lResult = moq.Object.MyMethod();
Aber aus irgendeinem Grund lResult
ist es immer so null
und wenn ich versuche, mich MyMethod
auf das Debuggen einzulassen, springe ich immer zur nächsten Anweisung.
lUnauthorizedUser
initialisiert? Ich würde mir vorstellen, dass Sie so etwas wollen würdenmoq.Setup(x => x.GetCurrentUser()).Returns(new User() { HaveAccess = false });