public IActionResult Index(int?ProizvodjacID, string nazivModela) { AutomobilIndexVM model = new AutomobilIndexVM(); model.Proizvodjaci = PripremaListItemProizvodjaci(); model.Proizvodjaci.FirstOrDefault().Text = "(Sva vozila)"; if (nazivModela != null) { nazivModela = nazivModela.Replace(" ", "").ToLower(); } model.Rows = db.Automobil.Where(y => (y.ProizvodjacID == ProizvodjacID || ProizvodjacID == null) && (string.Concat(y.Proizvodjac.Naziv, y.Model).Replace(" ", "").ToLower().Contains(nazivModela) || nazivModela == null)) .Select(x => new AutomobilIndexVM.Row() { AutomobilID = x.AutomobilID, Boja = x.Boja, Model = x.Model, GodinaProizvodnje = x.GodinaProizvodnje, Dostupan = x.Dostupan, Cijena = string.Format("{0:C}", db.AutomobilDetalji.FirstOrDefault(s => s.AutomobilID == x.AutomobilID).Cijena), Proizvodjac = x.Proizvodjac.Naziv, SlikaURL = x.SlikaURL, Stanje = x.Novo?"Novo":"Korišteno" }).ToList(); return(View(model)); }
public void Index_Model_Automobil() { ApplicationDbContext applicationDbContext = ContextHelper.GetApplicationDbContext(); List <Automobil> ocekivani = applicationDbContext.Automobil.Where(x => x.ProizvodjacID == 1).ToList(); AutomobilController ac = new AutomobilController(applicationDbContext, he); ViewResult vr = ac.Index(1, "") as ViewResult; AutomobilIndexVM model = vr.Model as AutomobilIndexVM; Assert.AreEqual(ocekivani.Count, model.Rows.Count); }
public void Index_Model_List_Proizvodjac_Model_Automobil() { ApplicationDbContext applicationDbContext = ContextHelper.GetApplicationDbContext(); AutomobilController ac = new AutomobilController(applicationDbContext, he); List <Automobil> automobili = applicationDbContext.Automobil.Include(s => s.Proizvodjac).Where(x => x.ProizvodjacID == 1 && x.Model == "X5").ToList(); List <RowIndex> ocekivani = new List <RowIndex>(); foreach (Automobil a in automobili) { ocekivani.Add(new RowIndex { AutomobilID = a.AutomobilID, Boja = a.Boja, Proizvodjac = a.Proizvodjac.Naziv, GodinaProizvodnje = a.GodinaProizvodnje, Model = a.Model, SlikaURL = a.SlikaURL }); } ViewResult vr = ac.Index(1, "X5") as ViewResult; AutomobilIndexVM model = vr.Model as AutomobilIndexVM; List <RowIndex> rezultat = new List <RowIndex>(); foreach (AutomobilIndexVM.Row a in model.Rows) { rezultat.Add(new RowIndex { AutomobilID = a.AutomobilID, Boja = a.Boja, Proizvodjac = a.Proizvodjac, GodinaProizvodnje = a.GodinaProizvodnje, Model = a.Model, SlikaURL = a.SlikaURL }); } CollectionAssert.AreEqual(ocekivani, rezultat, Comparer <RowIndex> .Create( (prvi, drugi) => prvi.AutomobilID == drugi.AutomobilID && prvi.Model == drugi.Model && prvi.Boja == drugi.Boja && prvi.GodinaProizvodnje == drugi.GodinaProizvodnje && prvi.Proizvodjac == drugi.Proizvodjac && prvi.SlikaURL == drugi.SlikaURL ? 0 : 1)); }
public void Index_Model_Count_BMW() { ApplicationDbContext applicationDbContext = ContextHelper.GetApplicationDbContext(); AutomobilController ac = new AutomobilController(applicationDbContext, he); int OcekivanBrojAutomobila = applicationDbContext.Automobil.Include(s => s.Proizvodjac).Where(x => x.ProizvodjacID == 1).Count(); ViewResult vr = ac.Index(1, "") as ViewResult; AutomobilIndexVM model = vr.Model as AutomobilIndexVM; int DobijeniBrojAutomobila = model.Rows.Count(); Assert.AreEqual(OcekivanBrojAutomobila, DobijeniBrojAutomobila); }
public IActionResult PolovnaVozila() { AutomobilIndexVM model = new AutomobilIndexVM(); model.Rows = db.Automobil.Where(q => q.Novo == false && q.Dostupan == true).Select(x => new AutomobilIndexVM.Row { AutomobilID = x.AutomobilID, Boja = x.Boja, Model = x.Model, GodinaProizvodnje = x.GodinaProizvodnje, Dostupan = x.Dostupan, Cijena = string.Format("{0:C}", db.AutomobilDetalji.FirstOrDefault(s => s.AutomobilID == x.AutomobilID).Cijena), Proizvodjac = x.Proizvodjac.Naziv, SlikaURL = x.SlikaURL, Stanje = x.Novo ? "Novo" : "Korišteno" }).ToList(); return(View("Vozila", model)); }