public void Handle_ShipOrderArrived_SendToFedEx() { Test.Initialize(); var shipOrder = new ShipOrder {Order = 1}; Test.Saga<BookShipmentPolicy>() .ExpectSend<ShipWithFedEx>(m => m.Order == shipOrder.Order) .When(saga => saga.Handle(shipOrder)); }
public void Handle_ShipOrderArrived_TimeoutShouldBeSet() { Test.Initialize(); var shipOrder = new ShipOrder{Order = 1}; Test.Saga<BookShipmentPolicy>() .ExpectTimeoutToBeSetIn<FedExTimeout>((state,span) => span == TimeSpan.FromSeconds(5)) .When(saga => saga.Handle(shipOrder)); }
public void When_shiporder_received_should_send_fedex_message() { //NOTE: This initializes e.g. the bus Test.Initialize(); var shipOrder = new ShipOrder {OrderId = Guid.NewGuid()}; Test.Saga<ShippingSaga>() .ExpectSend<ShipToFedex>(s => s.OrderId == shipOrder.OrderId) .When(s => s.Handle(shipOrder)); }
public void When_fedex_times_out_should_send_timeout() { //NOTE: This initializes e.g. the bus Test.Initialize(); var shipOrder = new ShipOrder { OrderId = Guid.NewGuid() }; Test.Saga<ShippingSaga>() .ExpectTimeoutToBeSetIn<FedexTimedout>((f, t) =>t == TimeSpan.FromSeconds(15)) .When(s => s.Handle(shipOrder)); }
public void Handle_FedExTimesOut_SendToUps() { Test.Initialize(); var fedExTimeout = new FedExTimeout(); var shipOrder = new ShipOrder {Order = 1}; Test.Saga<BookShipmentPolicy>() .When(policy => policy.Handle(shipOrder)) .ExpectSend<ShipWithUps>(m => m.Order == shipOrder.Order) .When(saga => saga.Timeout(fedExTimeout)); }