public async Task Verify_emittingCommand_on_reload()
        {
            var orderId = new OrderId(101);
            var evt     = new OrderPlaced(orderId);

            await ApplyEventOnSaga(evt).ConfigureAwait(false);

            var evt2 = new BillPrinted(orderId);

            await ApplyEventOnSaga(evt2).ConfigureAwait(false);

            var sagaId = _listener.GetCorrelationId(evt);

            var changesets = await _persistence.EventStoreReadChangeset(sagaId).ConfigureAwait(false);

            var changeset = changesets.Last();

            Assert.That(changeset.Events.Length, Is.EqualTo(1), "Single event expected");
            var @event = changeset.Events.Single();

            Assert.That(@event, Is.InstanceOf <MessageReaction>(), "We are expecting a messagereaction as payload");
            MessageReaction reaction = (MessageReaction)@event;

            Assert.That(reaction.MessagesOut.Length, Is.EqualTo(0), "Bill printed does not have out events");
        }
        public void listener_tests_when_id_has_prefix()
        {
            var listener = new DeliverPizzaSagaListener2();
            var orderId  = new OrderId(5);

            var placed    = new OrderPlaced(orderId);
            var printed   = new BillPrinted(orderId);
            var received  = new PaymentReceived(orderId, Guid.NewGuid());
            var delivered = new PizzaDelivered(orderId);

            Assert.AreEqual("DeliverPizzaSaga2_" + (string)orderId, listener.GetCorrelationId(placed));
            Assert.AreEqual("DeliverPizzaSaga2_" + (string)orderId, listener.GetCorrelationId(printed));
            Assert.AreEqual("DeliverPizzaSaga2_" + (string)orderId, listener.GetCorrelationId(received));
            Assert.AreEqual("DeliverPizzaSaga2_" + (string)orderId, listener.GetCorrelationId(delivered));
        }
        public async Task Verify_saga_reloaded_status_after_two_events()
        {
            var orderId = new OrderId(101);
            var evt     = new OrderPlaced(orderId);

            await ApplyEventOnSaga(evt).ConfigureAwait(false);

            var evt2 = new BillPrinted(orderId);

            await ApplyEventOnSaga(evt2).ConfigureAwait(false);

            var sagaId       = _listener.GetCorrelationId(evt);
            var sagaReloaded = await _repo.GetByIdAsync <DeliverPizzaSaga2>(sagaId).ConfigureAwait(false);

            Assert.That(sagaReloaded.AccessState.PizzaActualStatus, Is.EqualTo("Bill printed"));
        }
        public void listener_tests()
        {
            var listener = new DeliverPizzaSagaListener();
            var orderId  = new OrderId(4);

            var placed    = new OrderPlaced(orderId);
            var printed   = new BillPrinted(orderId);
            var received  = new PaymentReceived(orderId, Guid.NewGuid());
            var delivered = new PizzaDelivered(orderId);
            var prefix    = listener.Prefix;

            Assert.AreEqual(prefix + (string)orderId, listener.GetCorrelationId(placed));
            Assert.AreEqual(prefix + (string)orderId, listener.GetCorrelationId(printed));
            Assert.AreEqual(prefix + (string)orderId, listener.GetCorrelationId(received));
            Assert.AreEqual(prefix + (string)orderId, listener.GetCorrelationId(delivered));
        }
Exemplo n.º 5
0
        public void Verify_saga_reloaded_status_after_two_events()
        {
            var orderId = new OrderId(42);
            var evt     = new OrderPlaced(orderId);

            ApplyEventOnSaga(evt);

            var evt2 = new BillPrinted(orderId);

            ApplyEventOnSaga(evt2);

            var sagaId       = _listener.GetCorrelationId(evt);
            var sagaReloaded = _repo.GetById <DeliverPizzaSaga2>(sagaId);

            Assert.That(sagaReloaded.PizzaActualStatus, Is.EqualTo("Bill printed"));
        }
Exemplo n.º 6
0
 public void On(BillPrinted billPrinted)
 {
     _logger.Debug("Bill printed");
 }
Exemplo n.º 7
0
 public void On(BillPrinted billPrinted)
 {
     Log("Bill printed");
 }