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)); }
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);