コード例 #1
0
        public void GetDishById()
        {
            var options = new DbContextOptionsBuilder <CookDbContext>()
                          .UseInMemoryDatabase(databaseName: "CookTest")
                          .Options;

            // Run the test against one instance of the context
            using (var context = new CookDbContext(options))
            {
                var service = new EFDishService(context);
                service.CreateDish(dish2);
                context.SaveChanges();
            }

            // Use a separate instance of the context to verify correct data was saved to database
            using (var context = new CookDbContext(options))
            {
                var service = new EFDishService(context);

                Dish dish   = new Dish();
                var  dishes = service.GetDishes();
                foreach (var item in dishes)
                {
                    if (item.Name == dish2.Name)
                    {
                        dish = item;
                    }
                }
                var getDish = service.GetDishById(dish.Id);
                Assert.Equal(dish, getDish);
            }
        }
コード例 #2
0
        public void CreateNewDish()
        {
            var options = new DbContextOptionsBuilder <CookDbContext>()
                          .UseInMemoryDatabase(databaseName: "CookTest")
                          .Options;

            // Run the test against one instance of the context
            using (var context = new CookDbContext(options))
            {
                var service = new EFDishService(context);
                service.CreateDish(dish);
                context.SaveChanges();
            }

            // Use a separate instance of the context to verify correct data was saved to database
            using (var context = new CookDbContext(options))
            {
                Assert.Equal("Testing this dish", context.Dish.FirstOrDefault(d => d.Id == dish.Id).Name);;
                Assert.Equal(7.99, context.Dish.FirstOrDefault(d => d.Id == dish.Id).Price);
            }
        }
コード例 #3
0
        public void GetAllDishes()
        {
            var options = new DbContextOptionsBuilder <CookDbContext>()
                          .UseInMemoryDatabase(databaseName: "CookTest")
                          .Options;

            // Run the test against one instance of the context
            using (var context = new CookDbContext(options))
            {
                var service = new EFDishService(context);
                service.CreateDish(dish);
                service.CreateDish(dish2);
                context.SaveChanges();
            }

            // Use a separate instance of the context to verify correct data was saved to database
            using (var context = new CookDbContext(options))
            {
                var service = new EFDishService(context);
                var dishes  = service.GetDishes();

                Assert.Equal(dishes.Count, context.Dish.Count());
            }
        }