public void UpdateVehicleMake_ShouldReturnNewVehicleYear() { using (var context = new VehicleContext()) { //Arrange VehicleCRUDService vs = new VehicleCRUDService(context); var newYear = 2019; var vehicle = vs.CreateVehicle(new Vehicle { Make = "Audi", Model = "Etron", Year = 2020 }); context.SaveChanges(); //Act var stored = context.Vehicles.Where(v => v.Id == vehicle.Id).FirstOrDefault(); stored.Year = newYear; var updated = vs.UpdateVehicle(stored); //Assert Assert.AreEqual(newYear, updated.Year); } }
public void DeleteVehicle_ShouldReturnNullWhenFindVehicle() { using (var context = new VehicleContext()) { //Arrange VehicleCRUDService vs = new VehicleCRUDService(context); var vehicle = vs.CreateVehicle(new Vehicle { Make = "BMW", Model = "X7", Year = 1999 }); context.SaveChanges(); //Act var delete = vs.DeleteVehicle(vehicle.Id); context.SaveChanges(); var found = context.Vehicles.Where(v => v.Id == delete.Id).FirstOrDefault(); //Assert Assert.IsNull(found); } }
public void GetVehicleWithParams_ShouldReturnCorrectVehicle() { using (var context = new VehicleContext()) { //Arrange VehicleCRUDService vs = new VehicleCRUDService(context); var vehicle = vs.CreateVehicle(new Vehicle { Make = "Kia", Model = "Morning", Year = 2019 }); context.SaveChanges(); //Act var found = vs.GetVehiclesWithParams("Kia", "Morning", 2019).FirstOrDefault(); //Assert bool check = false; if (found.Make.Equals("Kia") && found.Model.Equals("Morning") && found.Year == 2019) { check = true; } Assert.IsTrue(check); } }
public IHttpActionResult GetVehicles([FromUri] FilterModel filter) { using (var dbcontext = new VehicleContext()) { var vehicleService = new VehicleCRUDService(dbcontext); try { var vehicleList = new List <Vehicle>(); // Return all vehicles for null filter if (filter == null) { vehicleList = vehicleService.GetAllVehicles().ToList(); } // Or return vehicles that match params else { // Will do waterfall matching from Make --> Model --> Year ---> result vehicleList = vehicleService.GetVehiclesWithParams(filter.Make, filter.Model, filter.Year).ToList(); } return(Content(HttpStatusCode.OK, vehicleList)); } catch (Exception) { return(Content(HttpStatusCode.InternalServerError, "Oops! Something when wrong on our end")); } } }
public IHttpActionResult CreateVehicle([FromBody] Vehicle vehicle) { using (var dbcontext = new VehicleContext()) { var vehicleService = new VehicleCRUDService(dbcontext); try { var v = vehicleService.ExistingVehicle(vehicle); if (v == true) { return(Content(HttpStatusCode.Conflict, "Vehicle already exists")); } else { var vehicleHelper = new VehicleHelperService(); bool validation = vehicleHelper.VehicleDataValidator(vehicle); if (validation == false) { return(Content(HttpStatusCode.Forbidden, vehicleHelper.errorMsg)); } else { var newVehicle = vehicleService.CreateVehicle(vehicle); dbcontext.SaveChanges(); return(Content(HttpStatusCode.OK, newVehicle)); } } } catch (Exception) { return(Content(HttpStatusCode.BadRequest, "Something wrong with internal server ")); } } }
public IHttpActionResult UpdateVehicle(Vehicle vehicle) { using (var dbcontext = new VehicleContext()) { var vehicleService = new VehicleCRUDService(dbcontext); try { var v = vehicleService.UpdateVehicle(vehicle); dbcontext.SaveChanges(); return(Content(HttpStatusCode.OK, v)); } catch (Exception) { return(Content(HttpStatusCode.InternalServerError, "Oops, something is wrong when updating the vehicle")); } } }
public void CreateVehicle_ShouldReturnNotNull() { //Arrange VehicleContext context = new VehicleContext(); VehicleCRUDService vs = new VehicleCRUDService(context); Vehicle vehicle = null; //Act vehicle = vs.CreateVehicle(new Vehicle { Make = "Toyota", Model = "Prius", Year = 2019 }); context.SaveChanges(); //Assert Assert.IsNotNull(vehicle); }
public void GetAllVehicle_ShouldReturnListOfVehicle() { //Arrange using (var context = new VehicleContext()) { VehicleCRUDService vs = new VehicleCRUDService(context); var vehicle = vs.CreateVehicle(new Vehicle { Make = "BMW", Model = "X7", Year = 1999 }); var vehicle2 = vs.CreateVehicle(new Vehicle { Make = "Adui", Model = "A3", Year = 2020 }); var vehicle3 = vs.CreateVehicle(new Vehicle { Make = "Merc", Model = "E", Year = 2018 }); //Act var list = vs.GetAllVehicles(); //Assert Assert.IsNotNull(list); } }
public IHttpActionResult GetVehicle(int id) { using (var dbcontext = new VehicleContext()) { var vehicleService = new VehicleCRUDService(dbcontext); try { var vehicle = vehicleService.GetVehicle(id); if (vehicle != null) { return(Content(HttpStatusCode.OK, vehicle)); } else { return(Content(HttpStatusCode.NotFound, "Vehicle could not be found")); } } catch (Exception) { return(Content(HttpStatusCode.InternalServerError, "Oops! Something when wrong on our end")); } } }
public IHttpActionResult DeleteVehicle(int id) { using (var dbcontext = new VehicleContext()) { var vehicleService = new VehicleCRUDService(dbcontext); try { var vehicle = vehicleService.DeleteVehicle(id); if (vehicle != null) { dbcontext.SaveChanges(); return(Content(HttpStatusCode.OK, vehicle)); } else { return(Content(HttpStatusCode.NotFound, "Vehicle does not exist")); } } catch (Exception) { return(Content(HttpStatusCode.InternalServerError, "Something wrong with internal server")); } } }