Răsfoiți Sursa

2005-07-04 Ritvik Mayank <[email protected]>

        * Test/System.Windows.Forms/ListBoxTest.cs : added tests for ListBox properties and methods
	* Test/System.Windows.Forms/ListBoxEventTest.cs : added tests for ListBox events
	* System.Windows.Forms_test.dll.sources : added ListBox test in test source file.

svn path=/trunk/mcs/; revision=46899
Ritvik Mayank 20 ani în urmă
părinte
comite
f2c0b58a2b

+ 6 - 0
mcs/class/Managed.Windows.Forms/ChangeLog

@@ -1,3 +1,9 @@
+
+2005-07-04  Ritvik Mayank  <[email protected]>
+
+	* System.Windows.Forms_test.dll.sources : Added ListBoxTest.cs and 
+	  ListBoxEventTest.cs for ListBox tests.
+
 2005-06-15  Peter Bartok  <[email protected]>
 
 	* System.Windows.Forms.dll.sources: Added MWFCategoryAttribute.cs and

+ 2 - 0
mcs/class/Managed.Windows.Forms/System.Windows.Forms_test.dll.sources

@@ -6,3 +6,5 @@ System.Windows.Forms/ControlTest.cs
 System.Windows.Forms/ControlEventTest.cs
 System.Windows.Forms/TextBoxTest.cs
 System.Windows.Forms/ButtonTest.cs
+System.Windows.Forms/ListBoxTest.cs
+System.Windows.Forms/ListBoxEventTest.cs

+ 5 - 0
mcs/class/Managed.Windows.Forms/Test/System.Windows.Forms/ChangeLog

@@ -1,4 +1,9 @@
 
+2005-07-04  Ritvik Mayank  <[email protected]>
+	
+	* ListBoxTest.cs : Test Cases for ListBox Properties and Methods
+	* ListBoxEventTest.cs  : Test Cases for ListBox Events
+
 2005-06-13  Ritvik Mayank  <[email protected]>
 	
 	* TextBoxTest.cs : Test Cases for TextBox 

+ 63 - 0
mcs/class/Managed.Windows.Forms/Test/System.Windows.Forms/ListBoxEventTest.cs

@@ -0,0 +1,63 @@
+//
+// Copyright (c) 2005 Novell, Inc.
+//
+// Authors:
+//      Ritvik Mayank ([email protected])
+//
+
+using System;
+using NUnit.Framework;
+using System.Windows.Forms;
+using System.Drawing;
+
+namespace ListBoxEvent
+{
+	[TestFixture]
+	public class ListBoxDrawItemEvent
+	{	
+		static bool eventhandled = false;
+		public void DrawItem_EventHandler(object sender,DrawItemEventArgs e)
+		{
+			eventhandled = true;
+		}
+	
+		[Test]
+		public void DrawItemTest()
+		{
+			Form myform = new Form ();
+			ListBox lb1 = new ListBox ();
+			lb1.Items.Add("A");
+			// Test DrawItem Event
+			lb1.DrawItem += new System.Windows.Forms.DrawItemEventHandler(DrawItem_EventHandler);		
+			lb1.DrawMode = System.Windows.Forms.DrawMode.OwnerDrawFixed;
+			myform.Controls.Add(lb1);
+			myform.Show ();
+			Assert.AreEqual(true, eventhandled, "#A1");
+		}
+
+		[TestFixture]
+			public class ListBoxMeasureItemEvent
+		{
+			static bool eventhandled = false;
+			public void MeasureItem_EventHandler(object sender,MeasureItemEventArgs e)
+			{
+				eventhandled = true;
+			}		
+			
+			[Test]
+			public void MeasureItemTest()
+			{
+				Form myform = new Form ();
+				myform.Visible = true;
+				ListBox lb1 = new ListBox();
+				lb1.Items.Add("B");
+				lb1.Visible = true;
+				myform.Controls.Add(lb1);
+				// Test MeasureItem Event
+				lb1.MeasureItem += new System.Windows.Forms.MeasureItemEventHandler(MeasureItem_EventHandler);		
+				lb1.DrawMode = System.Windows.Forms.DrawMode.OwnerDrawVariable;
+				Assert.AreEqual(true, eventhandled, "#A2");
+			}
+		}
+	}
+}

+ 160 - 0
mcs/class/Managed.Windows.Forms/Test/System.Windows.Forms/ListBoxTest.cs

