コード例 #1
0
        public void GivenAnEditAction_ThenRendersTheDefaultView()
        {
            var vacationProperty = new VacationProperty();
            var mockRepository = new Mock<IVacationPropertiesRepository>();
            mockRepository.Setup(r => r.FindAsync(It.IsAny<int>())).ReturnsAsync(vacationProperty);

            var controller = new VacationPropertiesController(mockRepository.Object);
            controller.WithCallTo(c => c.Edit(1))
                .ShouldRenderDefaultView()
                .WithModel(vacationProperty);
        }
コード例 #2
0
 public void GivenACreateAction_ThenRendersTheDefaultView()
 {
     var vacationProperty = new VacationProperty {User = new ApplicationUser()};
     var mockVacationsRepository = new Mock<IVacationPropertiesRepository>();
     mockVacationsRepository.Setup(r => r.FindAsync(It.IsAny<int>())).ReturnsAsync(vacationProperty);
     var stubReservationsRepository = Mock.Of<IReservationsRepository>();
     var stubUsersRepository = Mock.Of<IUsersRepository>();
     var stubNotifier = Mock.Of<INotifier>();
     var controller = new ReservationsController(
         mockVacationsRepository.Object, stubReservationsRepository, stubUsersRepository, stubNotifier);
     controller.WithCallTo(c => c.Create(1))
         .ShouldRenderDefaultView();
 }
コード例 #3
0
        public async Task<ActionResult> Create(VacationPropertyViewModel model)
        {
            if (ModelState.IsValid)
            {
                var vacationProperty = new VacationProperty
                {
                    UserId = UserId(),
                    Description = model.Description,
                    ImageUrl = model.ImageUrl,
                    CreatedAt = DateTime.Now
                };

                await _repository.CreateAsync(vacationProperty);

                return RedirectToAction("Index");
            }

            return View();
        }
コード例 #4
0
 public async Task <int> DeleteVacationPropertyAsync(VacationProperty vacationProperty)
 {
     _context.VacationProperties.Remove(vacationProperty);
     return(await _context.SaveChangesAsync());
 }
コード例 #5
0
 public async Task <int> UpdateVacationPropertyAsync(VacationProperty vacationProperty)
 {
     _context.Add(vacationProperty);
     return(await _context.SaveChangesAsync());
 }
コード例 #6
0
        public void GivenAnEditAction_WhenTheModelStateIsValid_ThenItRedirectsToIndex()
        {
            var model = new VacationPropertyViewModel();
            var vacationProperty = new VacationProperty();

            var mockRepository = new Mock<IVacationPropertiesRepository>();
            mockRepository.Setup(r => r.FindAsync(It.IsAny<int>())).ReturnsAsync(vacationProperty);
            mockRepository.Setup(r => r.UpdateAsync(It.IsAny<VacationProperty>())).ReturnsAsync(1);

            var controller = new VacationPropertiesController(mockRepository.Object);

            controller.WithCallTo(c => c.Edit(model))
                .ShouldRedirectTo(c => c.Index());

            mockRepository.Verify(r => r.UpdateAsync(It.IsAny<VacationProperty>()), Times.Once);
        }