示例#1
0
        public void SortEnginesByNameDescending()
        {
            var data = new List <Engine>
            {
                new Engine {
                    Name = "EngineC"
                },
                new Engine {
                    Name = "EngineA"
                },
                new Engine {
                    Name = "EngineB"
                },
            }.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.SortEnginesByNameDescending();

            Assert.AreEqual(3, EnginesFound.Count());
            Assert.AreEqual("EngineC", EnginesFound[0].Name);
            Assert.AreEqual("EngineB", EnginesFound[1].Name);
            Assert.AreEqual("EngineA", EnginesFound[2].Name);
        }
        /// <summary>
        /// Populate the data grid with information for a single car
        /// </summary>
        /// <param name="car">A single car used to populate the data grid</param>
        private void DataPopulatorSingle(Car car)
        {
            EngineBusiness engineBusiness = new EngineBusiness();
            var            engine         = engineBusiness.GetEngineById(car.EngineId);
            CarBusiness    carBusiness    = new CarBusiness();

            string[] row =
            {
                car.Id.ToString(),
                car.Manufacturer,
                car.Model,
                carBusiness.GetDealershipName(car.CarDealershipId),
                engine.Name,
                engine.Power.ToString(),
                engine.Displacement.ToString(),
                FuelENGToBG(engine.FuelType),
                engine.EconomyPerHundredKm.ToString(),
                car.TransmissionType,
                car.TransmissionGears.ToString(),
                car.Color,
                car.Price.ToString() + " лв.",
                carBusiness.GetOwnerName(car.OwnerId),
            };
            dataGridView.Rows.Add(row);
        }
示例#3
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);
        }
