public async Task <IActionResult> Put(Guid id, UpdatePromocionCommand command) { if (id != command.Id) { return(BadRequest()); } return(Ok(await Mediator.Send(command))); }
public async Task Modificar_Promocion_Success() { var command = new CreatePromocionCommand { Bancos = new string[] { "Galicia" }, MediosDePago = new string[] { "TARJETA_CREDITO" }, CategoriasProductos = new string[] { "ElectroCocina" }, MaximaCantidadDeCuotas = 3, FechaInicio = new DateTime(2021, 3, 1), FechaFin = new DateTime(2021, 3, 31) }; CreatePromocionCommandHandler createHandler = new CreatePromocionCommandHandler(_promocionRepositoryAsync, _mapper); var promocionCreada = await createHandler.Handle(command, default(CancellationToken)); UpdatePromocionCommand updatePromocionCommand = new UpdatePromocionCommand { Id = promocionCreada.Data, Bancos = new string[] { "Galicia" }, MediosDePago = new string[] { "GIFT_CARD" }, CategoriasProductos = new string[] { "ElectroCocina" }, MaximaCantidadDeCuotas = 3, FechaInicio = new DateTime(2021, 3, 1), FechaFin = new DateTime(2021, 3, 31) }; UpdatePromocionCommandHandler updatePromocionCommandHandler = new UpdatePromocionCommandHandler(_promocionRepositoryAsync, _mapper); var promocionModificado = await updatePromocionCommandHandler.Handle(updatePromocionCommand, default(CancellationToken)); GetPromocionByIdQuery getPromocionByIdQuery = new GetPromocionByIdQuery { Id = promocionCreada.Data }; GetProductByIdQueryHandler getProductByIdQueryHandler = new GetProductByIdQueryHandler(_promocionRepositoryAsync); var promocionById = await getProductByIdQueryHandler.Handle(getPromocionByIdQuery, default(CancellationToken)); Assert.AreEqual(promocionCreada.Data, promocionModificado.Data); Assert.NotNull(promocionById.Data.FechaModificacion); Assert.AreEqual("GIFT_CARD", promocionById.Data.MediosDePago.FirstOrDefault()); }