public void TestAddCar() { int sizeBeforeAddCar = _vehicle.GetAllVehicles().Count; _vehicle.AddNewVehicle(new Car("car", "BMW", "3S", "v6", 4, 4, "Sedan")); int sizeAfterAddCar = _vehicle.GetAllVehicles().Count; Assert.Equal(sizeBeforeAddCar + 1, sizeAfterAddCar); }
public IActionResult Post([FromBody] JsonElement vehicle) { //Deserialize JSON object and extract car details string vehicleType = vehicle.GetProperty("type").ToString(); string vehicleMake = vehicle.GetProperty("make").ToString(); string vehicleModel = vehicle.GetProperty("model").ToString(); string engine = vehicle.GetProperty("engine").ToString(); int numOfDoors = int.Parse(vehicle.GetProperty("numOfDoors").ToString()); int numOfWheels = int.Parse(vehicle.GetProperty("numOfWheels").ToString()); string bodyType = vehicle.GetProperty("bodyType").ToString(); if (vehicleType.Equals(Constants.CAR)) { Vehicle v; v = new Car(vehicleType, vehicleMake, vehicleModel, engine, numOfDoors, numOfWheels, bodyType); //get the add vehicle service and store the data _vehicle.AddNewVehicle(v); } else { return(BadRequest("Invalid type")); } return(Ok()); }
public ActionResult AddNewVehicle(AddVehicleViewModel model) { ValidationViewModel validationModel; if (ModelState.IsValid) { var vehicle = Mapper.Map <Vehicle>(model); vehicle.VehicleType = (VehicleType)Enum.Parse(typeof(VehicleType), model.VehicleType); if (vehicle.Box_Id != null) { vehicle.VehicleStatus = VehicleStatus.Active; } _vehicleService.AddNewVehicle(vehicle); validationModel = new ValidationViewModel(new List <string>(), "Ok"); return(Json(validationModel, JsonRequestBehavior.AllowGet)); } var errors = (from modelStateValue in ModelState.Values from error in modelStateValue.Errors select error.ErrorMessage).ToList(); validationModel = new ValidationViewModel(errors, "Validation errors"); return(Json(validationModel, JsonRequestBehavior.AllowGet)); }
public async Task <IActionResult> Post([FromBody] VehicleRequestModel vehicleRequest) { var vehicleDto = _mapper.Map <VehicleDto>(vehicleRequest); var addedVehicleDto = await _service.AddNewVehicle(vehicleDto); var responseModel = _mapper.Map <VehicleResponseModel>(addedVehicleDto); return(CreatedAtAction(nameof(GetById), new { id = responseModel.Id }, responseModel)); }