Moq Überprüfen-Ereignisse ausgelöst
class A
{
event EventHandler Event1;
}
var mock = new Mock<A>();
Wie kann ich überprüfen, Event1 gefeuert wurde? (ohne Handbuch event-Handler /ausgelöst flags)
Abonnieren?
Irgendeiner Weise zu verwenden, zu Überprüfen? Ich bin momentan auf der Zeichnung zu verändern und einen flag, wenn er ausgelöst wird... aber es ist irgendwie chaotisch.
Chaotisch? Testen Ereignisse der Art, wie Sie funktionieren soll?
Nie Verstand. Ich wollte eine gewisse Art und Weise zu verwenden, stellen Sie sicher der Grund, warum ich Behaupten: klarer code und einfache Eingabe.
Irgendeiner Weise zu verwenden, zu Überprüfen? Ich bin momentan auf der Zeichnung zu verändern und einen flag, wenn er ausgelöst wird... aber es ist irgendwie chaotisch.
Chaotisch? Testen Ereignisse der Art, wie Sie funktionieren soll?
Nie Verstand. Ich wollte eine gewisse Art und Weise zu verwenden, stellen Sie sicher der Grund, warum ich Behaupten: klarer code und einfache Eingabe.
InformationsquelleAutor jameszhao00 | 2011-06-16
Du musst angemeldet sein, um einen Kommentar abzugeben.
ist oder wenn Sie sicherstellen möchten, dass die Handlung ein Ereignis auslöst, dein setup sollte so Aussehen:
InformationsquelleAutor Teoman Soygul
Ich bin mir nicht sicher, ob ich wirklich verstehen, warum Sie Fragen. Wenn Sie eine
Mock<A>
, dann Steuern Sie die mock-warum also stellen Sie sicher, dass es etwas getan hat, das Sie kontrollieren?Sagte, dass, obwohl ich Gebrauch Moq ist raise/löst, habe ich noch oft verwenden eine Flagge mit einem lambda, das finde ich ziemlich sauber:
a.Event1 += (sender, args) => eventWasDispatched = true;
InformationsquelleAutor Kaleb Pederson
Wie wäre es mit etwas wie das?
In Ihren tests:
InformationsquelleAutor Mardoxx