PropertyGridTest.cs 2.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. //
  2. // PropertyGridTest.cs: Test cases for PropertyGrid.
  3. //
  4. // Author:
  5. // Gert Driesen ([email protected])
  6. //
  7. // (C) 2006 Novell, Inc. (http://www.novell.com)
  8. //
  9. using System;
  10. using System.Windows.Forms;
  11. using NUnit.Framework;
  12. namespace MonoTests.System.Windows.Forms
  13. {
  14. [TestFixture]
  15. public class PropertyGridTest
  16. {
  17. [Test]
  18. public void SelectedObject ()
  19. {
  20. PropertyGrid pg = new PropertyGrid ();
  21. Button button1 = new Button ();
  22. Assert.IsNull (pg.SelectedObject, "#A1");
  23. Assert.IsNotNull (pg.SelectedObjects, "#A2");
  24. Assert.AreEqual (0, pg.SelectedObjects.Length, "#A3");
  25. pg.SelectedObject = button1;
  26. Assert.IsNotNull (pg.SelectedObject, "#B1");
  27. Assert.AreSame (button1, pg.SelectedObject, "#B2");
  28. Assert.IsNotNull (pg.SelectedObjects, "#B3");
  29. Assert.AreEqual (1, pg.SelectedObjects.Length, "#B4");
  30. Assert.AreSame (button1, pg.SelectedObjects [0], "#B5");
  31. }
  32. [Test]
  33. public void SelectedObject_Null ()
  34. {
  35. PropertyGrid pg = new PropertyGrid ();
  36. Assert.IsNull (pg.SelectedObject, "#A1");
  37. Assert.IsNotNull (pg.SelectedObjects, "#A2");
  38. Assert.AreEqual (0, pg.SelectedObjects.Length, "#A3");
  39. pg.SelectedObject = null;
  40. Assert.IsNull (pg.SelectedObject, "#B1");
  41. Assert.IsNotNull (pg.SelectedObjects, "#B2");
  42. Assert.AreEqual (0, pg.SelectedObjects.Length, "#B3");
  43. }
  44. [Test] // bug #79615
  45. public void SelectedObjects_Multiple ()
  46. {
  47. Form form = new Form ();
  48. Button button1 = new Button ();
  49. Button button2 = new Button ();
  50. PropertyGrid pg = new PropertyGrid ();
  51. pg.SelectedObjects = new object [] { button1, button2 };
  52. form.Controls.Add (pg);
  53. form.Controls.Add (button1);
  54. form.Controls.Add (button2);
  55. Assert.IsNotNull (pg.SelectedObjects, "#1");
  56. Assert.AreEqual (2, pg.SelectedObjects.Length, "#2");
  57. Assert.AreSame (button1, pg.SelectedObjects [0], "#3");
  58. Assert.AreSame (button2, pg.SelectedObjects [1], "#4");
  59. Assert.IsNotNull (pg.SelectedObject, "#5");
  60. Assert.AreSame (button1, pg.SelectedObject, "#6");
  61. form.Dispose ();
  62. }
  63. [Test]
  64. public void SelectedObjects_Null ()
  65. {
  66. PropertyGrid pg = new PropertyGrid ();
  67. Button button1 = new Button ();
  68. pg.SelectedObjects = new object [] { button1 };
  69. Assert.IsNotNull (pg.SelectedObjects, "#A1");
  70. Assert.AreEqual (1, pg.SelectedObjects.Length, "#A2");
  71. Assert.AreSame (button1, pg.SelectedObjects [0], "#A3");
  72. Assert.AreSame (button1, pg.SelectedObject, "#A4");
  73. pg.SelectedObjects = null;
  74. Assert.IsNotNull (pg.SelectedObjects, "#B1");
  75. Assert.AreEqual (0, pg.SelectedObjects.Length, "#B2");
  76. Assert.IsNull (pg.SelectedObject, "#B3");
  77. }
  78. [Test]
  79. [ExpectedException (typeof (ArgumentException))]
  80. public void SelectedObjects_Null_Item ()
  81. {
  82. PropertyGrid pg = new PropertyGrid ();
  83. Button button1 = new Button ();
  84. pg.SelectedObjects = new object [] { button1, null };
  85. }
  86. }
  87. }