public ActionResult <CarOutputModel> AddCar([FromBody] CarInputModel car) { var result = _carManager.AddCar(car); return(new ObjectResult(result) { StatusCode = StatusCodes.Status201Created }); }
public void AddCar_Must_Add_Car_To_User() { //Arrange var userId = "1"; var user = new ApplicationUser { Id = userId, UserProfile = new UserProfile { Cars = new List <UserCar>() } }; var dto = new AddOrEditUserCarDto { Name = "Test", ModelId = 1, Year = 2015, Vin = "0123456789ABCDEFG", FuelType = FuelType.Diesel, EngineCapacity = 2.0f }; var validationResult = new ValidationResult("test"); _userManagerMock.Setup(act => act.IsUserInRegularRole(userId)); _userManagerMock.Setup(act => act.CheckAndGet(userId)).Returns(user); _validationManagerMock.Setup(act => act.ValidateUserCarDto(dto)).Returns(validationResult); var repository = new Mock <ICarModelsRepository>(); repository.Setup(act => act.Get(dto.ModelId.Value)).Returns(new CarModel()); _unitOfWorkMock.Setup(act => act.Repository <ICarModelsRepository>()).Returns(repository.Object); //Act Assert.DoesNotThrow(() => _manager.AddCar(dto, userId)); //Assert _validationManagerMock.Verify(act => act.ValidateUserCarDto(dto), Times.Once); repository.Verify(act => act.Get(dto.ModelId.Value), Times.Once); _unitOfWorkMock.Verify(act => act.Repository <ICarModelsRepository>(), Times.Once); _unitOfWorkMock.Verify(act => act.SaveChanges(), Times.Once); }
public IHttpActionResult AddCar(AddOrEditUserCarDto dto) { return(CallBusinessLogicAction(() => _manager.AddCar(dto, User.Identity.GetUserId()))); }