public void GivenValidBookReviewDetails_WhenDeleteReviewCalled_ReturnToBookProfile()
        {
            using (var scope = Container.BeginLifetimeScope())
            {
                // Arrange
                _bookController = scope.Resolve <BooksController>();
                BookService bookService = scope.Resolve <BookService>();

                UserBookReview userBookReview = new UserBookReview();
                userBookReview.UserId      = 289;
                userBookReview.BookId      = 11;
                userBookReview.Rating      = 5;
                userBookReview.Description = "Great book!";

                _bookController.CreateBookReview(userBookReview);

                // Act
                var result = _bookController.DeleteBookReview(userBookReview) as RedirectToRouteResult;

                // Assert
                Assert.IsNotNull(result);
                var values = result.RouteValues.Values;

                Assert.IsTrue(values.Contains(11));
                Assert.IsTrue(values.Contains(controllerName));
                Assert.IsTrue(values.Contains("BookProfile"));
                Assert.IsNull(bookService.GetABookReview(289, 11)); // cleanup, assert it's been successful
            }
        }
Пример #2
0
        public bool AddBookReview(UserBookReview userBookReview)
        {
            if (UserHasCreatedReview(userBookReview.BookId, userBookReview.UserId))
            {
                return(false);
            }

            return(_reviewsRepository.Create(userBookReview));
        }
Пример #3
0
        public UserBookReview GetABookReview(int userId, int bookId)
        {
            var bookReviews = (from userReviews in _reviewsRepository.GetListOf()
                               where userReviews.BookId == bookId &&
                               userReviews.UserId == userId
                               select userReviews).ToList();

            UserBookReview bookReview = null;

            if (bookReviews.Count != 0)
            {
                bookReview = bookReviews[0];
            }

            return(bookReview);
        }
Пример #4
0
        public ActionResult DeleteBookReview(UserBookReview bookReview)
        {
            bool hasReviewBeenDeleted = _bookService.DeleteBookReview(bookReview);

            return(RedirectToAction("BookProfile", "Books", new { bookId = bookReview.BookId }));
        }
Пример #5
0
        public ActionResult UpdateBookReview(UserBookReview userBookReview)
        {
            _bookService.UpdateBookReview(userBookReview);

            return(RedirectToAction("BookProfile", "Books", new { bookId = userBookReview.BookId }));
        }
Пример #6
0
        public ActionResult CreateBookReview(UserBookReview userBookReview)
        {
            bool hasReviewBeenCreated = _bookService.AddBookReview(userBookReview);

            return(RedirectToAction("BookProfile", "Books", new { bookId = userBookReview.BookId }));
        }
Пример #7
0
 public bool DeleteBookReview(UserBookReview userBookReview)
 {
     return(_reviewsRepository.Delete(userBookReview));
 }
Пример #8
0
 public void UpdateBookReview(UserBookReview userBookReview)
 {
     _reviewsRepository.Update(userBookReview);
 }