Esempio n. 1
0
        public void Create_ThrowExceptionIfMonumentWithGivenIdDoNotExist()
        {
            var model = new MonumentReviewWriteViewModel {
                MonumentId = 1
            };
            Action testCode = () => this.monumentReviewsService.Create(model, "testUsername");

            testCode.ShouldThrow <MonumentNullException>();
        }
Esempio n. 2
0
        public IActionResult Write(MonumentReviewWriteViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(base.RedirectToAction("Write", new { monumentId = model.MonumentId }));
            }

            this.monumentReviewsService.Create(model, this.User.Identity.Name);
            return(base.RedirectToAction("Details", "Monuments", new { model.MonumentId }));
        }
Esempio n. 3
0
        public IActionResult Write(int monumentId)
        {
            if (this.monumentReviewsService.CheckForExistingReview(monumentId, this.User.Identity.Name))
            {
                string errorMsg = "You already write a review for this monument!";
                return(base.View(GlobalConstants.ErrorViewName, errorMsg));
            }

            string monumentName = this.monumentsService.GetNameById(monumentId);
            var    viewModel    = new MonumentReviewWriteViewModel {
                MonumentId = monumentId, MonumentName = monumentName
            };

            return(base.View(viewModel));
        }
        public void Create(MonumentReviewWriteViewModel model, string username)
        {
            if (!this.monumentsService.CheckExistById(model.MonumentId))
            {
                throw new MonumentNullException();
            }

            MonumentReview monumentReview = this.mapper.Map <MonumentReview>(model);

            MbUser user = this.usersService.GetByUsername(username);

            monumentReview.User = user;

            this.dbContext.MonumentReviews.Add(monumentReview);
            this.dbContext.SaveChanges();
        }
Esempio n. 5
0
        public void Create_ShouldCreateNewReviewCorrectly()
        {
            int monumentId = 1;

            this.dbContext.Monuments.Add(new Monument {
                Id = monumentId
            });
            this.dbContext.SaveChanges();

            Rating        rating        = Rating.Average;
            Season        timeOfYear    = Season.Autumn;
            TravellerType travellerType = TravellerType.Business;

            var model = new MonumentReviewWriteViewModel
            {
                MonumentId    = monumentId,
                Rating        = rating,
                TimeOfYear    = timeOfYear,
                TravellerType = travellerType,
            };

            string username = "******";

            this.dbContext.Users.Add(new MbUser {
                UserName = username
            });
            this.dbContext.SaveChanges();

            this.monumentReviewsService.Create(model, username);
            MonumentReview result = this.dbContext.MonumentReviews.First();

            result.ShouldSatisfyAllConditions
            (
                () => result.MonumentId.ShouldBe(monumentId),
                () => result.Rating.ShouldBe(rating),
                () => result.TimeOfYear.ShouldBe(timeOfYear),
                () => result.TravellerType.ShouldBe(travellerType),
                () => result.User.UserName.ShouldBe(username)
            );
        }