public void UpdateIsOK()
        {
            var context = new CarContext();
            var testContext = new EFRepository<Car,int>(context);
            var all = context.Car.ToList();
            all.ForEach(r => testContext.Delete(r));
            testContext.Save();
            var car = new Car()
            {
                CarName = "Ford",
                CarPrice = 100000
            };
            testContext.Insert(car);
            testContext.Save();

            car.CarName = "Ford1";
            car.CarPrice = 100000 - 1;
            testContext.Update(car);
            testContext.Save();

            var cars = context.Car.ToList();
            Assert.AreEqual(cars.Count, 1);
            Assert.AreEqual(cars.FirstOrDefault().CarName, "Ford1");
            Assert.AreEqual(cars.FirstOrDefault().CarPrice, 100000 - 1);
        }
        public void TestUpdate()
        {
            using (CarContext context = new CarContext())
            {
                var testContext = new EFRepository<Car, int>(context);

                var car = context.Car.AsNoTracking().AsQueryable().ToList();
                //context.Car.Where(x => x.ID == 1).Update(x => new Car { CarPrice = 12 });

                //testContext.Update(x => x.ID == 1, x => new Car { CarPrice = 12 });
                context.SaveChanges();
            }
        }
        public void TestMethod1()
        {
            try
            {
                var context = new CarContext();
                var testContext = new EFRepository<Car, int>(context);

                var all = context.Car.ToList();

                var cart = testContext.Get(all.First().ID);
            }
            catch 
            { 

            }
        }
 public void ContextIsOK()
 {
     var context = new CarContext();
     var all = context.Car.ToList();
     all.ForEach(r => context.Car.Remove(r));
     context.SaveChanges();
     context.Car.Add(new Car()
     {
         CarName = "Ford",
         CarPrice = 100000
     });
     context.SaveChanges();
     var cars = context.Car.ToList();
     Assert.AreEqual(cars.Count, 1);
     Assert.AreEqual(cars.FirstOrDefault().CarName, "Ford");
     Assert.AreEqual(cars.FirstOrDefault().CarPrice, 100000);
 }
 public void GetCountDeleteIsOK()
 {
     var context = new CarContext();
     var testContext = new EFRepository<Car,int>(context);
     var all = context.Car.ToList();
     all.ForEach(r => testContext.Delete(r));
     testContext.Save();
     Assert.AreEqual(context.Car.ToList().Count, 0);
     context.Car.Add(new Car()
     {
         CarName = "Ford",
         CarPrice = 100000
     });
     testContext.Save();
     var cars = context.Car.ToList();
     Assert.AreEqual(testContext.Count(), 1);
     Assert.AreEqual(testContext.Get(r => r.CarPrice == 100000).CarName, "Ford");
 }
        public void MyTestMethod()
        {
            var context = new CarContext();
            var testContext = new EFRepository<Car, int>(context);
            context.Car.ToList().ForEach(r => testContext.Delete(r));
            testContext.Save();
            var car = new Car()
            {
                CarName = "Ford",
                CarPrice = 100000
            };
            var car1 = new Car()
            {
                CarName = "Toyota",
                CarPrice = 100000
            };
            testContext.Insert(car);
            testContext.Insert(car1);
            testContext.Save();

            //var cars = testContext.GetList();
            //Assert.AreEqual(cars.Count, 1);
            //Assert.AreEqual(cars.FirstOrDefault().CarName, "Ford");
            //Assert.AreEqual(cars.FirstOrDefault().CarPrice, 100000);
        }
 public void GetAllOrderByIsOK()
 {
     var context = new CarContext();
     var testContext = new EFRepository<Car,int>(context);
     context.Car.ToList().ForEach(r => testContext.Delete(r));
     testContext.Save();
     var car = new Car()
     {
         CarName = "Ford",
         CarPrice = 100000
     };
     var car1 = new Car()
     {
         CarName = "Toyota",
         CarPrice = 99999
     };
     testContext.Insert(car);
     testContext.Insert(car1);
     testContext.Save();
     var cars = testContext.GetList(r => r.CarPrice == 100000, null, "").ToList();
     Assert.AreEqual(cars.Count, 1);
     Assert.AreEqual(cars.FirstOrDefault().CarName, "Ford");
     Assert.AreEqual(cars.FirstOrDefault().CarPrice, 100000);
 }
 public void Delete1IsOK()
 {
     var context = new CarContext();
     var testContext = new EFRepository<Car,int>(context);
     var all = context.Car.ToList();
     all.ForEach(r => testContext.Delete(r));
     testContext.Save();
     var car = new Car()
     {
         CarName = "Ford",
         CarPrice = 100000
     };
     testContext.Insert(car);
     testContext.Save();
     testContext.Delete(r => r.ID == car.ID);
     testContext.Save();
     var cars = context.Car.ToList();
     Assert.AreEqual(cars.Count, 0);
 }
        public void Update1IsOK()
        {
            var context = new CarContext();
            var testContext = new EFRepository<Car,int>(context);
            var all = context.Car.ToList();
            all.ForEach(r => testContext.Delete(r));
            testContext.Save();
            var car = new Car()
            {
                CarName = "Ford",
                CarPrice = 100000
            };
            testContext.Insert(car);
            testContext.Save();
            car.CarPrice = 99999;
            car.CarName = "Ford1";
            testContext.Update(car, x => new { x.CarPrice });
            testContext.Save();
            var cars = testContext.GetDbSet().AsNoTracking().ToList();//OK


            var cars1 = testContext.GetDbSet().ToList();//error            
            Assert.AreEqual(cars.Count, 1);
            Assert.AreEqual(cars.FirstOrDefault().CarName, "Ford");
            Assert.AreEqual(cars.FirstOrDefault().CarPrice, 100000 - 1);
        }