private void SetUpEventStore() { _tabOpened = new TabOpened { Id = _tabOpenedEventId, AggregateId = _aggregateId, CommandId = _openTabCommandId, TableNumber = _tableNumber, Waiter = _waiter }; _drinksOrdered = new DrinksOrdered { Id = _drinksOrderedId, AggregateId = _aggregateId, CommandId = _placeOrderCommandId, Items = new List <OrderedItem> { new OrderedItem { Description = _drinkDescription, IsDrink = true, MenuNumber = _drinkMenuNumber, Price = _drinkPrice } } }; _events = new List <IEvent> { _tabOpened, _drinksOrdered }; _eventRepository = Substitute.For <IEventRepository>(); _eventRepository.GetAllEventsFor(_aggregateId).Returns(_events); }
public void Handle(DrinksOrdered e) { AddItems(e.Id, e.Items.Select(drink => new TabItem { MenuNumber = drink.MenuNumber, Description = drink.Description, Price = drink.Price }), t => t.ToServe); }
public void Apply(DrinksOrdered e) { outstandingDrinks.AddRange(e.Items); }
public void Apply(DrinksOrdered e) { outstandingDrinks.AddRange(e.Items.Select(_ => _.MenuNumber)); }
public void Apply(DrinksOrdered @event) { _drinksAwaitingServing.AddRange(@event.Items); }
public void When(DrinksOrdered @event) { _tabBalance = @event.OrderItems.Sum(oi => oi.Price); _drinks.AddRange(@event.OrderItems); }