public async Task ReplaceTravelAsync([NotNull] string travelId, [NotNull] TravelUpdateRequestDto dto) { var travel = await FindTravelAsync(travelId); var mapped = mapper.Map(dto, travel); mapped.UpdateDate = DateTime.UtcNow; if (mapped.TotalArmchair < travel.CurrentArmchair) { throw new Exception("TotalArmchair"); } await travelRepository.ReplaceAsync(travel); }
public async Task UpdateTravelAsync_Return_NoContent_Result(Mock <ITravelService> travelService) { var sut = new TravelController(travelService.Object); sut.ControllerContext = new ControllerContext { HttpContext = new DefaultHttpContext() }; TravelUpdateRequestDto dto = new TravelUpdateRequestDto(); travelService.Setup(setup => setup.ReplaceTravelAsync(travelId, dto)); // Act var result = sut.UpdateTravelAsync(travelId, dto); // Assert Assert.IsType <NoContentResult>(result.Result); Assert.IsNotType <OkObjectResult>(result.Result); Assert.IsNotType <CreatedAtActionResult>(result.Result); Assert.IsNotType <BadRequestObjectResult>(result.Result); Assert.IsNotType <AcceptedAtActionResult>(result.Result); }
public async Task <IActionResult> UpdateTravelAsync(string travelId, [FromBody] TravelUpdateRequestDto model) { await travelService.ReplaceTravelAsync(travelId, model); return(NoContent()); }