namespace MonoTests.System.Windows.Forms\r
{\r
[TestFixture]\r
- public class ToolStripDropDownTests\r
+ public class ToolStripDropDownTests : TestHelper\r
{\r
[Test]\r
public void Constructor ()\r
Assert.AreEqual ("System.Windows.Forms.ToolStripDropDown+ToolStripDropDownAccessibleObject", tsdd.AccessibilityObject.GetType ().ToString (), "A14");\r
}\r
\r
+ [Test]\r
+ public void Layout ()\r
+ {\r
+ ToolStripDropDown drop_down = new ToolStripDropDown ();\r
+ drop_down.Items.Add (new ToolStripVariableSizeItem ());\r
+ drop_down.PerformLayout ();\r
+\r
+ // We want to be sure the DropDown is using the size provided\r
+ // by GetPreferredSize, not DefaultSize, and since the extra padding/margin\r
+ // can change by some few pixels, we do a light check\r
+ Assert.AreEqual (true, drop_down.Size.Width >= 100, "A1");\r
+ Assert.AreEqual (true, drop_down.Size.Height >= 100, "A2");\r
+ }\r
+\r
+ private class ToolStripVariableSizeItem : ToolStripItem {\r
+\r
+ public override Size GetPreferredSize (Size constrainingSize) \r
+ {\r
+ return new Size (100, 100);\r
+ }\r
+\r
+ protected override Size DefaultSize {\r
+ get {\r
+ return new Size (33, 33);\r
+ }\r
+ }\r
+ }\r
+\r
[Test]\r
public void ProtectedProperties ()\r
{\r
public new DockStyle DefaultDock { get { return base.DefaultDock; } }\r
public new Padding DefaultPadding { get { return base.DefaultPadding; } }\r
public new bool DefaultShowItemToolTips { get { return base.DefaultShowItemToolTips; } }\r
- //public new Size MaxItemSize { get { return base.MaxItemSize; } }\r
+ public new Size MaxItemSize { get { return base.MaxItemSize; } }\r
public new bool TopMost { get { return base.TopMost; } }\r
public LayoutSettings PublicCreateLayoutSettings (ToolStripLayoutStyle style) { return base.CreateLayoutSettings (style); }\r
}\r
}\r
}\r
-#endif
\ No newline at end of file
+#endif\r