public void ThrowExceptionRepositoryInUpdateMethodTest()
        {
            Reserve reserve = new Reserve()
            {
                Id                   = Guid.NewGuid(),
                Name                 = "Joaquin",
                LastName             = "Lamela",
                Email                = "*****@*****.**",
                CheckIn              = new DateTime(2020, 05, 25),
                CheckOut             = new DateTime(2020, 06, 10),
                QuantityOfAdult      = 2,
                QuantityOfChild      = 2,
                QuantityOfBaby       = 1,
                LodgingOfReserve     = lodging,
                StateOfReserve       = Reserve.ReserveState.Creada,
                PhoneNumberOfContact = 29082733,
                DescriptionForGuest  = "Va a disfrutar de su estadia, garantia asegurada"
            };

            var reserveRepositoryMock = new Mock <IRepository <Reserve> >(MockBehavior.Strict);

            reserveRepositoryMock.Setup(m => m.Get(It.IsAny <Guid>())).Returns(reserve);
            reserveRepositoryMock.Setup(m => m.Update(It.IsAny <Reserve>())).Throws(new ServerException("Ocurrio un error al actualizar."));

            ReserveManagement reserveLogic = new ReserveManagement(reserveRepositoryMock.Object);

            Reserve reserveToUpdate = new Reserve()
            {
                Id = reserve.Id,
                DescriptionForGuest = "Su reserva ha sido aceptada",
                StateOfReserve      = Reserve.ReserveState.Aceptada
            };

            Reserve resultOfUpdate = reserveLogic.Update(reserveToUpdate.Id, reserveToUpdate);
        }
        public void UpdateTheDescriptionOfReserveWithEmptyTextTest()
        {
            Reserve reserveToUpdate = new Reserve()
            {
                DescriptionForGuest = "",
                StateOfReserve      = Reserve.ReserveState.Aceptada
            };
            var reserveRepositoryMock = new Mock <IRepository <Reserve> >(MockBehavior.Strict);

            reserveRepositoryMock.Setup(m => m.Get(It.IsAny <Guid>())).Returns(reserveToUpdate);
            reserveRepositoryMock.Setup(m => m.Update(It.IsAny <Reserve>()));

            ReserveManagement reserveLogic   = new ReserveManagement(reserveRepositoryMock.Object);
            Reserve           resultOfUpdate = reserveLogic.Update(reserveToUpdate.Id, reserveToUpdate);
        }
        public void ThrowsExceptionOnUpdateReserveTest()
        {
            var reserveRepositoryMock = new Mock <IRepository <Reserve> >(MockBehavior.Strict);

            reserveRepositoryMock.Setup(m => m.Get(It.IsAny <Guid>())).Throws(new ServerBusinessLogicException("Ha ocurrido un error al obtener la reserva."));
            reserveRepositoryMock.Setup(m => m.Update(It.IsAny <Reserve>()));

            ReserveManagement reserveLogic = new ReserveManagement(reserveRepositoryMock.Object);

            Reserve reserveToUpdate = new Reserve()
            {
                Id = Guid.NewGuid(),
                DescriptionForGuest = "Su reserva ha sido aceptada",
                StateOfReserve      = Reserve.ReserveState.Aceptada
            };

            Reserve resultOfUpdate = reserveLogic.Update(reserveToUpdate.Id, reserveToUpdate);
        }
        public void UpdateInvalidBecauseReserveIsNotFoundTest()
        {
            var reserveRepositoryMock = new Mock <IRepository <Reserve> >(MockBehavior.Strict);

            reserveRepositoryMock.Setup(m => m.Get(It.IsAny <Guid>())).Throws(new ClientException());
            reserveRepositoryMock.Setup(m => m.Update(It.IsAny <Reserve>()));

            ReserveManagement reserveLogic = new ReserveManagement(reserveRepositoryMock.Object);

            Reserve reserveToUpdate = new Reserve()
            {
                Id = Guid.NewGuid(),
                DescriptionForGuest = "Su reserva ha sido aceptada",
                StateOfReserve      = Reserve.ReserveState.Aceptada
            };

            Reserve resultOfUpdate = reserveLogic.Update(reserveToUpdate.Id, reserveToUpdate);
        }