public void Methods ()
		{
			ListItemCollection	c;
			ListItem		i;
			ListItem		i2;

			c = new ListItemCollection();
			Assert.AreEqual (0, c.Count, "T1");

			i = new ListItem("Item 1", "10");
			c.Add(i);
			Assert.AreEqual (1, c.Count, "T2");

			i = new ListItem("This is item 2", "20");
			c.Add(i);
			Assert.AreEqual (2, c.Count, "T3");

			Assert.AreEqual (null, c.FindByText(" is "), "T4");
			Assert.AreEqual (i.Text, c.FindByText("This is item 2").Text, "T5");
			Assert.AreSame (i, c.FindByText("This is item 2"), "T6");
			Assert.AreEqual (1, c.IndexOf(c.FindByText("This is item 2")), "T7");
			Assert.AreEqual (1, c.IndexOf(c.FindByValue("20")), "T8");

			i = new ListItem("Item 3", "30");
			Assert.IsFalse(c.Contains(i), "T9");
			c.Add(i);
			Assert.IsTrue(c.Contains(i), "T10");

			i = new ListItem("Forth", "40");
			i2 = new ListItem("Fifth", "50");
			c.AddRange(new ListItem[] {i, i2});
			Assert.AreEqual (5, c.Count, "T11");

			c.RemoveAt(1);
			Assert.AreEqual (4, c.Count, "T12");
			Assert.AreEqual (null, c.FindByText("This is item 2"), "T13");

			c.Clear();
			Assert.AreEqual (0, c.Count, "T13");
		}
		public void AssignmentTest () {
			ListItemCollection	c;
			ListItem		i;

			c = new ListItemCollection();
			i = new ListItem("Text", "Value");

			c.Add(i);

			i = new ListItem("Blah", "Argl");
			((IList)c)[0] = i;

			Assert.AreEqual("Blah", c.FindByText("Blah").ToString(), "AS1");
			Assert.AreEqual(1, c.Count, "AS2");
		}
		public void ViewState () {
			ListItemCollection	c;
			ListItemCollection	c2;
			ListItem		i;
			ListItem		i2;
			object			state;

			c = new ListItemCollection();
			i = new ListItem("Item 1", "1");
			i2 = new ListItem("Item 2", "2");

			((IStateManager)c).TrackViewState();

			c.Add(i);
			c.Add(i2);
			Assert.AreEqual (2, c.Count, "V1");

			state = ((IStateManager)c).SaveViewState();

			c2 = new ListItemCollection();
			((IStateManager)c2).LoadViewState(state);
			Assert.AreEqual (2, c2.Count, "V2");
			Assert.AreEqual ("Item 1", c2.FindByText("Item 1").ToString(), "V3");
			Assert.AreEqual ("Item 2", c2.FindByText("Item 2").ToString(), "V4");
			Assert.AreEqual (false, c2.IndexOf(i) == c2.IndexOf(i2), "V5");
		}
		public void AddTest () 
		{
			ListItemCollection	c;
			ListItem		i;

			c = new ListItemCollection();

			c.Add("string");

			Assert.AreEqual("string", c.FindByText("string").ToString(), "A1");

			c.Add((string)null);
			c.Add((ListItem)null);
			Assert.AreEqual(3, c.Count, "A2");
		}