Ejemplo n.º 1
0
 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);
 }
Ejemplo n.º 2
0
 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);
 }
Ejemplo n.º 3
0
 public void Apply(DrinksOrdered e)
 {
     outstandingDrinks.AddRange(e.Items);
 }
Ejemplo n.º 4
0
 public void Apply(DrinksOrdered e)
 {
     outstandingDrinks.AddRange(e.Items.Select(_ => _.MenuNumber));
 }
Ejemplo n.º 5
0
 public void Apply(DrinksOrdered @event)
 {
     _drinksAwaitingServing.AddRange(@event.Items);
 }
Ejemplo n.º 6
0
 public void When(DrinksOrdered @event)
 {
     _tabBalance = @event.OrderItems.Sum(oi => oi.Price);
     _drinks.AddRange(@event.OrderItems);
 }