Added some test-case for ImageListTest.cs, Form, Menu and GroupBox
[mono.git] / mcs / class / Managed.Windows.Forms / Test / System.Windows.Forms / MenuTest.cs
1 //
2 // MenuTest.cs: Test cases for Menu, MainMenu
3 //
4 // Author:
5 //   Ritvik Mayank (mritvik@novell.com)
6 //
7 // (C) 2005 Novell, Inc. (http://www.novell.com)
8 //
9
10 using System;
11 using System.Windows.Forms;
12 using System.Drawing;
13 using System.Reflection;
14 using NUnit.Framework;
15
16 [TestFixture]
17 public class MenuTest
18 {
19         [Test]
20         public void MenuPropertyTest ()
21         {
22                 Menu mymenu = new MainMenu ();
23                 Assert.AreEqual ("System.IntPtr", mymenu.Handle.GetType().FullName, "#1");
24                 Assert.AreEqual (false, mymenu.IsParent, "#2");
25                 Assert.AreEqual (null, mymenu.MdiListItem, "#3");
26                 Assert.AreEqual (0, mymenu.MenuItems.Count,"#4");
27                 mymenu.MenuItems.Add ("newmenu1");
28                 mymenu.MenuItems.Add ("newmenu2");
29                 Assert.AreEqual (2, mymenu.MenuItems.Count,"#5");
30                 MainMenu mymainmenu = new MainMenu ();
31                 Assert.AreEqual (RightToLeft.Inherit, mymainmenu.RightToLeft,"#6");
32         }
33
34         [Test]
35         public void GetMainMenuTest ()
36         {
37                 MainMenu mymainmenu = new MainMenu ();
38                 MenuItem mymenuitem = new MenuItem ();
39                 mymenuitem.Text = "menu 1";
40                 mymainmenu.MenuItems.Add (mymenuitem);
41                 Assert.AreEqual (mymainmenu, mymenuitem.GetMainMenu (), "#7");
42         }       
43
44         [Test]
45         public void MergeMenuTest ()
46         {
47                 Form myform = new Form ();
48                 Menu mymenu = new MainMenu ();
49                 MainMenu mymainmenu1 = new MainMenu ();
50                 MainMenu mymainmenu2 = new MainMenu ();
51                 MenuItem mymenuitem1 = new MenuItem ();
52                 MenuItem mymenuitem2 = new MenuItem ();
53                 mymenuitem1.Text = "A";
54                 mymenuitem2.Text = "B";
55                 mymainmenu1.MenuItems.Add (mymenuitem1);
56                 mymainmenu2.MenuItems.Add (mymenuitem2);
57                 mymainmenu1.MergeMenu (mymainmenu2);
58             Assert.AreEqual (2, mymainmenu1.MenuItems.Count, "#8");
59         }
60         
61         [Test]
62         public void CloneMenuTest ()
63         {
64                 Form myform = new Form ();
65                 Menu mymenu = new MainMenu ();
66                 MainMenu mymainmenu1 = new MainMenu ();
67                 MenuItem menuitem1 = new MenuItem ();
68                 MenuItem menuitem2 = new MenuItem ();
69                 menuitem1.Text = "item1";
70                 menuitem2.Text = "item2";
71                 mymainmenu1.MenuItems.Add (menuitem1);
72                 mymainmenu1.MenuItems.Add (menuitem2);
73                 MainMenu mymainmenu2 = mymainmenu1.CloneMenu ();
74                 Assert.AreEqual ("item1", mymainmenu2.MenuItems[0].Text, "#9");
75         }
76         
77         [Test]
78         public void GetFormTest ()
79         {
80                 Form myform = new Form ();
81                 myform.Name = "New Form";
82                 Menu mymenu = new MainMenu ();
83                 MainMenu mymainmenu1 = new MainMenu ();
84                 MenuItem menuitem1 = new MenuItem ();
85                 menuitem1.Text = "item1";
86                 mymainmenu1.MenuItems.Add (menuitem1);
87                 myform.Menu = mymainmenu1;
88                 Assert.AreEqual ("New Form", mymainmenu1.GetForm().Name, "#10");
89         }
90 }