Author: yonik
Date: 2006-11-26 08:49:21 -0500 (Sun, 26 Nov 2006)
New Revision: 68474

Modified:
   trunk/mcs/class/System.Web/Test/System.Web.UI.WebControls/ChangeLog
   trunk/mcs/class/System.Web/Test/System.Web.UI.WebControls/CheckBoxListTest.cs
Log:


Modified: trunk/mcs/class/System.Web/Test/System.Web.UI.WebControls/ChangeLog
===================================================================
--- trunk/mcs/class/System.Web/Test/System.Web.UI.WebControls/ChangeLog 
2006-11-26 11:38:54 UTC (rev 68473)
+++ trunk/mcs/class/System.Web/Test/System.Web.UI.WebControls/ChangeLog 
2006-11-26 13:49:21 UTC (rev 68474)
@@ -1,3 +1,7 @@
+2006-11-26  Yoni Klain         <[EMAIL PROTECTED]>
+
+       * CheckBoxListTest.cs: added new test for 2.0 
+
 2006-11-23  Igor Zelmanovich   <[EMAIL PROTECTED]>
 
        * BoundFieldTest.cs: removed NotWorking attributes.

Modified: 
trunk/mcs/class/System.Web/Test/System.Web.UI.WebControls/CheckBoxListTest.cs
===================================================================
--- 
trunk/mcs/class/System.Web/Test/System.Web.UI.WebControls/CheckBoxListTest.cs   
    2006-11-26 11:38:54 UTC (rev 68473)
+++ 
trunk/mcs/class/System.Web/Test/System.Web.UI.WebControls/CheckBoxListTest.cs   
    2006-11-26 13:49:21 UTC (rev 68474)
@@ -35,6 +35,11 @@
 using System.Web;
 using System.Web.UI;
 using System.Web.UI.WebControls;
+using System.Drawing;
+using System.Collections;
+using MonoTests.SystemWeb.Framework;
+using MonoTests.stand_alone.WebHarness;
+using System.Collections.Specialized;
 
 namespace MonoTests.System.Web.UI.WebControls {
 
@@ -49,6 +54,74 @@
                {
                        return FindControl (name, offset);
                }
+
+               public string Render ()
+               {
+                       HtmlTextWriter writer = new HtmlTextWriter (new 
StringWriter ());
+                       base.Render (writer);
+                       return writer.InnerWriter.ToString ();
+               }
+
+               
+#if NET_2_0
+               public new bool HasFooter
+               {
+                       get
+                       {
+                               return base.HasFooter;
+                       }
+               }
+
+               public new bool HasHeader
+               {
+                       get
+                       {
+                               return base.HasHeader;
+                       }
+               }
+
+               public new bool HasSeparators
+               {
+                       get
+                       {
+                               return base.HasSeparators;
+                       }
+               }
+
+               public new int RepeatedItemCount
+               {
+                       get
+                       {
+                               return base.RepeatedItemCount;
+                       }
+               }
+
+               public new void RaisePostDataChangedEvent ()
+               {
+                       base.RaisePostDataChangedEvent ();
+               }
+
+               protected override Style GetItemStyle (ListItemType itemType, 
int repeatIndex)
+               {
+                       Style s = new Style();
+                       s.BackColor = Color.Red;
+                       s.BorderStyle = BorderStyle.Solid;
+                       WebTest.CurrentTest.UserData = "GetItemStyle";
+                       return s;
+               }
+
+               public Style DoGetItemStyle (ListItemType itemType, int 
repeatIndex)
+               {
+                       return base.GetItemStyle (itemType, repeatIndex);
+               }
+
+               public new string RenderItem (ListItemType itemType, int 
repeatIndex, RepeatInfo repeatInfo)
+               {
+                       HtmlTextWriter writer = new HtmlTextWriter (new 
StringWriter ());
+                       base.RenderItem(itemType,repeatIndex,repeatInfo,writer);
+                       return writer.InnerWriter.ToString ();
+               }
+#endif
        }
 
        [TestFixture]
@@ -57,7 +130,7 @@
                [Test]
                public void Defaults ()
                {
-                       CheckBoxList c = new CheckBoxList ();
+                       CheckBoxListPoker c = new CheckBoxListPoker ();
 
                        Assert.AreEqual (c.CellPadding, -1, "A1");
                        Assert.AreEqual (c.CellSpacing, -1, "A2");
@@ -67,9 +140,90 @@
                        Assert.AreEqual (c.RepeatLayout,
                                        RepeatLayout.Table, "A5");
                        Assert.AreEqual (c.TextAlign, TextAlign.Right, "A6");
+#if NET_2_0
+                       Assert.AreEqual (false, c.HasFooter, "HasFooter");
+                       Assert.AreEqual (false, c.HasHeader, "HasHeader");
+                       Assert.AreEqual (false, c.HasSeparators, 
"HasSeparators");
+                       Assert.AreEqual (0, c.RepeatedItemCount, 
"RepeatedItemCount");
+                       Assert.AreEqual (null, c.DoGetItemStyle 
(ListItemType.Item, 0), "GetItemStyle");
+#endif
                }
 
