Exemplo n.º 1
0
        public async Task UpdateBookById_InternalServerError()
        {
            //Arrange
            var request = new UpdateNewBookRequest()
            {
                UpdateBookDetail = new BookDto()
                {
                    pkBookId   = 122,
                    BookName   = "C++",
                    BookAuthor = "Radha",
                    BookType   = "1"
                }
            };

            _libraryManager.When
                (x => x.UpdateBookByBookId(Arg.Any <UpdateNewBookRequest>())).Do(x => { throw new Exception(); });
            //Act
            var result = (ObjectResult)await _libraryController.UpdateBookById(request).ConfigureAwait(false);


            //Assert
            result.Should().NotBeNull("Must contain a result");
            var response = result.Value as ErrorServiceResponse;

            response.Errors.Should().NotBeEmpty();
            response.Errors.Any(x => x.Code.Equals(ApiErrorCodes.InternalServiceError))
            .Should().BeTrue();
        }
Exemplo n.º 2
0
        public async Task UpdateBookById_OK()
        {
            //Arrange
            var request = new UpdateNewBookRequest()
            {
                UpdateBookDetail = new BookDto()
                {
                    pkBookId   = 122,
                    BookName   = "C++",
                    BookAuthor = "Radha",
                    BookType   = "1"
                }
            };
            var AddBooks = new BookDomain()
            {
                BookId     = 123,
                BookName   = "C++",
                BookAuthor = "Radha",
                BookType   = "1"
            };

            _libraryManager.UpdateBookByBookId(Arg.Any <UpdateNewBookRequest>()).Returns(AddBooks);

            //Act

            var result = (ObjectResult)await _libraryController.UpdateBookById(request).ConfigureAwait(false);

            //Assert
            result.Should().NotBeNull("Must contain a result");
            result.Value.Equals(AddBooks);
        }
Exemplo n.º 3
0
        public async Task <IActionResult> UpdateBookById([FromBody] UpdateNewBookRequest updateNewBook)
        {
            var msg = CreateResponse(HttpStatusCode.InternalServerError, ApiErrorProvider.GetErrorResponse(ApiErrorCodes.InternalServiceError));

            if (!ModelState.IsValid)
            {
                msg = CreateResponse(HttpStatusCode.BadRequest, ApiErrorProvider.GetErrorResponse(ModelState));
            }

            try
            {
                BookDomain bookInfo = await _libraryManager.UpdateBookByBookId(updateNewBook).ConfigureAwait(false);

                if (bookInfo == null)
                {
                    return(CreateResponse(HttpStatusCode.NotFound,
                                          ApiErrorProvider.GetErrorResponse(ApiErrorCodes.BookIdRequestIsInvalid)));
                }

                msg = CreateResponse(HttpStatusCode.OK, bookInfo);
            }

            catch (UserIdNotValidException ex)
            {
                msg = CreateResponse(HttpStatusCode.NotFound, ApiErrorProvider.GetErrorResponse(ApiErrorCodes.UserIdNotPresent));
            }
            catch (Exception ex)
            {
                msg = CreateResponse(HttpStatusCode.InternalServerError, ApiErrorProvider.GetErrorResponse(ApiErrorCodes.InternalServiceError));
            }

            return(msg);
        }
        public async Task UpdateBookByBookIdManagerTests_OK()
        {
            //Arrange
            var request = new UpdateNewBookRequest()
            {
                UpdateBookDetail = new BookDto()
                {
                    pkBookId   = 111,
                    BookName   = "Test",
                    BookType   = "1",
                    BookAuthor = "Rahul"
                }
            };
            BookDomain ValidCarts = new BookDomain
            {
                BookId     = 101,
                BookName   = "Test",
                BookType   = "1",
                BookAuthor = "Rahul"
            };

            _libraryRepository.UpdateBookById(Arg.Any <BookDomain>()).Returns(ValidCarts);

            // Act
            var result = await _libraryManager.UpdateBookByBookId(request).ConfigureAwait(false);

            // Assert
            result.Should().NotBeNull("Must contain a result");
            result.BookId.Should().Be(ValidCarts.BookId);
            result.BookName.Should().Be(ValidCarts.BookName);
        }
Exemplo n.º 5
0
        public async Task <BookDomain> UpdateBookByBookId(UpdateNewBookRequest updateNewBook)
        {
            BookDomain book       = DtoDomainMapper.MapDtoToDomainToUpdateBook(updateNewBook);
            var        UpdateBook = await _libraryRepository.UpdateBookById(book).ConfigureAwait(false);

            return(UpdateBook);
        }
        public async Task UpdateBookByBookIdManagerTests_InvalidData()
        {
            //Arrange
            var request = new UpdateNewBookRequest()
            {
                UpdateBookDetail = new BookDto()
                {
                }
            };
            BookDomain ValidCarts = new BookDomain {
            };

            _libraryRepository.UpdateBookById(Arg.Any <BookDomain>()).Returns(ValidCarts);

            // Act
            var result = await _libraryManager.UpdateBookByBookId(request).ConfigureAwait(false);

            // Assert
            result.Should().NotBeNull("Must contain a result");
        }
Exemplo n.º 7
0
        public async Task UpdateBookById_NotFound()
        {
            //Arrange
            var request = new UpdateNewBookRequest()
            {
                UpdateBookDetail = new BookDto()
                {
                    pkBookId   = 122,
                    BookName   = "C++",
                    BookAuthor = "Radha",
                    BookType   = "1"
                }
            };

            //Act
            var result = (ObjectResult)await _libraryController.UpdateBookById(request).ConfigureAwait(false);

            //Assert
            result.Should().NotBeNull("Must contain a result");
            var response = result.Value as ErrorServiceResponse;

            response.Errors.Any(x => x.Code.Equals(ApiErrorCodes.BookIdRequestIsInvalid))
            .Should().BeTrue();
        }
Exemplo n.º 8
0
 public static BookDomain MapDtoToDomainToUpdateBook(UpdateNewBookRequest updateNewBook)
 {
     return(mapper.Map <BookDomain>(updateNewBook.UpdateBookDetail));
 }