public static TestDrive SeedTestDriveWithCar <TCar>(
            ApplicationDbContext dbContext,
            string userId,
            Status status)
            where TCar : BaseCar, new()
        {
            var dbTestDrive = SeedTestDrive(dbContext, userId, status);
            var dbCar       = SeedCarsMethods.SeedCarWithEverything <TCar>(dbContext);

            dbCar.TestDrives.Add(dbTestDrive);

            dbContext.SaveChanges();

            return(dbTestDrive);
        }
        public static TestDrive SeedTestDriveWithEverything(
            ApplicationDbContext dbContext,
            TestDriveStatus status = TestDriveStatus.Upcoming)
        {
            var dbStatus    = SeedStatusesMethods.SeedStatus(dbContext, status);
            var dbCar       = SeedCarsMethods.SeedCarWithEverything <NewCar>(dbContext);
            var dbTestDrive = new TestDrive()
            {
                Status = dbStatus,
                User   = new User(),
                Car    = dbCar
            };

            SeedTestDrive(dbContext, dbTestDrive);

            return(dbTestDrive);
        }
        public static TestDrive SeedTestDriveWithCar <TCar>(
            ApplicationDbContext dbContext,
            DateTime dateTime,
            TestDriveStatus status = TestDriveStatus.Upcoming)
            where TCar : BaseCar, new()
        {
            var dbStatus    = SeedStatusesMethods.SeedStatus(dbContext, status);
            var dbTestDrive = new TestDrive()
            {
                ScheduleDate = dateTime,
                Status       = dbStatus
            };
            var dbCar = SeedCarsMethods.SeedCar <TCar>(dbContext);

            dbCar.TestDrives.Add(dbTestDrive);

            SeedTestDrive(dbContext, dbTestDrive);

            return(dbTestDrive);
        }