public void ProcessManager_Recieves_Reminder_Event_Does_Not_Publishe_SellEvent() { //arrange var priceUpdatedMessage = new PriceUpdatedEvent(99); processManager.Handle(priceUpdatedMessage); var RemoveFromLowWindow = new RemoveFromLowWindow(99); bus.ClearEvents(); //act processManager.Handle(RemoveFromLowWindow); // assert Assert.That(bus.PublishedEvents.Count, Is.EqualTo(0)); }
public void ProcessManager_Recieves_Reminder_Event_Publishes_SellEvent() { //arrange var priceUpdatedMessage = new PriceUpdatedEvent(80); processManager.Handle(priceUpdatedMessage); var RemoveFromLowWindow = new RemoveFromLowWindow(80); bus.ClearEvents(); //act processManager.Handle(RemoveFromLowWindow); // assert Assert.That(bus.PublishedEvents.Count, Is.EqualTo(1)); var sellEvent = (SellEvent) bus.PublishedEvents.SingleOrDefault(evt => evt.GetType() == typeof(SellEvent)); Assert.That(sellEvent, Is.Not.Null); }
public void ProcessManager_Receives_Price_Updated_Event_Publishes_Reminder_Events() { //given initialised Process Manager //when Price Updated event arrices //then - Remindme(13, droppricefromsellwindow) // - Remindme(11, droppricefrommoveupwindow) // arrange var message = new PriceUpdatedEvent(105); // act processManager.Handle(message); // assert Assert.That(bus.PublishedEvents.Count, Is.EqualTo(3)); // this is really part of the arrangement for this test. we should clear it before acting var RemoveSellThresholdSetEvent = (SellThresholdSetEvent) bus.PublishedEvents.Single(evt => evt.GetType() == typeof(SellThresholdSetEvent)); Assert.That(RemoveSellThresholdSetEvent.Price, Is.EqualTo(90)); var RemoveFromHighWindowReminderEvent = (ReminderEvent <RemoveFromHighWindow>) bus.PublishedEvents.Single(evt => evt.GetType() == typeof(ReminderEvent <RemoveFromHighWindow>)); Assert.That(RemoveFromHighWindowReminderEvent.Message, Is.TypeOf <RemoveFromHighWindow>()); Assert.That(RemoveFromHighWindowReminderEvent.Message.Price, Is.EqualTo(105)); Assert.That(RemoveFromHighWindowReminderEvent.Seconds, Is.EqualTo(11)); var RemoveFromLowWindowReminderEvent = (ReminderEvent <RemoveFromLowWindow>) bus.PublishedEvents.Single(evt => evt.GetType() == typeof(ReminderEvent <RemoveFromLowWindow>)); Assert.That(RemoveFromLowWindowReminderEvent.Message, Is.TypeOf <RemoveFromLowWindow>()); Assert.That(RemoveFromLowWindowReminderEvent.Message.Price, Is.EqualTo(105)); Assert.That(RemoveFromLowWindowReminderEvent.Seconds, Is.EqualTo(13)); }