Esempio n. 1
0
        public async Task <bool> EditOfferAsync(OfferEditServiceModel model)
        {
            var offer = await this.context.Offers
                        .FirstOrDefaultAsync(x => x.Id == model.Id);

            if (offer == null)
            {
                throw new ArgumentNullException(OfferNotFoundMessage);
            }

            offer.ModifiedOn = DateTime.UtcNow;
            offer.OfferType  = model.OfferType == GlobalConstants.OfferTypeSaleName ? offer.OfferType = OfferType.Sale : OfferType.Rental;

            this.mapper.Map <OfferEditServiceModel, Offer>(model, offer);

            this.context.Update(offer);
            int chandedRows = await this.context.SaveChangesAsync();

            if (chandedRows == 0)
            {
                throw new InvalidOperationException(UnsuccessfullyUpdatedOfferMessage);
            }

            return(true);
        }
Esempio n. 2
0
        public void EditOfferIdShouldThrowExceptionIfNoSuchOffer()
        {
            string invalidId            = "completelyInvalidId";
            var    unexistingOfferModel = new OfferEditServiceModel
            {
                Id        = invalidId,
                Comments  = "Some comments",
                OfferType = "Sale",
            };


            var serviceInstance = new OfferServices(context,
                                                    imageServices.Object,
                                                    cloudinaryServices.Object,
                                                    userServices.Object,
                                                    referenceNumberGenerator.Object,
                                                    mapper
                                                    );

            Assert.ThrowsAsync <ArgumentNullException>(() => serviceInstance.EditOfferAsync(unexistingOfferModel), ArgumentNullExceptonMessage);
        }