Beispiel #1
0
        public void CanDeleteVehicle()
        {
            Vehicle vehicleToAdd = new Vehicle();
            var     repo         = new VehicleRepositoryADO();

            vehicleToAdd.Year        = 2018;
            vehicleToAdd.Mileage     = 0;
            vehicleToAdd.MSRP        = 50011;
            vehicleToAdd.SalesPrice  = 49875;
            vehicleToAdd.Description = "The meanest on the streets!";
            vehicleToAdd.Picture     = "placeholder.png";
            vehicleToAdd.Featured    = true;
            vehicleToAdd.VIN         = "KMHHT6KD1CU079023";
            //vehicleToAdd.MakeID = 2;
            vehicleToAdd.BodyID         = 5;
            vehicleToAdd.ModelID        = 3;
            vehicleToAdd.ColorID        = 2;
            vehicleToAdd.TypeID         = 1;
            vehicleToAdd.TransmissionID = 1;
            vehicleToAdd.InteriorID     = 3;
            vehicleToAdd.UserID         = "00000000-1111-1111-0000-000000000000";

            repo.Insert(vehicleToAdd);

            var loaded = repo.GetByID(9);

            Assert.IsNotNull(loaded);

            repo.Delete(9);

            loaded = repo.GetByID(9);
            Assert.IsNull(loaded);
        }
Beispiel #2
0
        public ActionResult EditVehicle(int id)
        {
            var model            = new EditVehicleViewModel();
            var makeRepo         = new MakeRepositoryADO();
            var modelRepo        = new ModelRepositoryADO();
            var typeRepo         = new TypeRepositoryADO();
            var bodystyleRepo    = new BodyStyleRepositoryADO();
            var transmissionRepo = new TransmissionRepositoryADO();
            var colorRepo        = new ColorRepositoryADO();
            var interiorRepo     = new InteriorRepositoryADO();

            var vehicleRepo = new VehicleRepositoryADO();

            model.Makes         = new SelectList(makeRepo.GetAll(), "MakeID", "MakeName");
            model.Models        = new SelectList(modelRepo.GetAll(), "ModelID", "ModelName");
            model.Types         = new SelectList(modelRepo.GetAll(), "TypeID", "TypeName");
            model.BodyStyles    = new SelectList(modelRepo.GetAll(), "BodyID", "BodyStyleName");
            model.Transmissions = new SelectList(modelRepo.GetAll(), "TransmissionID", "TransmissionType");
            model.Colors        = new SelectList(modelRepo.GetAll(), "ColorID", "ColorName");
            model.Interiors     = new SelectList(modelRepo.GetAll(), "InteriorID", "InteriorColor");

            model.Vehicle = vehicleRepo.GetByID(id);

            return(View(model));
        }
Beispiel #3
0
        public void NoVehicleReturnsNull()
        {
            var repo = new VehicleRepositoryADO();

            var vehicle = repo.GetByID(1000000000);

            Assert.IsNull(vehicle);
        }
Beispiel #4
0
        public void CanGetSingleVehicle()
        {
            var repo    = new VehicleRepositoryADO();
            var vehicle = repo.GetByID(1);

            //(VehicleID, Year, Mileage, MSRP, UserID, SalesPrice, [Description], Picture, Featured, VIN, ModelID, ColorID, TypeID, TransmissionID, InteriorID)
            //(1, 2017, 0, 55450, '00000000-1111-1111-0000-000000000000', 52980, 'Great car, makes you feel alive!', null, 1, 'WBAVL1C50EVR93551', 1, 3, 1, 1, 2), --corvette

            Assert.AreEqual(1, vehicle.VehicleID);
            Assert.AreEqual(2017, vehicle.Year);
            Assert.AreEqual(0, vehicle.Mileage);
            Assert.AreEqual(55450, vehicle.MSRP);
            Assert.AreEqual("00000000-1111-1111-0000-000000000000", vehicle.UserID);
            Assert.AreEqual(52980, vehicle.SalesPrice);
            Assert.AreEqual("Great car, makes you feel alive!", vehicle.Description);
            Assert.AreEqual("placeholder.png", vehicle.Picture);
            Assert.AreEqual(true, vehicle.Featured);
            Assert.AreEqual("WBAVL1C50EVR93551", vehicle.VIN);
            Assert.AreEqual(1, vehicle.ModelID);
            Assert.AreEqual(3, vehicle.ColorID);
            Assert.AreEqual(1, vehicle.TypeID);
            Assert.AreEqual(1, vehicle.TransmissionID);
            Assert.AreEqual(2, vehicle.InteriorID);
        }
