Rhino Mocks: Gibt es eine Möglichkeit, eine Einschränkung auf eine Objekteigenschaft Eigentum zu überprüfen?
-
09-06-2019 - |
Frage
Wenn ich
class ObjA {
public ObjB B;
}
class ObjB {
public bool Val;
}
und
class ObjectToMock {
public DoSomething(ObjA obj){...}
}
Gibt es eine Möglichkeit, eine Erwartung zu definieren, die nicht nur DoSomething aufgerufen aber das obj.B.Val == wahr?
Ich habe versucht,
Expect.Call(delegate {
mockObj.DoSomething(null);
}).Constraints(new PropertyIs("B.Val", true));
, aber es scheint egal zu versagen, was der Wert ist.
Lösung
Sie können versuchen, mit Is.Matching () und ein Prädikat Einschränkung Bereitstellung (bewegte out-of Linie für Klarheit):
Predicate nestedBValIsTrue = delegate(ObjA a) { return a.B.Val == true;};
Expect.Call( delegate {mockobj.DoSomething(null);})
.Constraints( Is.Matching(nestedBValIsTrue));
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow