public virtual void Test_CreateLeafMenuItems_ShouldCreatePanelWithLeafMenu() { //---------------Set up test pack------------------- HabaneroMenu habaneroMenu = new HabaneroMenu("Main"); string subMenuName = TestUtil.GetRandomString(); HabaneroMenu submenu = habaneroMenu.AddSubMenu(subMenuName); string menuItemName1 = TestUtil.GetRandomString(); submenu.AddMenuItem(menuItemName1); submenu.AddMenuItem(TestUtil.GetRandomString()); CollapsibleMenuBuilderVWG menuBuilder = (CollapsibleMenuBuilderVWG)CreateMenuBuilder(); IMenuItem menuItem = new CollapsibleSubMenuItemVWG(GetControlFactory(), "Some Sub Menu"); //---------------Assert Precondition---------------- Assert.AreEqual(0, menuItem.MenuItems.Count); ICollapsiblePanel menuItemAsControl = (ICollapsiblePanel)menuItem; Assert.AreEqual(1, menuItemAsControl.Controls.Count); Assert.AreEqual(2, submenu.MenuItems.Count); //---------------Execute Test ---------------------- menuBuilder.CreateLeafMenuItems(submenu, menuItem); //---------------Test Result ----------------------- Assert.AreEqual(2, menuItem.MenuItems.Count); Assert.AreEqual(2, menuItemAsControl.Controls.Count); IControlHabanero contentControl = menuItemAsControl.ContentControl; Assert.AreEqual(2, contentControl.Controls.Count); //Peter - 04/03/2010 - removed the assert below - the line that sets the Top is not working in this test, but the menu works in practice. //IControlHabanero firstControl = contentControl.Controls[0]; //IControlHabanero secondControl = contentControl.Controls[1]; //Assert.GreaterOrEqual(secondControl.Top, firstControl.Top + firstControl.Height); }
public virtual void Test_AddLeafMenuItem_ShouldAddButtonToCollapsiblePanel() { //---------------Set up test pack------------------- string name = TestUtil.GetRandomString(); HabaneroMenu.Item ownerItem = new HabaneroMenu.Item(null, name); CollapsibleSubMenuItemVWG subMenuItem = new CollapsibleSubMenuItemVWG(GetControlFactory(), ownerItem); CollapsibleMenuItemCollectionVWG collapsibleMenuItemCollection = new CollapsibleMenuItemCollectionVWG (subMenuItem); HabaneroMenu.Item item = new HabaneroMenu.Item(null, name); CollapsibleMenuItemVWG menuLeafItem = new CollapsibleMenuItemVWG(GetControlFactory(), item); //---------------Assert Precondition---------------- Assert.AreSame(subMenuItem, collapsibleMenuItemCollection.OwnerMenuItem); Assert.IsInstanceOf(typeof(CollapsibleMenuItemVWG), menuLeafItem); Assert.AreEqual(1, subMenuItem.Controls.Count, "CollapsiblePanel always has header button"); Assert.AreEqual(0, collapsibleMenuItemCollection.Count); //---------------Execute Test ---------------------- collapsibleMenuItemCollection.Add(menuLeafItem); //---------------Test Result ----------------------- Assert.AreEqual(1, collapsibleMenuItemCollection.Count); Assert.AreEqual(2, subMenuItem.Controls.Count, "Should have additional button control"); IControlHabanero contentControl = subMenuItem.ContentControl; Assert.IsInstanceOf(typeof(IPanel), contentControl); Assert.AreEqual(1, contentControl.Controls.Count); Assert.IsInstanceOf(typeof(IButton), contentControl.Controls[0]); Assert.AreEqual(menuLeafItem.Dock, DockStyleVWG.GetDockStyle(DockStyle.Top)); }
public virtual void Test_AddLeafMenuItem_ShouldIncreaseMinSizeOfCollapsiblePanel() { //---------------Set up test pack------------------- string name = TestUtil.GetRandomString(); HabaneroMenu.Item ownerItem = new HabaneroMenu.Item(null, name); CollapsibleSubMenuItemVWG subMenuItem = new CollapsibleSubMenuItemVWG(GetControlFactory(), ownerItem); CollapsibleMenuItemCollectionVWG collapsibleMenuItemCollection = new CollapsibleMenuItemCollectionVWG (subMenuItem); HabaneroMenu.Item item = new HabaneroMenu.Item(null, name); CollapsibleMenuItemVWG menuLeafItem = new CollapsibleMenuItemVWG(GetControlFactory(), item); //---------------Assert Precondition---------------- Assert.AreSame(subMenuItem, collapsibleMenuItemCollection.OwnerMenuItem); Assert.IsInstanceOf(typeof(CollapsibleMenuItemVWG), menuLeafItem); Assert.AreEqual(subMenuItem.CollapseButton.Height, subMenuItem.MinimumSize.Height); //---------------Execute Test ---------------------- collapsibleMenuItemCollection.Add(menuLeafItem); //---------------Test Result ----------------------- int expectedHeight = subMenuItem.CollapseButton.Height + menuLeafItem.Height; Assert.AreEqual(expectedHeight, subMenuItem.Height); Assert.AreEqual (expectedHeight, subMenuItem.ExpandedHeight, "this will be zero untill the first time this is collapsed"); }
public virtual void Test_AddLeafMenuItem_ShouldAddButtonToCollapsiblePanel() { //---------------Set up test pack------------------- string name = TestUtil.GetRandomString(); HabaneroMenu.Item ownerItem = new HabaneroMenu.Item(null, name); CollapsibleSubMenuItemVWG subMenuItem = new CollapsibleSubMenuItemVWG(GetControlFactory(), ownerItem); CollapsibleMenuItemCollectionVWG collapsibleMenuItemCollection = new CollapsibleMenuItemCollectionVWG (subMenuItem); HabaneroMenu.Item item = new HabaneroMenu.Item(null, name); CollapsibleMenuItemVWG menuLeafItem = new CollapsibleMenuItemVWG(GetControlFactory(), item); //---------------Assert Precondition---------------- Assert.AreSame(subMenuItem, collapsibleMenuItemCollection.OwnerMenuItem); Assert.IsInstanceOf(typeof(CollapsibleMenuItemVWG), menuLeafItem); Assert.AreEqual(1, subMenuItem.Controls.Count, "CollapsiblePanel always has header button"); Assert.AreEqual(0, collapsibleMenuItemCollection.Count); //---------------Execute Test ---------------------- collapsibleMenuItemCollection.Add(menuLeafItem); //---------------Test Result ----------------------- Assert.AreEqual(1, collapsibleMenuItemCollection.Count); Assert.AreEqual(2, subMenuItem.Controls.Count, "Should have additional button control"); IControlHabanero contentControl = subMenuItem.ContentControl; Assert.IsInstanceOf(typeof(IPanel), contentControl); Assert.AreEqual(1, contentControl.Controls.Count); Assert.IsInstanceOf(typeof(IButton), contentControl.Controls[0]); Assert.AreEqual(menuLeafItem.Dock, DockStyleVWG.GetDockStyle(DockStyle.Top)); }
public virtual void Test_AddSubMenuItem_ShouldAddCollapsiblePanel() { //---------------Set up test pack------------------- string name = TestUtil.GetRandomString(); CollapsibleMenuVWG menu = new CollapsibleMenuVWG(); CollapsibleMenuItemCollectionVWG collapsibleMenuItemCollection = new CollapsibleMenuItemCollectionVWG(menu); HabaneroMenu.Item item = new HabaneroMenu.Item(null, name); IMenuItem menuLeafItem = new CollapsibleSubMenuItemVWG(GetControlFactory(), item); //---------------Assert Precondition---------------- Assert.AreSame(menu, collapsibleMenuItemCollection.OwnerMenuItem); Assert.IsInstanceOf(typeof(CollapsibleSubMenuItemVWG), menuLeafItem); Assert.AreEqual(0, collapsibleMenuItemCollection.Count); //---------------Execute Test ---------------------- collapsibleMenuItemCollection.Add(menuLeafItem); //---------------Test Result ----------------------- Assert.AreEqual(1, collapsibleMenuItemCollection.Count); Assert.AreEqual(1, menu.PanelsList.Count); ICollapsiblePanel collapsiblePanel = menu.PanelsList[0]; Assert.AreEqual(name, collapsiblePanel.Text); }
public virtual void Test_CreateSubMenuItems_ShouldCreatePanelWithLeafMenu() { //---------------Set up test pack------------------- HabaneroMenu habaneroMenu = new HabaneroMenu("Main"); string subMenuName = TestUtil.GetRandomString(); habaneroMenu.AddSubMenu(subMenuName); habaneroMenu.AddSubMenu("SecondSubMenu"); CollapsibleMenuBuilderVWG menuBuilder = (CollapsibleMenuBuilderVWG)CreateMenuBuilder(); IMenuItem menuItem = new CollapsibleSubMenuItemVWG(GetControlFactory(), "Some Sub Menu"); //---------------Assert Precondition---------------- Assert.AreEqual(0, menuItem.MenuItems.Count); ICollapsiblePanel menuItemAsControl = (ICollapsiblePanel)menuItem; Assert.AreEqual(1, menuItemAsControl.Controls.Count); Assert.AreEqual(2, habaneroMenu.Submenus.Count); //---------------Execute Test ---------------------- menuBuilder.BuildSubMenu(habaneroMenu, menuItem.MenuItems); //---------------Test Result ----------------------- Assert.AreEqual(2, menuItem.MenuItems.Count); Assert.AreEqual(1, menuItemAsControl.Controls.Count); }
public virtual void Test_AddSubMenuItem_ShouldAddCollapsiblePanel() { //---------------Set up test pack------------------- string name = TestUtil.GetRandomString(); CollapsibleMenuVWG menu = new CollapsibleMenuVWG(); CollapsibleMenuItemCollectionVWG collapsibleMenuItemCollection = new CollapsibleMenuItemCollectionVWG(menu); HabaneroMenu.Item item = new HabaneroMenu.Item(null, name); IMenuItem menuLeafItem = new CollapsibleSubMenuItemVWG(GetControlFactory(), item); //---------------Assert Precondition---------------- Assert.AreSame(menu, collapsibleMenuItemCollection.OwnerMenuItem); Assert.IsInstanceOf(typeof(CollapsibleSubMenuItemVWG), menuLeafItem); Assert.AreEqual(0, collapsibleMenuItemCollection.Count); //---------------Execute Test ---------------------- collapsibleMenuItemCollection.Add(menuLeafItem); //---------------Test Result ----------------------- Assert.AreEqual(1, collapsibleMenuItemCollection.Count); Assert.AreEqual(1, menu.PanelsList.Count); ICollapsiblePanel collapsiblePanel = menu.PanelsList[0]; Assert.AreEqual(name, collapsiblePanel.Text); }
public virtual void Test_AddLeafMenuItem_ShouldIncreaseMinSizeOfCollapsiblePanel() { //---------------Set up test pack------------------- string name = TestUtil.GetRandomString(); HabaneroMenu.Item ownerItem = new HabaneroMenu.Item(null, name); CollapsibleSubMenuItemVWG subMenuItem = new CollapsibleSubMenuItemVWG(GetControlFactory(), ownerItem); CollapsibleMenuItemCollectionVWG collapsibleMenuItemCollection = new CollapsibleMenuItemCollectionVWG (subMenuItem); HabaneroMenu.Item item = new HabaneroMenu.Item(null, name); CollapsibleMenuItemVWG menuLeafItem = new CollapsibleMenuItemVWG(GetControlFactory(), item); //---------------Assert Precondition---------------- Assert.AreSame(subMenuItem, collapsibleMenuItemCollection.OwnerMenuItem); Assert.IsInstanceOf(typeof(CollapsibleMenuItemVWG), menuLeafItem); Assert.AreEqual(subMenuItem.CollapseButton.Height, subMenuItem.MinimumSize.Height); //---------------Execute Test ---------------------- collapsibleMenuItemCollection.Add(menuLeafItem); //---------------Test Result ----------------------- int expectedHeight = subMenuItem.CollapseButton.Height + menuLeafItem.Height; Assert.AreEqual(expectedHeight, subMenuItem.Height); Assert.AreEqual (expectedHeight, subMenuItem.ExpandedHeight, "this will be zero untill the first time this is collapsed"); }