public void DispatchLotsOfMessagesToSaga(int iterations) { activator.UseHandler(new MessageCountingSaga()); var correlationId = "some_id"; var message = new MessageToCount { CorrelationId = correlationId }; var stopwatch = Stopwatch.StartNew(); for (var counter = 0; counter < iterations; counter++) { dispatcher.Dispatch(message); } var sagaData = persister.Cast <MessageCountingSagaData>().Single(); Assert.AreEqual(correlationId, sagaData.CorrelationId); Assert.AreEqual(iterations, sagaData.Counter); var elapsed = stopwatch.Elapsed; Console.WriteLine("{0} iterations took {1:0.000} s - that's {2:0.0} msg/s", iterations, elapsed.TotalSeconds, iterations / elapsed.TotalSeconds); }
public void Handle(MessageToCount message) { Data.CorrelationId = message.CorrelationId; Data.Counter++; }