Exemplo n.º 1
0
 public async Task <IActionResult> Put(Guid id, UpdatePromocionCommand command)
 {
     if (id != command.Id)
     {
         return(BadRequest());
     }
     return(Ok(await Mediator.Send(command)));
 }
Exemplo n.º 2
0
        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());
        }