Ejemplo n.º 1
0
 public Car AddCar(Car car, string username)
 {
     if (car == null)
     {
         throw new ArgumentNullException();
     }
     if (string.IsNullOrWhiteSpace(username))
     {
         throw new ArgumentNullException(username);
     }
     using (ParkingDBContext context = factory.CreateDbContext())
     {
         ApplicationUser userEntity = context.Users.Single(us => us.UserName == username);
         CarEntity       carEntity  = new CarEntity();
         carEntity.Manufacturer = car.Manufacturer;
         carEntity.Model        = car.Model;
         carEntity.StateNumber  = car.StateNumber;
         carEntity.Year         = car.Year;
         carEntity.Color        = car.Color;
         context.Cars.Add(carEntity);
         UsersHaveCars uhc = new UsersHaveCars();
         uhc.UserEntity          = userEntity;
         uhc.CarEntity           = carEntity;
         carEntity.UsersHaveCars = new List <UsersHaveCars>();
         carEntity.UsersHaveCars.Add(uhc);
         context.SaveChanges();
         return(car);
     }
 }
Ejemplo n.º 2
0
        public void GetParkedCarsTest()
        {
            string username = "******";

            using (ParkingDBContext context = contextFactory.CreateDbContext())
            {
                ApplicationUser user = new ApplicationUser();
                user.UserName = username;
                CarEntity firstCar = new CarEntity();
                firstCar.StateNumber = "1515-IO7";

                context.Users.Add(user);

                UsersHaveCars uhc = new UsersHaveCars();
                uhc.UserEntity     = user;
                uhc.CarEntity      = firstCar;
                user.UsersHaveCars = new List <UsersHaveCars>();
                user.UsersHaveCars.Add(uhc);

                ParkingHistoryEntity parkingHistoryEntity = new ParkingHistoryEntity();
                parkingHistoryEntity.IdCar     = firstCar.IdCar;
                parkingHistoryEntity.IdUser    = user.Id;
                parkingHistoryEntity.IdParking = 1;
                parkingHistoryEntity.Arrival   = DateTime.Now;
                parkingHistoryEntity.Car       = firstCar;
                parkingHistoryEntity.User      = user;

                context.ParkingHistory.Add(parkingHistoryEntity);
                context.SaveChanges();
            }
            CarManager carManager = new CarManager(contextFactory);
            List <Car> cars       = carManager.GetParkedCars(username);

            Assert.NotEmpty(cars);
        }
Ejemplo n.º 3
0
        public void RemoveCarTest()
        {
            Car car = new Car();

            car.StateNumber = "1234-AA7";
            using (ParkingDBContext context = contextFactory.CreateDbContext())
            {
                ApplicationUser userEntity = new ApplicationUser();
                userEntity.UserName = "******";
                CarEntity carEntity = new CarEntity();
                carEntity.StateNumber = car.StateNumber;
                context.Users.Add(userEntity);
                context.Cars.Add(carEntity);
                car.Id = carEntity.IdCar;
                UsersHaveCars uhc = new UsersHaveCars();
                uhc.UserEntity           = userEntity;
                uhc.CarEntity            = carEntity;
                userEntity.UsersHaveCars = new List <UsersHaveCars>();
                userEntity.UsersHaveCars.Add(uhc);

                context.SaveChanges();
            }
            CarManager carManager = new CarManager(contextFactory);
            bool       removedCar = carManager.RemoveCar(car);

            Assert.True(removedCar);
        }
Ejemplo n.º 4
0
        public void DepartureTest()
        {
            User user = new User();

            user.Username = "******";
            Car car = new Car();

            car.Owner       = user;
            car.StateNumber = "1234";
            Parking parking = new Parking();

            parking.ParkingName = "Zion";

            using (ParkingDBContext context = contextFactory.CreateDbContext())
            {
                ParkingEntity parkingEntity = new ParkingEntity();
                parkingEntity.Name = parking.ParkingName;
                context.Parkings.Add(parkingEntity);

                ApplicationUser userEntity = new ApplicationUser();
                userEntity.UserName = user.Username;
                context.Users.Add(userEntity);

                CarEntity carEntity = new CarEntity();
                carEntity.StateNumber = car.StateNumber;

                UsersHaveCars uhc = new UsersHaveCars();
                uhc.UserEntity           = userEntity;
                uhc.CarEntity            = carEntity;
                userEntity.UsersHaveCars = new List <UsersHaveCars>();
                userEntity.UsersHaveCars.Add(uhc);
                context.SaveChanges();
            }
            ParkingManager parkingManager = new ParkingManager(contextFactory);

            parkingManager.Arrive(car, parking, car.Owner.Username);
            parkingManager.Depart(car);
            Assert.DoesNotContain(car, parking.Cars);
        }