public void Put_CarClass_IsTrue() { var carclass = new CarClass() { Class = "ichwerde", CostsPerDay = 1000m }; DbContextOptionsBuilder <CarRentDBContext> builder = new DbContextOptionsBuilder <CarRentDBContext>(); builder.UseInMemoryDatabase("CarRent"); DbContextOptions <CarRentDBContext> options = builder.Options; CarRentDBContext carrent = new CarRentDBContext(options); ExampleData.ExampleData.InitTestData(carrent); var carclasscontroller = new CarClassesController(carrent); carclasscontroller.PostCarClass(carclass); int id = 0; foreach (var cclass in carclasscontroller.GetCarClasses()) { if (cclass.Class.Equals("ichwerde")) { id = cclass.Id; break; } } var carclass2 = carclasscontroller.GetCarClass(id); carclasscontroller.PutCarClass(id, carclass2); var carclass3 = carclasscontroller.GetCarClass(id); Assert.IsTrue(carclass3.Class.Equals(carclass2.Class)); }
public void Delete_CarClass_IsTrue() { var carclass = new CarClass() { Class = "Ichwerdegeloeschtzwei", CostsPerDay = 1000m }; DbContextOptionsBuilder <CarRentDBContext> builder = new DbContextOptionsBuilder <CarRentDBContext>(); builder.UseInMemoryDatabase("CarRent"); DbContextOptions <CarRentDBContext> options = builder.Options; CarRentDBContext carrent = new CarRentDBContext(options); ExampleData.ExampleData.InitTestData(carrent); var carclasscontroller = new CarClassesController(carrent); carclasscontroller.PostCarClass(carclass); bool isAdded = false; int id = 0; foreach (var cclass in carclasscontroller.GetCarClasses()) { if (cclass.Class.Equals(carclass.Class) && cclass.CostsPerDay == carclass.CostsPerDay) { id = cclass.Id; isAdded = true; break; } } carclasscontroller.DeleteCarClass(id); Assert.IsTrue(isAdded && carclasscontroller.GetCarClass(id) == null); }
public ContractComplete(CarRentDBContext context, Contract contract) { Reservation reservation = context.Reservations.Find(contract.ReservationId); this.ReservationDate = reservation.ReservationDate; this.State = reservation.State; this.Costs = reservation.Costs; this.ReservationDate = reservation.ReservationDate; this.RentalDate = reservation.RentalDate; this.RentalDays = reservation.RentalDays; Customer customer = context.Customers.Find(reservation.CustomerId); this.Firstname = customer.Firstname; this.Lastname = customer.Lastname; this.Adress = customer.Adress; this.EMailAdress = customer.EMailAdress; this.Telephonenumber = customer.Telephonenumber; Car car = context.Cars.Find(reservation.CarId); CarBrand brand = context.CarBrands.Find(car.BrandId); this.BrandName = brand.BrandName; CarClass carclass = context.CarClasses.Find(car.ClassId); this.Class = carclass.Class; CarType type = context.CarTypes.Find(car.TypeId); this.carType = type.carType; this.CostsPerDay = carclass.CostsPerDay; }
// This method gets called by the runtime. Use this method to add services to the container. public void ConfigureServices(IServiceCollection services) { services.AddControllers(); services.AddDbContext <CarRentDBContext>(opt => opt.UseInMemoryDatabase("CarRent")); DbContextOptionsBuilder <CarRentDBContext> builder = new DbContextOptionsBuilder <CarRentDBContext>(); builder.UseInMemoryDatabase("CarRent"); DbContextOptions <CarRentDBContext> options = builder.Options; CarRentDBContext carrent = new CarRentDBContext(options); ExampleData.ExampleData.InitTestData(carrent); }
public void Post_CarClass_IsTrue() { var carclass = new CarClass() { Class = "Ichwerdegeloescht", CostsPerDay = 1000m }; DbContextOptionsBuilder <CarRentDBContext> builder = new DbContextOptionsBuilder <CarRentDBContext>(); builder.UseInMemoryDatabase("CarRent"); DbContextOptions <CarRentDBContext> options = builder.Options; CarRentDBContext carrent = new CarRentDBContext(options); ExampleData.ExampleData.InitTestData(carrent); var carclasscontroller = new CarClassesController(carrent); if (carrent.CarClasses.Any(e => e.Class == carclass.Class)) { int index = 0; var carclasslist = carclasscontroller.GetCarClasses(); foreach (var cclass in carclasslist) { if (!cclass.Class.Equals(carclass.Class)) { continue; } index = cclass.Id; } carclasscontroller.DeleteCarClass(index); } carclasscontroller.PostCarClass(carclass); var bOk = false; var ind = 0; foreach (var carsclasses in carclasscontroller.GetCarClasses()) { if (carsclasses.Class.Equals(carclass.Class) && carsclasses.CostsPerDay == carclass.CostsPerDay) { bOk = true; ind = carsclasses.Id; break; } } carclasscontroller.DeleteCarClass(ind); Assert.IsTrue(bOk); }
public void Get_CarclassController_IsTrue() { DbContextOptionsBuilder <CarRentDBContext> builder = new DbContextOptionsBuilder <CarRentDBContext>(); builder.UseInMemoryDatabase("CarRent"); DbContextOptions <CarRentDBContext> options = builder.Options; CarRentDBContext carrent = new CarRentDBContext(options); ExampleData.ExampleData.InitTestData(carrent); var carclasscontroller = new CarClassesController(carrent); var carclasslist = carclasscontroller.GetCarClasses(); var carlist2 = carrent.CarClasses.ToList(); Assert.IsTrue(carclasslist.Count == carlist2.Count); }
public CarsController(CarRentDBContext context) { _context = context; }
public ReservationsController(CarRentDBContext context) { _context = context; }
public CarRepository(CarRentDBContext dbContext) { _dbContext = dbContext; }
public ReservationRepository(CarRentDBContext dbContext) { _dbContext = dbContext; }
public static void InitTestData(CarRentDBContext context) { var carclasslist = new List <CarClass>() { new CarClass() { Class = "Economy", CostsPerDay = 25m }, new CarClass() { Class = "Middleclass", CostsPerDay = 40m }, new CarClass() { Class = "Luxury", CostsPerDay = 55m } }; var cartypelist = new List <CarType>() { new CarType() { carType = "Limousine" }, new CarType() { carType = "Kombi" }, new CarType() { carType = "SUV" } }; var carbrandlist = new List <CarBrand>() { new CarBrand() { BrandName = "VW" }, new CarBrand() { BrandName = "Audi" }, new CarBrand() { BrandName = "Fiat" }, new CarBrand() { BrandName = "Seat" } }; context.CarClasses.AddRange(carclasslist); context.CarBrands.AddRange(carbrandlist); context.CarTypes.AddRange(cartypelist); context.SaveChanges(); var carlist = new List <Car>() { new Car() { BrandId = 1, ClassId = 1, horsepower = 100, kilometer = 150000, RegistrationYear = 2020, TypeId = 1 }, new Car() { BrandId = 2, ClassId = 2, horsepower = 150, kilometer = 150000, RegistrationYear = 2019, TypeId = 2 }, new Car() { BrandId = 3, ClassId = 3, horsepower = 300, kilometer = 150000, RegistrationYear = 2018, TypeId = 3 } }; context.Cars.AddRange(carlist); context.SaveChanges(); var customerlist = new List <Customer>() { new Customer() { Adress = "W. Wolfensbergerstr. 3, 9424 Rheineck", EMailAdress = "*****@*****.**", Firstname = "Adrian", Lastname = "Kaufmann", Telephonenumber = "0765655282" }, new Customer() { Adress = "W. Wolfensbergerstr. 5, 9424 Rheineck", EMailAdress = "*****@*****.**", Firstname = "Max", Lastname = "Mustermann", Telephonenumber = "0798888888" }, new Customer() { Adress = "W. Wolfensbergerstr. 7, 9424 Rheineck", EMailAdress = "*****@*****.**", Firstname = "Vreni", Lastname = "Musterfrau", Telephonenumber = "0774445566" }, }; context.Customers.AddRange(customerlist); context.SaveChanges(); var reservation = new Reservation() { CarId = 1, CustomerId = 1, RentalDate = new DateTime(2020, 02, 11), ReservationDate = new DateTime(2020, 01, 01), RentalDays = 8, State = ReservationState.pending }; var reservation2 = new Reservation() { CarId = 2, CustomerId = 2, RentalDate = new DateTime(2020, 02, 11), ReservationDate = new DateTime(2020, 01, 01), RentalDays = 8, State = ReservationState.pending }; var car = context.Cars.Find(reservation.CarId); var carclass = context.CarClasses.Find(car.ClassId); reservation.Costs = reservation.RentalDays * carclass.CostsPerDay; context.Reservations.Add(reservation); context.Reservations.Add(reservation2); context.SaveChanges(); }