ImageListTest.cs 2.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. //
  2. // ImageImageListTest.cs: Test cases for ImageImageList.
  3. //
  4. // Author:
  5. // Ritvik Mayank ([email protected])
  6. //
  7. // (C) 2005 Novell, Inc. (http://www.novell.com)
  8. //
  9. using System;
  10. using System.Windows.Forms;
  11. using System.Drawing;
  12. using System.Reflection;
  13. using NUnit.Framework;
  14. using System.Threading;
  15. namespace MonoTests.System.Windows.Forms
  16. {
  17. [TestFixture]
  18. public class ImageListTest
  19. {
  20. [Test]
  21. public void ImageListPropertyTest ()
  22. {
  23. ImageList myimagelist = new ImageList ();
  24. // C
  25. Assert.AreEqual (ColorDepth.Depth8Bit, myimagelist.ColorDepth, "#C1");
  26. myimagelist.ColorDepth = ColorDepth.Depth32Bit;
  27. Assert.AreEqual (ColorDepth.Depth32Bit, myimagelist.ColorDepth, "#C2");
  28. Assert.AreEqual (0, myimagelist.Images.Count, "#C3");
  29. // H
  30. Assert.AreEqual (false, myimagelist.HandleCreated, "#H1");
  31. myimagelist.Handle.ToInt32 ();
  32. Assert.AreEqual (true, myimagelist.HandleCreated, "#H2");
  33. Assert.AreEqual ("System.IntPtr", myimagelist.Handle.GetType ().FullName, "#H3");
  34. // I
  35. Image myImage = Image.FromFile("M.gif");
  36. myimagelist.Images.Add (myImage);
  37. Assert.AreEqual (1, myimagelist.Images.Count, "#I1");
  38. Assert.AreEqual (16, myimagelist.ImageSize.Height, "#I2");
  39. Assert.AreEqual (16, myimagelist.ImageSize.Width, "#I3");
  40. // [MonoTODO ("Add test for ImageStream")]
  41. // [MonoTODO ("Test for Draw Method (visual test)")]
  42. // T
  43. Assert.AreEqual (Color.Transparent, myimagelist.TransparentColor, "#T1");
  44. }
  45. [Test]
  46. public void ToStringMethodTest ()
  47. {
  48. ImageList myimagelist = new ImageList ();
  49. Assert.AreEqual ("System.Windows.Forms.ImageList Images.Count: 0, ImageSize: {Width=16, Height=16}", myimagelist.ToString (), "#T3");
  50. }
  51. [TestFixture]
  52. public class ImageListRecreateHandleEventClass
  53. {
  54. static bool eventhandled = false;
  55. public static void RecreateHandle_EventHandler (object sender, EventArgs e)
  56. {
  57. eventhandled = true;
  58. }
  59. [Test]
  60. public void RecreateHandleEvenTest ()
  61. {
  62. Form myform = new Form ();
  63. myform.ShowInTaskbar = false;
  64. Graphics mygraphics = null;
  65. ImageList myimagelist = new ImageList ();
  66. Image myImage = Image.FromFile("M.gif");
  67. myimagelist.Images.Add (myImage);
  68. myimagelist.ColorDepth = ColorDepth.Depth8Bit;
  69. myimagelist.ImageSize = new Size (50,50);
  70. myimagelist.RecreateHandle += new EventHandler (RecreateHandle_EventHandler);
  71. mygraphics = Graphics.FromHwnd(myform.Handle);
  72. myimagelist.Draw(mygraphics, new Point(5, 5), 0);
  73. myimagelist.ImageSize = new Size (100,100);
  74. Assert.AreEqual (true, eventhandled, "#1");
  75. eventhandled = false;
  76. myimagelist.Images.Add (myImage);
  77. myimagelist.ColorDepth = ColorDepth.Depth32Bit;
  78. Assert.AreEqual (true, eventhandled, "#2");
  79. myform.Dispose ();
  80. }
  81. }
  82. }
  83. }