示例#1
0
        public void GetEnginesByFuelType()
        {
            var data = new List <Engine>
            {
                new Engine {
                    Name = "Engine1", FuelType = "Diesel"
                },
                new Engine {
                    Name = "Engine2", FuelType = "Petrol"
                },
                new Engine {
                    Name = "Engine3", FuelType = "Diesel"
                },
            }.AsQueryable();

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

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

            var mockContext = new Mock <CarDealershipContext>();

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

            var service      = new EngineBusiness(mockContext.Object);
            var EnginesFound = service.GetEnginesByFuelType("Diesel");

            Assert.AreEqual(2, EnginesFound.Count());
            Assert.AreEqual("Engine1", EnginesFound[0].Name);
            Assert.AreEqual("Engine3", EnginesFound[1].Name);
        }
        /// <summary>
        /// Populate the data grid with information about engine with given fuel type
        /// </summary>
        private void PopulateDataGridViewGetEnginesByFuelType()
        {
            dataGridView.Rows.Clear();
            EngineBusiness engineBusiness = new EngineBusiness();
            var            enginesList    = engineBusiness.GetEnginesByFuelType(txtGet.Text);

            DataPopulator(enginesList);
        }