示例#4
0
        private void SearchEngine()
        {
            List <string>     lst = new List <string>();
            List <BeanEngine> lt  = new List <BeanEngine>();
            EngineBusiness    obj = new EngineBusiness();

            lst = obj.getWords(txtWords.Text);
            BeanEngine bean;
            int        k = 1;

            foreach (var item in lst)
            {
                bean        = new BeanEngine();
                bean.ID     = k;
                bean.Word   = item;
                bean.Google = SearchEngineGoogle(item);
                bean.Bing   = SearchEngineMsn(item);
                lt.Add(bean);
                k++;
            }

            Int64 TotalGoogle = 0;
            Int64 TotalMsn    = 0;

            foreach (var item in lt)
            {
                if (item.Google > item.Bing)
                {
                    item.Winner = "Google";
                }
                else if (item.Google < item.Bing)
                {
                    item.Winner = "Msn";
                }
                else
                {
                    item.Winner = "Empate";
                }

                TotalGoogle = TotalGoogle + item.Google;
                TotalMsn    = TotalMsn + item.Bing;
            }


            if (TotalGoogle > TotalMsn)
            {
                lblTotalWinner.Text = "Google";
            }
            else if (TotalGoogle < TotalMsn)
            {
                lblTotalWinner.Text = "Msn";
            }
            else
            {
                lblTotalWinner.Text = "Empate";
            }

            dgvResults.DataSource = lt;
        }
        /// <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);
        }
        //Main logic//
        //Get logic//

        /// <summary>
        /// Populate the data grid with information about all existing engines in the database
        /// </summary>
        private void PopulateDataGridViewDefault()
        {
            dataGridView.Rows.Clear();
            EngineBusiness engineBusiness = new EngineBusiness();
            var            enginesList    = engineBusiness.GetAllEngines();

            DataPopulator(enginesList);
        }
        /// <summary>
        /// Populate the data grid with information sorted by engines' name in descending order
        /// </summary>
        private void PopulateDataGridViewSortEnginesByNameDescending()
        {
            dataGridView.Rows.Clear();
            EngineBusiness engineBusiness = new EngineBusiness();
            var            enginesList    = engineBusiness.SortEnginesByNameDescending();

            DataPopulator(enginesList);
        }
        /// <summary>
        /// Populate the data grid with information sorted by engines' economy in ascending order
        /// </summary>
        private void PopulateDataGridViewSortEnginesByEconomyPerHundredKmAscending()
        {
            dataGridView.Rows.Clear();
            EngineBusiness engineBusiness = new EngineBusiness();
            var            enginesList    = engineBusiness.SortEnginesByEconomyPerHundredKmAscending();

            DataPopulator(enginesList);
        }
        /// <summary>
        /// Populate the data grid with information about engine with given engine Id
        /// </summary>
        private void PopulateDataGridViewGetEngineById()
        {
            dataGridView.Rows.Clear();
            EngineBusiness engineBusiness = new EngineBusiness();

            int.TryParse(txtGet.Text, out int engineId);
            var enginesList = engineBusiness.GetEngineById(engineId);

            DataPopulatorSingle(enginesList);
        }
        /// <summary>
        /// Populate the data grid with information about engines with better economy than given
        /// </summary>
        private void PopulateDataGridViewGetEnginesWithHigherEconomyPerHundredKm()
        {
            dataGridView.Rows.Clear();
            EngineBusiness engineBusiness = new EngineBusiness();

            decimal.TryParse(txtGet.Text, out decimal economy);
            var enginesList = engineBusiness.GetEnginesWithHigherEconomyPerHundredKm(economy);

            DataPopulator(enginesList);
        }
        /// <summary>
        /// Populate the data grid with information about engines with more power than given
        /// </summary>
        private void PopulateDataGridViewGetEnginesWithHigherPower()
        {
            dataGridView.Rows.Clear();
            EngineBusiness engineBusiness = new EngineBusiness();

            int.TryParse(txtGet.Text, out int power);
            var enginesList = engineBusiness.GetEnginesWithHigherPower(power);

            DataPopulator(enginesList);
        }
        /// <summary>
        /// Populate the data grid with information about engine with given displacement
        /// </summary>
        private void PopulateDataGridViewGetEnginesByDisplacement()
        {
            dataGridView.Rows.Clear();
            EngineBusiness engineBusiness = new EngineBusiness();

            int.TryParse(txtGet.Text, out int displacement);
            var enginesList = engineBusiness.GetEnginesByDisplacement(displacement);

            DataPopulator(enginesList);
        }
        /// <summary>
        /// Update the input text boxes with information for a selected engine
        /// </summary>
        /// <param name="Id">The ID of a selected engine</param>
        private void UpdateTextBoxes(int Id)
        {
            EngineBusiness engineBusiness = new EngineBusiness();
            Engine         engine         = engineBusiness.GetEngineById(Id);

            txtDisplacement.Text = engine.Displacement.ToString();
            txtEconomy.Text      = engine.EconomyPerHundredKm.ToString();
            txtFuelType.Text     = FuelENGToBG(engine.FuelType);
            txtName.Text         = engine.Name;
            txtPower.Text        = engine.Power.ToString();
        }
        private void btnSave_Click(object sender, EventArgs e)
        {
            Engine         engine         = GetEditedEngine();
            EngineBusiness engineBusiness = new EngineBusiness();

            engineBusiness.Update(engine);
            PopulateDataGridViewDefault();
            ResetSelect();
            ToggleSaveUpdate();
            ClearTextBoxes();
        }
 private void btnDelete_Click(object sender, EventArgs e)
 {
     if (dataGridView.SelectedRows.Count > 0)
     {
         var            engine         = dataGridView.SelectedRows[0].Cells;
         var            engineId       = int.Parse(engine[0].Value.ToString());
         EngineBusiness engineBusiness = new EngineBusiness();
         engineBusiness.Delete(engineId);
         PopulateDataGridViewDefault();
         ResetSelect();
     }
 }
        /// <summary>
        /// Populate the data grid with information for a single engine
        /// </summary>
        /// <param name="engine">A single engine used to populate the data grid</param>
        private void DataPopulatorSingle(Engine engine)
        {
            EngineBusiness engineBusiness = new EngineBusiness();

            string[] row =
            {
                engine.Id.ToString(),
                engine.Name,
                FuelENGToBG(engine.FuelType),
                engine.Power.ToString(),
                engine.Displacement.ToString(),
                engine.EconomyPerHundredKm.ToString()
            };
            dataGridView.Rows.Add(row);
        }
