2 // ImageImageListTest.cs: Test cases for ImageImageList.
5 // Ritvik Mayank (mritvik@novell.com)
7 // (C) 2005 Novell, Inc. (http://www.novell.com)
11 using System.Windows.Forms;
13 using System.Reflection;
14 using NUnit.Framework;
15 using System.Threading;
18 namespace MonoTests.System.Windows.Forms
22 public class ImageListTest
25 public void ImageListPropertyTest ()
27 Form myform = new Form ();
28 ImageList myimagelist = new ImageList ();
31 Assert.AreEqual (ColorDepth.Depth8Bit, myimagelist.ColorDepth, "#C1");
32 myimagelist.ColorDepth = ColorDepth.Depth32Bit;
33 Assert.AreEqual (ColorDepth.Depth32Bit, myimagelist.ColorDepth, "#C2");
34 Assert.AreEqual (0, myimagelist.Images.Count, "#C3");
36 Assert.AreEqual (false, myimagelist.HandleCreated, "#H1");
37 myimagelist.Handle.ToInt32 ();
38 Assert.AreEqual (true, myimagelist.HandleCreated, "#H2");
39 Assert.AreEqual ("System.IntPtr", myimagelist.Handle.GetType ().FullName, "#H3");
42 Image myImage = Image.FromFile("M.gif");
43 myimagelist.Images.Add (myImage);
44 Assert.AreEqual (1, myimagelist.Images.Count, "#I1");
45 Assert.AreEqual (16, myimagelist.ImageSize.Height, "#I2");
46 Assert.AreEqual (16, myimagelist.ImageSize.Width, "#I3");
47 // [MonoTODO ("Add test for ImageStream")]
48 // [MonoTODO ("Test for Draw Method (visual test)")]
51 Assert.AreEqual (Color.Transparent, myimagelist.TransparentColor, "#T1");
55 public void ToStringMethodTest ()
57 ImageList myimagelist = new ImageList ();
58 Assert.AreEqual ("System.Windows.Forms.ImageList Images.Count: 0, ImageSize: {Width=16, Height=16}", myimagelist.ToString (), "#T3");
62 public class ImageListRecreateHandleEventClass
64 static bool eventhandled = false;
65 public static void RecreateHandle_EventHandler (object sender, EventArgs e)
71 public void RecreateHandleEvenTest ()
73 Form myform = new Form ();
74 Graphics mygraphics = null;
75 ImageList myimagelist = new ImageList ();
76 Image myImage = Image.FromFile("M.gif");
77 myimagelist.Images.Add (myImage);
78 myimagelist.ColorDepth = ColorDepth.Depth8Bit;
79 myimagelist.ImageSize = new Size (50,50);
80 myimagelist.RecreateHandle += new EventHandler (RecreateHandle_EventHandler);
81 mygraphics = Graphics.FromHwnd(myform.Handle);
82 myimagelist.Draw(mygraphics, new Point(5, 5), 0);
83 myimagelist.ImageSize = new Size (100,100);
84 Assert.AreEqual (true, eventhandled, "#1");
86 myimagelist.Images.Add (myImage);
87 myimagelist.ColorDepth = ColorDepth.Depth32Bit;
88 Assert.AreEqual (true, eventhandled, "#2");