public void Consume(object o) { lock (_feedbackLock) { _syncCtx.Post((message) => { if (message.GetType().Equals(typeof(AutoTest.Messages.BuildRunMessage))) { if (BuildFinished == null) { return; } var msg = (AutoTest.Messages.BuildRunMessage)message; BuildFinished(this, BuildFinishedArgs.FromInternal(msg)); } else if (message.GetType().Equals(typeof(AutoTest.Messages.TestRunMessage))) { if (TestsFinished == null) { return; } var msg = (AutoTest.Messages.TestRunMessage)message; TestsFinished(this, TestsFinishedArgs.FromInternal(msg)); } else if (message.GetType().Equals(typeof(AutoTest.Messages.LiveTestStatusMessage))) { if (TestProgress == null) { return; } var msg = (AutoTest.Messages.LiveTestStatusMessage)message; TestProgress(this, ImmediateTestFeedbackArgs.FromInternal(msg)); } }, o); } }
static void engine_TestsFinished(object sender, TestsFinishedArgs e) { e.All.ToList() .ForEach(x => System.Console.WriteLine("{1} {0}", x.Name, x.Status)); }