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++;
 }