public InventoryViewModel(ICommandHandler commandHandler, IItemRepository itemRepo) : base(commandHandler) { // NOTE this is very important for database to work Database.SetInitializer <SQLServerDbContext>(new DropCreateDatabaseIfModelChanges <SQLServerDbContext>()); _itemRepo = itemRepo; _itemListViewModel = ContainerHelper.Container.Resolve <ItemListViewModel>(); _partListViewModel = ContainerHelper.Container.Resolve <PartListViewModel>(); _itemEditorViewModel = ContainerHelper.Container.Resolve <ItemEditorViewModel>(); }
// GET: Inventory public ActionResult Index() { ViewBag.Title = "Current Parts Inventory"; var parts = from p in _partManager.RetrieveAllParts() select p; PartListViewModel partListView = new PartListViewModel { Part = parts.ToList() }; return(View(partListView)); }
//List<TabItem> _tabItems = new List<TabItem>(); public PartList() { objVM = new PartListViewModel(); DataContext = objVM; InitializeComponent(); tabDynamic.SelectedIndex = 0; WindowStartupLocation = System.Windows.WindowStartupLocation.CenterScreen; }
public ViewResult List(string type, int page = 1) { PartListViewModel model = new PartListViewModel { Parts = repository.Parts .Where(p => type == null || p.Type == type) .OrderBy(part => part.Part_Id) .Skip((page - 1) * pageSize) .Take(pageSize), PaginInfo = new PaginInfo { Current_Page = page, Items_On_Page = pageSize, Total_Items = type == null? repository.Parts.Count() : repository.Parts.Where(part => part.Type == type).Count() }, Current_Type = type }; return(View(model)); }
public void TestMethod_PaginationViewModel() { //arrange Mock <IPartRepository> mock = new Mock <IPartRepository>(); mock.Setup(m => m.Parts).Returns(new List <Part> { new Part { Part_Id = 1, Name = "Part1" }, new Part { Part_Id = 2, Name = "Part2" }, new Part { Part_Id = 3, Name = "Part3" }, new Part { Part_Id = 4, Name = "Part4" }, new Part { Part_Id = 5, Name = "Part5" } }); PartController controller = new PartController(mock.Object); controller.pageSize = 3; //act PartListViewModel rez = (PartListViewModel)controller.List(null, 2).Model; //assert PaginInfo paginInfo = rez.PaginInfo; Assert.AreEqual(paginInfo.Current_Page, 2); Assert.AreEqual(paginInfo.Items_On_Page, 3); Assert.AreEqual(paginInfo.Total_Items, 5); Assert.AreEqual(paginInfo.Total_Pages, 2); }
public void TestMethod_Pagination() { //arrange Mock <IPartRepository> mock = new Mock <IPartRepository>(); mock.Setup(m => m.Parts).Returns(new List <Part> { new Part { Part_Id = 1, Name = "Part1" }, new Part { Part_Id = 2, Name = "Part2" }, new Part { Part_Id = 3, Name = "Part3" }, new Part { Part_Id = 4, Name = "Part4" }, new Part { Part_Id = 5, Name = "Part5" } }); PartController controller = new PartController(mock.Object); controller.pageSize = 2; //act PartListViewModel rez = (PartListViewModel)controller.List(null, 2).Model; //assert List <Part> parts = rez.Parts.ToList(); Assert.IsTrue(parts.Count == 2); Assert.AreEqual(parts[0].Name, "Part3"); Assert.AreEqual(parts[1].Name, "Part4"); }