示例#17
0
        public void AddEngine()
        {
            var mockSet = new Mock <DbSet <Engine> >();

            var mockContext = new Mock <CarDealershipContext>();

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

            var service = new EngineBusiness(mockContext.Object);

            service.Add(new Engine());

            mockSet.Verify(m => m.Add(It.IsAny <Engine>()), Times.Once());
            mockContext.Verify(m => m.SaveChanges(), Times.Once());
        }
示例#18
0
        private Int64 SearchEngineGoogle(string words)
        {
            //String words = "c%23+query+google";
            //String words = txtWords.Text;
            String         mpath = "https://www.google.com.pe/search?source=hp&ei=Abq4WpunEIuG5wL_3YvgCA&q=";
            BeanAnswer     ent   = new BeanAnswer();
            BeanSent       snt   = new BeanSent();
            EngineBusiness obj   = new EngineBusiness();

            snt.Words     = words;
            snt.MainPath  = mpath;
            snt.Operation = ConfigurationEN.GoogleSearch;
            ent           = obj.QuerySearchEngine(snt);
            //lblGoogleResults.Text = ent.Total.ToString();
            return(ent.Total);
        }
示例#19
0
        private Int64 SearchEngineMsn(string words)
        {
            //String words = "c%23+query+google";
            //String words = txtWords.Text;
            String         mpath = "https://www.bing.com/search?q=";
            BeanAnswer     ent   = new BeanAnswer();
            BeanSent       snt   = new BeanSent();
            EngineBusiness obj   = new EngineBusiness();

            snt.Words     = words;
            snt.MainPath  = mpath;
            snt.Operation = ConfigurationEN.BingSearch;
            ent           = obj.QuerySearchEngine(snt);
            //lblMsnResults.Text = ent.Total.ToString();
            return(ent.Total);
        }
示例#20
0
        private void btnEngines_Click(object sender, EventArgs e)
        {
            HideSpecificInfo();
            lblInfoEngine.Visible = true;
            btnNewEngine.Visible  = true;

            dataGridView.Rows.Clear();

            dataGridView.ColumnCount = 6;

            dataGridView.Columns[0].Name = "ID";
            dataGridView.Columns[1].Name = "Име";
            dataGridView.Columns[2].Name = "Гориво";
            dataGridView.Columns[3].Name = "Мощност";
            dataGridView.Columns[4].Name = "Работен обем";
            dataGridView.Columns[5].Name = "Разход на 100 километра";

            dataGridView.AutoSizeRowsMode =
                DataGridViewAutoSizeRowsMode.DisplayedCellsExceptHeaders;
            dataGridView.ColumnHeadersBorderStyle =
                DataGridViewHeaderBorderStyle.Single;
            dataGridView.CellBorderStyle   = DataGridViewCellBorderStyle.Single;
            dataGridView.RowHeadersVisible = false;
            dataGridView.SelectionMode     =
                DataGridViewSelectionMode.FullRowSelect;
            dataGridView.MultiSelect = false;

            EngineBusiness engineBusiness = new EngineBusiness();
            var            enginesList    = engineBusiness.GetAllEngines();

            foreach (var engine in enginesList)
            {
                string[] row =
                {
                    engine.Id.ToString(),
                    engine.Name,
                    FuelENGToBG(engine.FuelType),
                    engine.Power.ToString(),
                    engine.Displacement.ToString(),
                    engine.EconomyPerHundredKm.ToString()
                };
                dataGridView.Rows.Add(row);
            }
        }
        //cbGet and cbSort//

        //Buttons + attached//
        private void btnAdd_Click(object sender, EventArgs e)
        {
            Engine engine = new Engine();

            engine.Name     = txtName.Text;
            engine.FuelType = FuelBGTtoENG(txtFuelType.Text);
            decimal.TryParse(txtEconomy.Text, out decimal economy);
            engine.EconomyPerHundredKm = economy;
            int.TryParse(txtDisplacement.Text, out int displacement);
            engine.Displacement = displacement;
            int.TryParse(txtPower.Text, out int power);
            engine.Power = power;

            EngineBusiness engineBusiness = new EngineBusiness();

            engineBusiness.Add(engine);
            PopulateDataGridViewDefault();
            ClearTextBoxes();
        }