Exemplo n.º 1
0
        public async Task CannotAddExistingBeverages(List <BeverageView> beverages)
        {
            // Arrange
            var addBeveragesCommand = new AddBeveragesToMenu {
                Beverages = beverages
            };

            await _fixture.SendAsync(addBeveragesCommand);

            // Act
            var result = await _fixture.SendAsync(addBeveragesCommand);

            // Assert
            result.HasValue.ShouldBeFalse();

            var expectedError = Errors.Beverage.AlreadyExist(beverages.Select(b => b.MenuNumber).ToArray());

            result.MatchNone(error => error
                             .Messages
                             .ShouldContain(expectedError));
        }
Exemplo n.º 2
0
        public async Task CanAddBeveragesInMenu(List <BeverageView> beveragesToAdd)
        {
            // Arrange
            var command = new AddBeveragesToMenu
            {
                Beverages = beveragesToAdd
            };

            // Act
            var result = await _fixture.SendAsync(command);

            // Assert
            result.HasValue.ShouldBeTrue();

            await _fixture.ExecuteDbContextAsync(async dbContext =>
            {
                var beveragesInDb = await dbContext.Beverages.ToListAsync();

                beveragesInDb.ShouldAllBe(b => beveragesToAdd.Any(bv =>
                                                                  b.MenuNumber == bv.MenuNumber &&
                                                                  b.Price == bv.Price &&
                                                                  b.Description == bv.Description));
            });
        }
 public async Task <IActionResult> AddBeverages([FromBody] AddBeveragesToMenu request) =>
 (await _mediator.Send(request))
 .Match(Ok, Error);