コード例 #1
0
        public void GetFruitOrVegetableById_Gives_FruitOrVegetable_By_Id()
        {
            var data = new List <FruitAndVegetable>()
            {
                new FruitAndVegetable {
                    Id = 1, Name = "FruitAndVegetable1"
                },
                new FruitAndVegetable {
                    Id = 2, Name = "FruitAndVegetable2"
                },
                new FruitAndVegetable {
                    Id = 3, Name = "FruitAndVegetable3"
                },
            }.AsQueryable();

            var mockSet = new Mock <DbSet <FruitAndVegetable> >();

            mockSet.As <IQueryable <FruitAndVegetable> >().Setup(m => m.Provider).Returns(data.Provider);
            mockSet.As <IQueryable <FruitAndVegetable> >().Setup(m => m.Expression).Returns(data.Expression);
            mockSet.As <IQueryable <FruitAndVegetable> >().Setup(m => m.ElementType).Returns(data.ElementType);
            mockSet.As <IQueryable <FruitAndVegetable> >().Setup(m => m.GetEnumerator()).Returns(data.GetEnumerator());

            var mockContext = new Mock <ShopContext>();

            mockContext.Setup(c => c.FruitsAndVegetables).Returns(mockSet.Object);

            var controller = new FruitAndVegetableController(mockContext.Object);

            var fruitOrVegetable = controller.GetFruitOrVegetableById(1);

            Assert.AreEqual(1, fruitOrVegetable.Id);
        }
コード例 #2
0
        public void RemoveFruitOrVegetable_Remove_A_FruitOrVegetable()
        {
            var data = new List <FruitAndVegetable>()
            {
                new FruitAndVegetable {
                    Id = 1, Name = "FruitAndVegetable1"
                },
                new FruitAndVegetable {
                    Id = 2, Name = "FruitAndVegetable2"
                },
                new FruitAndVegetable {
                    Id = 3, Name = "FruitAndVegetable3"
                },
            }.AsQueryable();

            var mockSet = new Mock <DbSet <FruitAndVegetable> >();

            mockSet.As <IQueryable <FruitAndVegetable> >().Setup(m => m.Provider).Returns(data.Provider);
            mockSet.As <IQueryable <FruitAndVegetable> >().Setup(m => m.Expression).Returns(data.Expression);
            mockSet.As <IQueryable <FruitAndVegetable> >().Setup(m => m.ElementType).Returns(data.ElementType);
            mockSet.As <IQueryable <FruitAndVegetable> >().Setup(m => m.GetEnumerator()).Returns(data.GetEnumerator());


            var mockContext = new Mock <ShopContext>();

            mockContext.Setup(x => x.FruitsAndVegetables).Returns(mockSet.Object);

            var service             = new FruitAndVegetableController(mockContext.Object);
            var fruitsAndVegetables = service.GetAllFruitsAndVegetables();

            int deletedNutId = 1; service.Delete(fruitsAndVegetables[0].Id);

            Assert.IsNull(service.GetAllFruitsAndVegetables().FirstOrDefault(x => x.Id == deletedNutId));
        }
コード例 #3
0
        public void GetAllFruitsAndVegetables_Gives_All_FruitsAndVegetables()
        {
            var data = new List <FruitAndVegetable>
            {
                new FruitAndVegetable {
                    Name = "First"
                },
                new FruitAndVegetable {
                    Name = "Second"
                },
                new FruitAndVegetable {
                    Name = "Third"
                },
            }.AsQueryable();

            var mockSet = new Mock <DbSet <FruitAndVegetable> >();

            mockSet.As <IQueryable <FruitAndVegetable> >().Setup(m => m.Provider).Returns(data.Provider);
            mockSet.As <IQueryable <FruitAndVegetable> >().Setup(m => m.Expression).Returns(data.Expression);
            mockSet.As <IQueryable <FruitAndVegetable> >().Setup(m => m.ElementType).Returns(data.ElementType);
            mockSet.As <IQueryable <FruitAndVegetable> >().Setup(m => m.GetEnumerator()).Returns(data.GetEnumerator());

            var mockContext = new Mock <ShopContext>();

            mockContext.Setup(c => c.FruitsAndVegetables).Returns(mockSet.Object);

            var controller          = new FruitAndVegetableController(mockContext.Object);
            var fruitsAndVegetables = controller.GetAllFruitsAndVegetables();

            Assert.AreEqual(3, fruitsAndVegetables.Count);
            Assert.AreEqual("First", fruitsAndVegetables[0].Name);
            Assert.AreEqual("Second", fruitsAndVegetables[1].Name);
            Assert.AreEqual("Third", fruitsAndVegetables[2].Name);
        }
コード例 #4
0
 /// <summary>
 /// Initialize controllers.
 /// </summary>
 public Display()
 {
     drinkController             = new DrinkController(new ShopContext());
     nutController               = new NutController(new ShopContext());
     fruitAndVegetableController = new FruitAndVegetableController(new ShopContext());
     pastryController            = new PastryController(new ShopContext());
     animalProductController     = new AnimalProductController(new ShopContext());
     HandleInput();
 }
コード例 #5
0
        public void AddFruitAndVegetable_Add_A_FruitAndVegetable()
        {
            var mockSet          = new Mock <DbSet <FruitAndVegetable> >();
            var fruitOrVegetable = new FruitAndVegetable();
            var mockContext      = new Mock <ShopContext>();

            mockContext.Setup(m => m.FruitsAndVegetables).Returns(mockSet.Object);

            var controller = new FruitAndVegetableController(mockContext.Object);

            controller.Add(fruitOrVegetable);

            mockSet.Verify(m => m.Add(It.IsAny <FruitAndVegetable>()), Times.Once());
            mockContext.Verify(m => m.SaveChanges(), Times.Once());
        }