+#if NET_2_0
                [Test]
+               public void RaisePostDataChangedEvent ()
+               {
+                       CheckBoxListPoker c = new CheckBoxListPoker ();
+                       c.SelectedIndexChanged += new EventHandler 
(c_SelectedIndexChanged);
+                       Assert.AreEqual (false, eventSelectedIndexChanged, 
"RaisePostDataChangedEvent#1");
+                       c.RaisePostDataChangedEvent ();
+                       Assert.AreEqual (true, eventSelectedIndexChanged, 
"RaisePostDataChangedEvent#2");
+               }
+
+               bool eventSelectedIndexChanged;
+               void c_SelectedIndexChanged (object sender, EventArgs e)
+               {
+                       eventSelectedIndexChanged = true;
+               }
+
+               [Test]
+               [Category("NunitWeb")]
+               public void GetItemStyle ()
+               {
+                       WebTest t = new WebTest (PageInvoker.CreateOnLoad 
(GetItemStyle_Load));
+                       string html = t.Run ();
+                       string ctrl = HtmlDiff.GetControlFromPageHtml (html);
+                       if (ctrl == string.Empty)
+                               Assert.Fail ("CheckBoxList not created fail");
+                       Assert.AreEqual ("GetItemStyle", (string) t.UserData, 
"GetItemStyle not done");
+                       if ( ctrl.IndexOf("<td 
style=\"background-color:Red;border-style:Solid;\">") == -1)
+                               Assert.Fail ("CheckBoxList style not rendered");
+               }
+
+               public static void GetItemStyle_Load (Page p)
+               {
+                       CheckBoxListPoker c = new CheckBoxListPoker ();
+                       ListItem l1 = new ListItem ("item1", "value1");
+                       ListItem l2 = new ListItem ("item2", "value2");
+
+                       c.Items.Add (l1);
+                       c.Items.Add (l2);
+                       p.Form.Controls.Add(new 
LiteralControl(HtmlDiff.BEGIN_TAG));
+                       p.Form.Controls.Add (c);
+                       p.Form.Controls.Add(new 
LiteralControl(HtmlDiff.END_TAG));
+               }
+
+               [Test]
+               public void RenderItem ()
+               {
+                       CheckBoxListPoker c = new CheckBoxListPoker ();
+                       ListItem l1 = new ListItem ("item1", "value1");
+                       ListItem l2 = new ListItem ("item2", "value2");
+
+                       c.Items.Add (l1);
+                       c.Items.Add (l2);
+                       string html = c.RenderItem (ListItemType.Item, 0, null);
+                       HtmlDiff.AssertAreEqual ("<input id=\"0\" 
type=\"checkbox\" name=\"0\" /><label for=\"0\">item1</label>", html, 
"RenderItem#1");
+                       html = c.RenderItem (ListItemType.Item, 1, null);
+                       HtmlDiff.AssertAreEqual ("<input id=\"1\" 
type=\"checkbox\" name=\"1\" /><label for=\"1\">item2</label>", html, 
"RenderItem#2");
+               }
+
+               [Test]
+               public void RepeatedItemCount ()
+               {
+                       CheckBoxListPoker c = new CheckBoxListPoker ();
+                       ListItem l1 = new ListItem ("item1", "value1");
+                       ListItem l2 = new ListItem ("item2", "value2");
+                       Assert.AreEqual (0, c.RepeatedItemCount, 
"RepeatedItemCount#1");
+                       c.Items.Add (l1);
+                       c.Items.Add (l2);
+                       Assert.AreEqual (2, c.RepeatedItemCount, 
"RepeatedItemCount#2");
+               }
+
+#endif
+
+
+               [Test]
                public void CleanProperties ()
                {
                        CheckBoxList c = new CheckBoxList ();
@@ -260,7 +414,7 @@
                        sw.NewLine = "\n";
 
                        list.RenderControl (tw);
-                       Assert.AreEqual (expected, sw.ToString (), test);
+                       HtmlDiff.AssertAreEqual (expected, sw.ToString (), 
test);
                }
 
                [Test]
@@ -353,7 +507,15 @@
        </tr>
 </table>";
                        Render (c, exp, "C1");
-               }               
+               }       
+#if NET_2_0
+               [TestFixtureTearDown]
+               public void teardown ()
+               {
+                       WebTest.Unload ();
+               }
+#endif
+
                
        }
 }

_______________________________________________
Mono-patches maillist  -  [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches

Reply via email to