Exemple #1
0
        public void GetCar_ById()
        {
            //ARRANGE
            var options = new DbContextOptionsBuilder <FleetManagmentContext>()
                          .UseInMemoryDatabase(databaseName: MethodBase.GetCurrentMethod().Name)
                          .Options;

            using var context = new FleetManagmentContext(options);

            ICarRepository carRepository = new CarRepository(context);
            CarTO          car           = new CarTO
            {
                Numberplate = "1-NVR-803",
            };

            CarTO car2 = new CarTO
            {
                Numberplate = "1-DQE-297",
            };

            //ACT
            var addedCar  = carRepository.Insert(car);
            var addedCar2 = carRepository.Insert(car2);

            context.SaveChanges();

            //ASSERT
            Assert.IsNotNull(addedCar);
            Assert.AreNotEqual(0, addedCar.Id);
            Assert.AreEqual("1-NVR-803", addedCar.Numberplate);
            Assert.AreEqual(1, carRepository.GetByID(1).Id);
        }
Exemple #2
0
        public void UpdapteCar_With_Correct_Parameter()
        {
            //ARRANGE
            var options = new DbContextOptionsBuilder<FleetManagmentContext>()
                .UseInMemoryDatabase(databaseName: MethodBase.GetCurrentMethod().Name)
                .Options;

            using var context = new FleetManagmentContext(options);

            ICarRepository carRepository = new CarRepository(context);

            CarTO car = new CarTO { Numberplate = "1-HRV-803" };

            //ACT
            var addedCar = carRepository.Insert(car);
            context.SaveChanges();

            addedCar.Numberplate = "Mans";
            carRepository.Update(addedCar);
            context.SaveChanges();

            //ASSERT
            Assert.IsNotNull(addedCar);
            Assert.AreNotEqual(0, addedCar.Id);
            Assert.AreEqual("Mans", addedCar.Numberplate);
        }
 public CarTO Insert(CarTO entity)
 {
     if (entity is null)
     {
         throw new ArgumentNullException(nameof(entity));
     }
     return(context.Cars.Add(entity.ToEntity()).Entity.ToTransfertObject());
 }
Exemple #4
0
        public void DeleteCar_With_CarTO_Parameter()
        {
            //ARRANGE
            var options = new DbContextOptionsBuilder <FleetManagmentContext>()
                          .UseInMemoryDatabase(databaseName: MethodBase.GetCurrentMethod().Name)
                          .Options;

            using var context = new FleetManagmentContext(options);

            ICarRepository carRepository = new CarRepository(context);

            CarTO car = new CarTO
            {
                Numberplate = "1-NVR-803",
            };

            CarTO car2 = new CarTO
            {
                Numberplate = "1-DQE-297",
            };

            var addedCar  = carRepository.Insert(car);
            var addedCar2 = carRepository.Insert(car2);

            context.SaveChanges();

            //List<CarTO> cars = new List<CarTO>();
            var cars = carRepository.GetAll().ToList();

            //ACT
            carRepository.Remove(addedCar);
            context.SaveChanges();
            cars = carRepository.GetAll().ToList();

            //ASSERT
            Assert.IsNotNull(addedCar);
            Assert.IsNotNull(addedCar2);
            Assert.AreNotEqual(0, addedCar.Id);
            Assert.AreNotEqual(0, addedCar2.Id);
            Assert.AreEqual("1-NVR-803", addedCar.Numberplate);
            Assert.AreEqual("1-DQE-297", addedCar2.Numberplate);
            Assert.AreEqual(1, cars.Count);
        }
        public CarTO Update(CarTO entity)
        {
            if (entity is null)
            {
                throw new ArgumentException(nameof(entity));
            }
            var updated = context.Cars.FirstOrDefault(x => x.Id == entity.Id);

            updated.Brand           = entity.Brand?.ToEntity();
            updated.Chassis         = entity.Chassis;
            updated.EndDateContract = entity.EndDateContract;
            updated.Insurances      = entity.Insurances?.Select(x => x.ToEntity()).ToList();
            updated.Km                = entity.Km;
            updated.Numberplate       = entity.Numberplate;
            updated.StartDateContract = entity.StartDateContract;
            updated.TechnicalControls = entity.Technicalcontrols?.Select(x => x.ToEntity()).ToList();
            updated.VehicleStatus     = entity.VehicleStatus;
            updated.Year              = entity.Year;

            return(updated.ToTransfertObject());
        }
Exemple #6
0
        public static Car ToEntity(this CarTO car)
        {
            if (car is null)
            {
                throw new ArgumentNullException(nameof(car));
            }

            return(new Car
            {
                Id = car.Id,
                Chassis = car.Chassis,
                EndDateContract = car.EndDateContract,
                Brand = car.Brand?.ToEntity(),
                Km = car.Km,
                Numberplate = car.Numberplate,
                StartDateContract = car.StartDateContract,
                Year = car.Year,
                VehicleStatus = car.VehicleStatus,
                TechnicalControls = car.Technicalcontrols?.Select(c => c.ToEntity()).ToList(),
                Insurances = car.Insurances?.Select(c => c.ToEntity()).ToList(),
            });
        }
 public bool Remove(CarTO entity)
 {
     return(RemoveById(entity.Id));
 }