Пример #1
0
        public void NotPostWithInvalidObject_ReturnBadRequest()
        {
            _controller.ModelState.AddModelError("", "");

            var result = _controller.Post(new RentalBO());

            Assert.IsType <BadRequestObjectResult>(result);
        }
Пример #2
0
        public async Task Post_WhenCreateARental_ShouldReturnsTheRentalCreated()
        {
            //Arrenge
            _serviceMock.Setup(s => s.AddNewRental(It.IsAny <RentalDto>()))
            .ReturnsAsync(new RentalDto
            {
                Id        = 1,
                ClientId  = 1,
                StartDate = new DateTime(2021, 04, 1),
                EndDate   = new DateTime(2021, 04, 10)
            });

            var newRentalRequest = new RentalRequestModel
            {
                ClientId  = 1,
                StartDate = new DateTime(2021, 04, 1),
                EndDate   = new DateTime(2021, 04, 10)
            };

            //Act
            var result = await _sut.Post(newRentalRequest);

            //Assert
            result.Should().BeOfType(typeof(CreatedAtActionResult));
            var value = result.As <ObjectResult>().Value.As <RentalResponseModel>();

            value.Id.Should().Be(1);
            value.ClientId.Should().Be(1);
            value.StartDate.Should().Be(new DateTime(2021, 04, 1));
            value.EndDate.Should().Be(new DateTime(2021, 04, 10));

            _serviceMock.Verify(s => s.AddNewRental(It.Is <RentalDto>(r => r.ClientId == 1 &&
                                                                      r.StartDate == new DateTime(2021, 04, 1) &&
                                                                      r.EndDate == new DateTime(2021, 04, 10)
                                                                      )), Times.Once);
        }