Exemplo n.º 1
0
        public void Clearing_Items_From_Basket_Should_Clear_All_Items_In_The_Basket()
        {
            //-----------------------------------------------------------------------------------------------------------
            // Arrange
            //-----------------------------------------------------------------------------------------------------------
            Guid      basketId     = Faker.Random.Uuid();
            Guid      itemId       = Faker.Random.Uuid();
            const int fromQuantity = 2;

            var basketCreatedEvent = new BasketCreatedEvent(basketId);
            var itemAddedEvent     = new ItemAddedEvent(basketId, itemId, fromQuantity);
            var basketCleanedEvent = new BasketCleaned(basketId);

            //-----------------------------------------------------------------------------------------------------------
            // Act
            //-----------------------------------------------------------------------------------------------------------
            Basket basket = Basket.Create(basketId);

            basket.AddItem(itemId, fromQuantity);
            basket.Clear();

            //-----------------------------------------------------------------------------------------------------------
            // Assert
            //-----------------------------------------------------------------------------------------------------------
            basket.Items.Count.Should().Be(0);
            basket.ShouldPublishDomainEvents(basketCreatedEvent, itemAddedEvent, basketCleanedEvent);
        }
Exemplo n.º 2
0
 private void When(BasketCleaned @event)
 {
     Items.Clear();
 }
Exemplo n.º 3
0
        public Task Handle(BasketCleaned notification, CancellationToken cancellationToken)
        {
            // Handle Projections or inform the other Bounded Context...

            return(Task.CompletedTask);
        }