Beispiel #5
0
        public void CanEditVehicle()
        {
            Vehicle vehicleToAdd = new Vehicle();
            var     repo         = new VehicleRepositoryADO();

            vehicleToAdd.Year        = 2018;
            vehicleToAdd.Mileage     = 0;
            vehicleToAdd.MSRP        = 50011;
            vehicleToAdd.SalesPrice  = 49875;
            vehicleToAdd.Description = "The meanest on the streets!";
            vehicleToAdd.Picture     = "placeholder.png";
            vehicleToAdd.Featured    = true;
            vehicleToAdd.VIN         = "KMHHT6KD1CU079023";
            //vehicleToAdd.MakeID = 2;
            vehicleToAdd.BodyID         = 5;
            vehicleToAdd.ModelID        = 3;
            vehicleToAdd.ColorID        = 2;
            vehicleToAdd.TypeID         = 1;
            vehicleToAdd.TransmissionID = 1;
            vehicleToAdd.InteriorID     = 3;
            vehicleToAdd.UserID         = "00000000-1111-1111-0000-000000000000";

            repo.Insert(vehicleToAdd);

            vehicleToAdd.Year        = 2010;
            vehicleToAdd.Mileage     = 30000;
            vehicleToAdd.MSRP        = 12654;
            vehicleToAdd.SalesPrice  = 11632;
            vehicleToAdd.Description = "Baddest on the streets!";
            vehicleToAdd.Picture     = "placeholder.png";
            vehicleToAdd.Featured    = false;
            vehicleToAdd.VIN         = "KMHHR6K21CU0A9023";
            //vehicleToAdd.MakeID = 2;
            vehicleToAdd.BodyID         = 3;
            vehicleToAdd.ModelID        = 2;
            vehicleToAdd.ColorID        = 1;
            vehicleToAdd.TypeID         = 2;
            vehicleToAdd.TransmissionID = 2;
            vehicleToAdd.InteriorID     = 1;
            vehicleToAdd.UserID         = "00000000-1111-1111-0000-000000000000";

            repo.Update(vehicleToAdd);

            var updatedVehicle = repo.GetByID(9);

            Assert.AreEqual(2010, vehicleToAdd.Year);
            Assert.AreEqual(30000, vehicleToAdd.Mileage);
            Assert.AreEqual(12654, vehicleToAdd.MSRP);
            Assert.AreEqual(11632, vehicleToAdd.SalesPrice);
            Assert.AreEqual("Baddest on the streets!", vehicleToAdd.Description);
            Assert.AreEqual("placeholder.png", vehicleToAdd.Picture);
            Assert.AreEqual(false, vehicleToAdd.Featured);
            Assert.AreEqual("KMHHR6K21CU0A9023", vehicleToAdd.VIN);
            Assert.AreEqual(3, vehicleToAdd.BodyID);
            Assert.AreEqual(2, vehicleToAdd.ModelID);
            Assert.AreEqual(1, vehicleToAdd.ColorID);
            Assert.AreEqual(2, vehicleToAdd.TypeID);
            Assert.AreEqual(2, vehicleToAdd.TransmissionID);
            Assert.AreEqual(1, vehicleToAdd.InteriorID);
            Assert.AreEqual("00000000-1111-1111-0000-000000000000", vehicleToAdd.UserID);
        }
Beispiel #6
0
        public ActionResult EditVehicle(EditVehicleViewModel model)
        {
            if (ModelState.IsValid)
            {
                var repo = new VehicleRepositoryADO();

                try
                {
                    var oldVehicleInfo = repo.GetByID(model.Vehicle.VehicleID);
                    if (model.PictureUpload != null && model.PictureUpload.ContentLength > 0)
                    {
                        var savePath = Server.MapPath("~/Images");

                        string fileName  = Path.GetFileNameWithoutExtension(model.PictureUpload.FileName);
                        string extension = Path.GetExtension(model.PictureUpload.FileName);

                        var filePath = Path.Combine(savePath, fileName + extension);

                        int counter = 1;
                        while (System.IO.File.Exists(filePath))
                        {
                            filePath = Path.Combine(savePath, fileName + counter.ToString() + extension);
                            counter++;
                        }

                        model.PictureUpload.SaveAs(filePath);
                        model.Vehicle.Picture = Path.GetFileName(filePath);

                        var oldPath = Path.Combine(savePath, fileName + counter.ToString() + extension);
                        if (System.IO.File.Exists(oldPath))
                        {
                            System.IO.File.Delete(oldPath);
                        }
                    }
                    else
                    {
                        model.Vehicle.Picture = oldVehicleInfo.Picture;
                    }

                    repo.Update(model.Vehicle);

                    return(RedirectToAction("EditVehicle", "Admin", new { id = model.Vehicle.VehicleID }));
                }
                catch (Exception ex)
                {
                    throw ex;
                }
            }
            else
            {
                var vehicleModel     = new AddVehicleViewModel();
                var makeRepo         = new MakeRepositoryADO();
                var modelRepo        = new ModelRepositoryADO();
                var typeRepo         = new TypeRepositoryADO();
                var bodystyleRepo    = new BodyStyleRepositoryADO();
                var transmissionRepo = new TransmissionRepositoryADO();
                var colorRepo        = new ColorRepositoryADO();
                var interiorRepo     = new InteriorRepositoryADO();

                vehicleModel.Makes         = new SelectList(makeRepo.GetAll(), "MakeID", "MakeName");
                vehicleModel.Models        = new SelectList(modelRepo.GetAll(), "ModelID", "ModelName");
                vehicleModel.Types         = new SelectList(modelRepo.GetAll(), "TypeID", "TypeName");
                vehicleModel.BodyStyles    = new SelectList(modelRepo.GetAll(), "BodyID", "BodyStyleName");
                vehicleModel.Transmissions = new SelectList(modelRepo.GetAll(), "TransmissionID", "TransmissionType");
                vehicleModel.Colors        = new SelectList(modelRepo.GetAll(), "ColorID", "ColorName");
                vehicleModel.Interiors     = new SelectList(modelRepo.GetAll(), "InteriorID", "InteriorColor");

                return(View(vehicleModel));
            }
        }