@@ -0,0 +1,160 @@
+//
+// Copyright (c) 2005 Novell, Inc.
+//
+// Authors:
+//		Ritvik Mayank ([email protected])
+//
+
+using System;
+using System.Windows.Forms;
+using System.Drawing;
+using System.Reflection;
+using NUnit.Framework;
+
+[TestFixture]
+public class ListBoxTest
+{
+	[Test]
+	public void ListBoxPropertyTest()
+	{
+		ListBox lb1 = new ListBox();
+		Assert.AreEqual(0, lb1.ColumnWidth, "#1");
+		Assert.AreEqual(DrawMode.Normal, lb1.DrawMode, "#2");
+		Assert.AreEqual(0 , lb1.HorizontalExtent, "#3");
+		Assert.AreEqual(false , lb1.HorizontalScrollbar, "#4");
+		Assert.AreEqual(true , lb1.IntegralHeight, "#5");
+		Assert.AreEqual(13 , lb1.ItemHeight, "#6");
+		lb1.Items.Add("a");
+		lb1.Items.Add("b");
+		lb1.Items.Add("c");
+		Assert.AreEqual("System.Windows.Forms.ListBox+ObjectCollection",  lb1.Items.ToString(), "#7");
+		Assert.AreEqual(false , lb1.MultiColumn, "#8");
+		Assert.AreEqual(46 , lb1.PreferredHeight, "#9");
+		Assert.AreEqual(RightToLeft.No , lb1.RightToLeft, "#10");
+		Assert.AreEqual(false , lb1.ScrollAlwaysVisible, "#11");
+		Assert.AreEqual(-1 , lb1.SelectedIndex, "#12");
+		Assert.AreEqual("System.Windows.Forms.ListBox+SelectedIndexCollection", lb1.SelectedIndices.ToString(), "#13");
+		Assert.AreEqual(null , lb1.SelectedItem, "#14");
+		Assert.AreEqual("System.Windows.Forms.ListBox+SelectedObjectCollection" , lb1.SelectedItems.ToString(), "#15");
+		Assert.AreEqual(SelectionMode.One , lb1.SelectionMode, "#16");
+		Assert.AreEqual(false , lb1.Sorted, "#17");
+		Assert.AreEqual("" , lb1.Text, "#18");
+		Assert.AreEqual(0 , lb1.TopIndex, "#19");
+		Assert.AreEqual(true , lb1.UseTabStops, "#20");
+	}
+
+	[Test]
+	public void BeginEndUpdateTest()
+	{
+		Form f = new Form ();
+		f.Visible = true;
+		ListBox lb1 = new ListBox();
+		lb1.Items.Add("A");
+		lb1.Visible = true;
+		f.Controls.Add(lb1);
+		lb1.BeginUpdate();
+		for(int x = 1; x < 5000; x++)
+		{
+			lb1.Items.Add("Item " + x.ToString());   
+		}
+		lb1.EndUpdate();
+		lb1.SetSelected(1, true);
+		lb1.SetSelected(3, true);
+		Assert.AreEqual("Item 3", lb1.SelectedItems[0].ToString(),"#21");
+	}		
+
+	[Test]
+	public void ClearSelectedTest()
+	{
+		Form f = new Form ();
+		f.Visible = true;
+		ListBox lb1 = new ListBox();
+		lb1.Items.Add("A");
+		lb1.Visible = true;
+		f.Controls.Add(lb1);
+		lb1.SetSelected(0, true);
+		Assert.AreEqual("A", lb1.SelectedItems[0].ToString(),"#22");
+		lb1.ClearSelected();
+		Assert.AreEqual(0, lb1.SelectedItems.Count,"#23");
+	}
+
+	[Test]
+	public void FindStringTest()
+	{
+		ListBox lb1 = new ListBox();
+		lb1.Items.Add("ABCD");
+		lb1.Items.Add("DABCD");
+		lb1.Items.Add("ABDC");
+		lb1.SelectionMode = SelectionMode.MultiExtended;
+		int x = -1;
+		x = lb1.FindString("ABC", x );
+		lb1.SetSelected(x,true);
+		Assert.AreEqual("ABCD", lb1.SelectedItems[0],"#24");
+		Assert.AreEqual(1, lb1.SelectedItems.Count,"#25");
+	}
+
+	[Test]
+	public void FindExactTest()
+	{
+		ListBox lb2 = new ListBox();
+		lb2.Items.Add("ABC");
+		lb2.Items.Add("DEFGHI");
+		lb2.Items.Add("DEF");
+		int x = -1;
+		x = lb2.FindStringExact("DEF", x);
+		lb2.SetSelected(x,true);
+		Assert.AreEqual(1, lb2.SelectedItems.Count,"#26");
+		Assert.AreEqual("DEF", lb2.SelectedItems[0],"#27");
+	}
+
+  	[Test]
+	public void GetItemHeightTest()
+	{
+		Form f = new Form ();
+		ListBox lb1 = new ListBox();
+		lb1.Visible = true;
+		f.Controls.Add(lb1);
+		lb1.Items.Add("A");
+		Assert.AreEqual(13, lb1.GetItemHeight(0) , "#28");
+	}
+
+	[Test]
+	public void GetItemRectangleTest()
+	{
+		Form f = new Form ();
+		f.Visible = true;
+		ListBox lb1 = new ListBox();
+		lb1.Visible = true;
+		f.Controls.Add(lb1);
+		lb1.Items.Add("A");
+		//Assert.AreEqual(Rectangle.Equals(116,13), lb1.GetItemRectangle(0) , "#29");
+	}
+
+	[Test]
+	public void GetSelectedTest()
+	{
+		ListBox lb1 = new ListBox();
+		lb1.Items.Add("A");
+		lb1.Items.Add("B");
+		lb1.Items.Add("C");
+		lb1.Items.Add("D");
+		lb1.Sorted = true;
+		lb1.SetSelected(0,true);
+		lb1.SetSelected(2,true);
+		lb1.TopIndex=0;
+		Assert.AreEqual(true , lb1.GetSelected(0), "#30");
+		lb1.SetSelected(2,false);
+		Assert.AreEqual(false , lb1.GetSelected(2), "#31");
+	}
+
+	[Test]
+	public void IndexFromPointTest ()
+	{
+		ListBox lb1 = new ListBox();
+		lb1.Items.Add("A");
+		Point pt = new Point(100,100);
+		int index = lb1.IndexFromPoint(pt);
+		Assert.AreEqual(-1 , lb1.IndexFromPoint(100,100), "#32");
+	}
+
+}