using MonoTests.stand_alone.WebHarness;
using System.Text.RegularExpressions;
using System.Reflection;
-using System.Threading;\r
+using System.Threading;
public static int GetCount () {
return GetList ().Count;
- }\r
- }\r
-\r
- public class DS : ObjectDataSource\r
- {\r
- public static List<string> GetList ()\r
- {\r
- List<string> list = new List<string> ();\r
- list.Add ("Norway");\r
- list.Add ("Sweden");\r
- list.Add ("France");\r
- list.Add ("Italy");\r
- list.Add ("Israel");\r
- list.Add ("Russia");\r
- return list;\r
- }\r
-\r
- public void DoRaiseDataSourceChangedEvent (EventArgs e)\r
- {\r
- RaiseDataSourceChangedEvent (e);\r
- }\r
+ }
+ }
+
+ public class DS : ObjectDataSource
+ {
+ public static List<string> GetList ()
+ {
+ List<string> list = new List<string> ();
+ list.Add ("Norway");
+ list.Add ("Sweden");
+ list.Add ("France");
+ list.Add ("Italy");
+ list.Add ("Israel");
+ list.Add ("Russia");
+ return list;
+ }
+
+ public void DoRaiseDataSourceChangedEvent (EventArgs e)
+ {
+ RaiseDataSourceChangedEvent (e);
+ }
}
public class Poker : FormView {
public bool ensureDataBound=false;
public bool controlHierarchy=false;
bool _onPageIndexChangingCalled = false;
- bool _onPageIndexChangedCalled = false;\r
+ bool _onPageIndexChangedCalled = false;
public Poker () {
- TrackViewState ();\r
+ TrackViewState ();
}
public object SaveState () {
public void LoadState (object state) {
LoadViewState (state);
- }\r
-\r
+ }
+
public HtmlTextWriterTag PokerTagKey
{
get { return base.TagKey; }
{
base.ExtractRowValues (filedValues, includeKeys);
- }\r
-\r
- public bool IsRequiresDataBinding ()\r
- {\r
- return base.RequiresDataBinding;\r
+ }
+
+ public bool IsRequiresDataBinding ()
+ {
+ return base.RequiresDataBinding;
}
protected override void InitializePager (FormViewRow row, PagedDataSource pageData)
WebTest.CopyResource (GetType (), "FormViewInsertEditDelete.aspx", "FormViewInsertEditDelete.aspx");
#endif
- }\r
+ }
[Test]
Assert.AreEqual (7, fv.DoCreateChildControls (myds, false), "CreateChildControlFromViewState");
myds.Remove ("item7");
- }\r
-\r
- class MyEnumSource : IEnumerable\r
- {\r
- int _count;\r
-\r
- public MyEnumSource (int count) {\r
- _count = count;\r
- }\r
-\r
- #region IEnumerable Members\r
-\r
- public IEnumerator GetEnumerator () {\r
-\r
- for (int i = 0; i < _count; i++)\r
- yield return i;\r
- }\r
-\r
- #endregion\r
- }\r
-\r
- [Test]\r
- public void FormView_CreateChildControls2 ()\r
- {\r
- Poker fv = new Poker ();\r
- fv.Page = new Page ();\r
- fv.DataSource = new MyEnumSource (20);\r
- fv.DataBind ();\r
- \r
- Assert.AreEqual (20, fv.PageCount, "CreateChildControls#0");\r
-\r
- Assert.AreEqual (0, fv.DoCreateChildControls (new MyEnumSource (0), true), "CreateChildControls#1");\r
- Assert.AreEqual (20, fv.DoCreateChildControls (new MyEnumSource (20), true), "CreateChildControls#2");\r
-\r
- Assert.AreEqual (0, fv.DoCreateChildControls (new object [0], false), "CreateChildControls#3");\r
- Assert.AreEqual (5, fv.DoCreateChildControls (new object [5], false), "CreateChildControls#4");\r
- }\r
+ }
+
+ class MyEnumSource : IEnumerable
+ {
+ int _count;
+
+ public MyEnumSource (int count) {
+ _count = count;
+ }
+
+ #region IEnumerable Members
+
+ public IEnumerator GetEnumerator () {
+
+ for (int i = 0; i < _count; i++)
+ yield return i;
+ }
+
+ #endregion
+ }
+
+ [Test]
+ public void FormView_CreateChildControls2 ()
+ {
+ Poker fv = new Poker ();
+ fv.Page = new Page ();
+ fv.DataSource = new MyEnumSource (20);
+ fv.DataBind ();
+
+ Assert.AreEqual (20, fv.PageCount, "CreateChildControls#0");
+
+ Assert.AreEqual (0, fv.DoCreateChildControls (new MyEnumSource (0), true), "CreateChildControls#1");
+ Assert.AreEqual (20, fv.DoCreateChildControls (new MyEnumSource (20), true), "CreateChildControls#2");
+
+ Assert.AreEqual (0, fv.DoCreateChildControls (new object [0], false), "CreateChildControls#3");
+ Assert.AreEqual (5, fv.DoCreateChildControls (new object [5], false), "CreateChildControls#4");
+ }
[Test]
public void FormView_CreateDataSourceSelectArguments ()
Assert.AreEqual (true, pageIndexChanging, "AfterLastPageBubbleEvent");
Assert.AreEqual (5, newPageIndex, "FirstPageIndex");
- }\r
-\r
- [Test]\r
- [Category("NunitWeb")]\r
- [Category ("NotWorking")]\r
- public void FormView_DataSourceChangedEvent ()\r
- {\r
- WebTest t = new WebTest();\r
- PageDelegates pd = new PageDelegates ();\r
- pd.Load = FormView_Init;\r
- pd.PreRenderComplete = FormView_Load;\r
- t.Invoker = new PageInvoker (pd);\r
- t.Run ();\r
- FormRequest fr = new FormRequest (t.Response, "form1");\r
- fr.Controls.Add ("__EVENTTARGET");\r
- fr.Controls.Add ("__EVENTARGUMENT");\r
- fr.Controls["__EVENTTARGET"].Value = "";\r
- fr.Controls["__EVENTARGUMENT"].Value = "";\r
- t.Request = fr;\r
- t.Run ();\r
- if (t.UserData == null)\r
- Assert.Fail ("DataSourceChangedEvent#1");\r
- Assert.AreEqual ("Data_rebounded", t.UserData.ToString (), "DataSourceChangedEvent#2");\r
- }\r
-\r
- #region FormView_DataSourceChangedEvent\r
- public static void FormView_Init(Page p)\r
- {\r
- Poker fv = new Poker ();\r
- DS data = new DS ();\r
- p.Controls.Add (fv);\r
- p.Controls.Add (data);\r
- data.TypeName = typeof (DS).AssemblyQualifiedName;\r
- data.SelectMethod = "GetList";\r
- data.ID = "Data";\r
- fv.DataBinding += new EventHandler (data_DataBinding);\r
- fv.DataSourceID = "Data";\r
- }\r
-\r
- public static void FormView_Load (Page p)\r
- {\r
- if (p.IsPostBack) {\r
- DS data = (DS) p.FindControl ("Data") ;\r
- if (data == null)\r
- Assert.Fail ("Data soource control not created#1");\r
- data.DoRaiseDataSourceChangedEvent (new EventArgs ());\r
- }\r
- }\r
-\r
- public static void data_DataBinding (object sender, EventArgs e)\r
- {\r
- if (((WebControl) sender).Page.IsPostBack) \r
- WebTest.CurrentTest.UserData = "Data_rebounded";\r
- }\r
- #endregion\r
-\r
+ }
+
+ [Test]
+ [Category("NunitWeb")]
+ [Category ("NotWorking")]
+ public void FormView_DataSourceChangedEvent ()
+ {
+ WebTest t = new WebTest();
+ PageDelegates pd = new PageDelegates ();
+ pd.Load = FormView_Init;
+ pd.PreRenderComplete = FormView_Load;
+ t.Invoker = new PageInvoker (pd);
+ t.Run ();
+ FormRequest fr = new FormRequest (t.Response, "form1");
+ fr.Controls.Add ("__EVENTTARGET");
+ fr.Controls.Add ("__EVENTARGUMENT");
+ fr.Controls["__EVENTTARGET"].Value = "";
+ fr.Controls["__EVENTARGUMENT"].Value = "";
+ t.Request = fr;
+ t.Run ();
+ if (t.UserData == null)
+ Assert.Fail ("DataSourceChangedEvent#1");
+ Assert.AreEqual ("Data_rebounded", t.UserData.ToString (), "DataSourceChangedEvent#2");
+ }
+
+ #region FormView_DataSourceChangedEvent
+ public static void FormView_Init(Page p)
+ {
+ Poker fv = new Poker ();
+ DS data = new DS ();
+ p.Controls.Add (fv);
+ p.Controls.Add (data);
+ data.TypeName = typeof (DS).AssemblyQualifiedName;
+ data.SelectMethod = "GetList";
+ data.ID = "Data";
+ fv.DataBinding += new EventHandler (data_DataBinding);
+ fv.DataSourceID = "Data";
+ }
+
+ public static void FormView_Load (Page p)
+ {
+ if (p.IsPostBack) {
+ DS data = (DS) p.FindControl ("Data") ;
+ if (data == null)
+ Assert.Fail ("Data soource control not created#1");
+ data.DoRaiseDataSourceChangedEvent (new EventArgs ());
+ }
+ }
+
+ public static void data_DataBinding (object sender, EventArgs e)
+ {
+ if (((WebControl) sender).Page.IsPostBack)
+ WebTest.CurrentTest.UserData = "Data_rebounded";
+ }
+ #endregion
+
[Test]
public void FormView_Events ()
{
fv.Page = new Page ();
PostBackOptions options = ((IPostBackContainer) fv).GetPostBackOptions (null);
}
+
+ [Test]
+ [Category ("NunitWeb")]
+ public void FormView_RequiresDataBinding () {
+ PageDelegates delegates = new PageDelegates ();
+ delegates.LoadComplete = FormView_RequiresDataBinding_LoadComplete;
+ PageInvoker invoker = new PageInvoker (delegates);
+ WebTest t = new WebTest (invoker);
+ t.Run ();
+ }
+
+ public static void FormView_RequiresDataBinding_LoadComplete (Page p) {
+ Poker view = new Poker ();
+ p.Form.Controls.Add (view);
+
+ view.DataSource = new string [] { "A", "B", "C" };
+ view.DataBind ();
+
+ Assert.AreEqual (false, view.GetRequiresDataBinding ());
+
+ view.PagerTemplate = new CompiledTemplateBuilder (BuildTemplateMethod);
+ Assert.AreEqual (false, view.GetRequiresDataBinding (), "PagerTemplate was set");
+
+ view.EmptyDataTemplate = new CompiledTemplateBuilder (BuildTemplateMethod);
+ Assert.AreEqual (false, view.GetRequiresDataBinding (), "EmptyDataTemplate was set");
+
+ view.HeaderTemplate = new CompiledTemplateBuilder (BuildTemplateMethod);
+ Assert.AreEqual (false, view.GetRequiresDataBinding (), "HeaderTemplate was set");
+
+ view.FooterTemplate = new CompiledTemplateBuilder (BuildTemplateMethod);
+ Assert.AreEqual (false, view.GetRequiresDataBinding (), "FooterTemplate was set");
+
+ view.EditItemTemplate = new CompiledTemplateBuilder (BuildTemplateMethod);
+ Assert.AreEqual (false, view.GetRequiresDataBinding (), "EditItemTemplate was set");
+
+ view.InsertItemTemplate = new CompiledTemplateBuilder (BuildTemplateMethod);
+ Assert.AreEqual (false, view.GetRequiresDataBinding (), "InsertItemTemplate was set");
+
+ view.ItemTemplate = new CompiledTemplateBuilder (BuildTemplateMethod);
+ Assert.AreEqual (false, view.GetRequiresDataBinding (), "ItemTemplate was set");
+ }
+
+ public static void BuildTemplateMethod (Control c) { }
}
public class TestMyData
{
RequiresDataBinding = value;
}
- }\r
-\r
+
+ public bool GetRequiresDataBinding () {
+ return RequiresDataBinding;
+ }
+ }
+
[Serializable]
[TestFixture]
public class GridViewTest
- {\r
- class DS : ObjectDataSource, IDataSource\r
- {\r
- public static List<string> GetList ()\r
- {\r
- List<string> list = new List<string> ();\r
- list.Add ("Norway");\r
- list.Add ("Sweden");\r
- list.Add ("France");\r
- list.Add ("Italy");\r
- list.Add ("Israel");\r
- list.Add ("Russia");\r
- return list;\r
- }\r
-\r
- public void DoRaiseDataSourceChangedEvent (EventArgs e)\r
- {\r
- RaiseDataSourceChangedEvent (e);\r
- }\r
+ {
+ class DS : ObjectDataSource, IDataSource
+ {
+ public static List<string> GetList ()
+ {
+ List<string> list = new List<string> ();
+ list.Add ("Norway");
+ list.Add ("Sweden");
+ list.Add ("France");
+ list.Add ("Italy");
+ list.Add ("Israel");
+ list.Add ("Russia");
+ return list;
+ }
+
+ public void DoRaiseDataSourceChangedEvent (EventArgs e)
+ {
+ RaiseDataSourceChangedEvent (e);
+ }
}
public class DataSourceObject
get { return _name; }
set { _name = value; }
}
- }\r
-\r
+ }
+
public const string BOOLFIELD = "bool";
public const string STRINGFIELD = "str";
ArrayList myds = new ArrayList ();
- public bool InitilizePager;\r
-\r
- [TestFixtureSetUp]\r
- public void GridViewInit ()\r
- {\r
-\r
- myds.Add ("Norway");\r
- myds.Add ("Sweden");\r
- myds.Add ("France");\r
- myds.Add ("Italy");\r
- myds.Add ("Israel");\r
- myds.Add ("Russia");\r
-#if VISUAL_STUDIO\r
- WebTest.CopyResource (GetType (), "MonoTests.System.Web.UI.WebControls.Resources.GridViewUpdate.aspx", "GridViewUpdate.aspx");\r
- WebTest.CopyResource (GetType (), "MonoTests.System.Web.UI.WebControls.Resources.NoEventValidation.aspx", "NoEventValidation.aspx");\r
-#else\r
- WebTest.CopyResource (GetType (), "GridViewUpdate.aspx", "GridViewUpdate.aspx");\r
- WebTest.CopyResource (GetType (), "NoEventValidation.aspx", "NoEventValidation.aspx");\r
-#endif\r
+ public bool InitilizePager;
+
+ [TestFixtureSetUp]
+ public void GridViewInit ()
+ {
+
+ myds.Add ("Norway");
+ myds.Add ("Sweden");
+ myds.Add ("France");
+ myds.Add ("Italy");
+ myds.Add ("Israel");
+ myds.Add ("Russia");
+#if VISUAL_STUDIO
+ WebTest.CopyResource (GetType (), "MonoTests.System.Web.UI.WebControls.Resources.GridViewUpdate.aspx", "GridViewUpdate.aspx");
+ WebTest.CopyResource (GetType (), "MonoTests.System.Web.UI.WebControls.Resources.NoEventValidation.aspx", "NoEventValidation.aspx");
+#else
+ WebTest.CopyResource (GetType (), "GridViewUpdate.aspx", "GridViewUpdate.aspx");
+ WebTest.CopyResource (GetType (), "NoEventValidation.aspx", "NoEventValidation.aspx");
+#endif
}
[Test]
protected void Gridview_sorting (object sender, GridViewSortEventArgs e)
{
sortingaction = true;
- }\r
-\r
- [Test]\r
- public void GridView_IsBindableType ()\r
- {\r
- Type [] types = new Type [] {\r
- typeof(Boolean), \r
- typeof(Byte),\r
- typeof(Char),\r
- typeof(DateTime),\r
- typeof(Decimal),\r
- typeof(Double),\r
- typeof(Guid),\r
- typeof(Int16),\r
- typeof(Int32),\r
- typeof(Int64),\r
- typeof(SByte),\r
- typeof(Single),\r
- typeof(String),\r
- typeof(UInt16),\r
- typeof(UInt32),\r
- typeof(UInt64)\r
- };\r
-\r
- GridView g = new GridView ();\r
- foreach (Type type in types)\r
- Assert.AreEqual (true, g.IsBindableType (type), type.ToString ());\r
-\r
- Assert.AreEqual (false, g.IsBindableType (typeof (Enum)), "test");\r
- Assert.AreEqual (false, g.IsBindableType (typeof (Object)), "test");\r
- }\r
+ }
+
+ [Test]
+ public void GridView_IsBindableType ()
+ {
+ Type [] types = new Type [] {
+ typeof(Boolean),
+ typeof(Byte),
+ typeof(Char),
+ typeof(DateTime),
+ typeof(Decimal),
+ typeof(Double),
+ typeof(Guid),
+ typeof(Int16),
+ typeof(Int32),
+ typeof(Int64),
+ typeof(SByte),
+ typeof(Single),
+ typeof(String),
+ typeof(UInt16),
+ typeof(UInt32),
+ typeof(UInt64)
+ };
+
+ GridView g = new GridView ();
+ foreach (Type type in types)
+ Assert.AreEqual (true, g.IsBindableType (type), type.ToString ());
+
+ Assert.AreEqual (false, g.IsBindableType (typeof (Enum)), "test");
+ Assert.AreEqual (false, g.IsBindableType (typeof (Object)), "test");
+ }
[Test]
public void GridView_CreateAutoGeneratedColumn ()
private void gv_PageIndexChanged (object sender, EventArgs e)
{
pageIndexChanged = true;
- }\r
-\r
- [Test]\r
- [Category ("NunitWeb")]\r
- [Category ("NotWorking")]\r
- public void GridView_DataSourceChangedEvent ()\r
- {\r
- WebTest t = new WebTest ();\r
- PageDelegates pd = new PageDelegates ();\r
- pd.Load = GridView_Init;\r
- pd.PreRenderComplete = GridView_Load;\r
- t.Invoker = new PageInvoker (pd);\r
- t.Run ();\r
- FormRequest fr = new FormRequest (t.Response, "form1");\r
- fr.Controls.Add ("__EVENTTARGET");\r
- fr.Controls.Add ("__EVENTARGUMENT");\r
- fr.Controls["__EVENTTARGET"].Value = "";\r
- fr.Controls["__EVENTARGUMENT"].Value = "";\r
- t.Request = fr;\r
- t.Run ();\r
- if (t.UserData == null)\r
- Assert.Fail ("DataSourceChangedEvent#1");\r
- Assert.AreEqual ("Data_rebounded", t.UserData.ToString (), "DataSourceChangedEvent#2");\r
- }\r
-\r
- #region GridView_DataSourceChangedEvent\r
- public static void GridView_Init (Page p)\r
- {\r
- PokerGridView gv = new PokerGridView ();\r
- DS data = new DS ();\r
- p.Controls.Add (gv);\r
- p.Controls.Add (data);\r
- data.TypeName = typeof (DS).AssemblyQualifiedName;\r
- data.SelectMethod = "GetList";\r
- data.ID = "Data";\r
- gv.DataBinding += new EventHandler (data_DataBinding);\r
- gv.DataSourceID = "Data";\r
- }\r
-\r
- public static void GridView_Load (Page p)\r
- {\r
- if (p.IsPostBack) {\r
- DS data = (DS) p.FindControl ("Data");\r
- if (data == null)\r
- Assert.Fail ("Data soource control not created#1");\r
- data.DoRaiseDataSourceChangedEvent (new EventArgs ());\r
- }\r
- }\r
-\r
- public static void data_DataBinding (object sender, EventArgs e)\r
- {\r
- if (((WebControl) sender).Page.IsPostBack)\r
- WebTest.CurrentTest.UserData = "Data_rebounded";\r
- }\r
- #endregion\r
-\r
+ }
+
+ [Test]
+ [Category ("NunitWeb")]
+ [Category ("NotWorking")]
+ public void GridView_DataSourceChangedEvent ()
+ {
+ WebTest t = new WebTest ();
+ PageDelegates pd = new PageDelegates ();
+ pd.Load = GridView_Init;
+ pd.PreRenderComplete = GridView_Load;
+ t.Invoker = new PageInvoker (pd);
+ t.Run ();
+ FormRequest fr = new FormRequest (t.Response, "form1");
+ fr.Controls.Add ("__EVENTTARGET");
+ fr.Controls.Add ("__EVENTARGUMENT");
+ fr.Controls["__EVENTTARGET"].Value = "";
+ fr.Controls["__EVENTARGUMENT"].Value = "";
+ t.Request = fr;
+ t.Run ();
+ if (t.UserData == null)
+ Assert.Fail ("DataSourceChangedEvent#1");
+ Assert.AreEqual ("Data_rebounded", t.UserData.ToString (), "DataSourceChangedEvent#2");
+ }
+
+ #region GridView_DataSourceChangedEvent
+ public static void GridView_Init (Page p)
+ {
+ PokerGridView gv = new PokerGridView ();
+ DS data = new DS ();
+ p.Controls.Add (gv);
+ p.Controls.Add (data);
+ data.TypeName = typeof (DS).AssemblyQualifiedName;
+ data.SelectMethod = "GetList";
+ data.ID = "Data";
+ gv.DataBinding += new EventHandler (data_DataBinding);
+ gv.DataSourceID = "Data";
+ }
+
+ public static void GridView_Load (Page p)
+ {
+ if (p.IsPostBack) {
+ DS data = (DS) p.FindControl ("Data");
+ if (data == null)
+ Assert.Fail ("Data soource control not created#1");
+ data.DoRaiseDataSourceChangedEvent (new EventArgs ());
+ }
+ }
+
+ public static void data_DataBinding (object sender, EventArgs e)
+ {
+ if (((WebControl) sender).Page.IsPostBack)
+ WebTest.CurrentTest.UserData = "Data_rebounded";
+ }
+ #endregion
+
[Test]
public void GridView_PerformDataBiding ()
{
t.Request = fr;
pageHTML = t.Run ();
Assert.AreEqual (0, t.UserData , "ObjectDataSource after delete from grid");
- }\r
-\r
+ }
+
public static void GridView_checkrows (Page p)
{
GridView grid = p.FindControl ("Grid") as GridView;
GridView grid = new GridView ();
ObjectDataSource ds = new ObjectDataSource ();
- ds.ID = "ObjectDataSource2";\r
+ ds.ID = "ObjectDataSource2";
ds.TypeName = "MonoTests.System.Web.UI.WebControls.DataObject";
ds.SelectMethod = "Select";
ds.DeleteMethod = "Delete";
b.DataSource = myds;
b.DataBind ();
- }\r
-\r
-\r
-\r
+ }
+
+
+
public void b_RowEditing (object o, GridViewEditEventArgs e)
{
((GridView) o).Page.Controls.Add (new LiteralControl ("EditSuccess"));
}
- //////// Post back events /////////////\r
- [Test]\r
- [Category ("NunitWeb")]\r
- public void GridView_PostBackRowEvents ()\r
- {\r
- WebTest t = new WebTest ("NoEventValidation.aspx");\r
- t.UserData = new Hashtable ();\r
- t.Invoker = PageInvoker.CreateOnInit (new PageDelegate (_PostBackRowEvents));\r
- string html = t.Run ();\r
-\r
- // Check if events done\r
- CustomEventAssert(t,"RowCreated");\r
- CustomEventAssert (t,"RowDataBound");\r
- \r
- // Remove grid to edit mode (Edit button pressed) \r
- FormRequest fr = new FormRequest (t.Response, "form1");\r
- fr.Controls.Add ("__EVENTTARGET");\r
- fr.Controls.Add ("__EVENTARGUMENT");\r
- fr.Controls["__EVENTTARGET"].Value = "Grid";\r
- fr.Controls["__EVENTARGUMENT"].Value = "Edit$0";\r
- t.Request = fr;\r
- t.UserData = new Hashtable ();\r
- html = t.Run ();\r
-\r
- // Check if events done\r
- CustomEventAssert (t,"RowCreated");\r
- CustomEventAssert (t,"RowCommand");\r
- CustomEventAssert (t,"RowEditing");\r
- CustomEventAssert (t,"RowDataBound");\r
-\r
- // Cancel button pressed\r
- fr = new FormRequest (t.Response, "form1");\r
- fr.Controls.Add ("__EVENTTARGET");\r
- fr.Controls.Add ("__EVENTARGUMENT");\r
- fr.Controls["__EVENTTARGET"].Value = "Grid";\r
- fr.Controls["__EVENTARGUMENT"].Value = "Cancel$0";\r
- t.Request = fr;\r
- t.UserData = new Hashtable ();\r
- html = t.Run ();\r
-\r
- // Check if events done\r
- CustomEventAssert (t,"RowCreated");\r
- CustomEventAssert (t,"RowCommand");\r
- CustomEventAssert (t,"RowCancelingEdit");\r
- CustomEventAssert (t,"RowDataBound");\r
- }\r
-\r
- [Test]\r
- [Category ("NunitWeb")]\r
- public void GridView_PostBackUpdateEvents ()\r
- {\r
- WebTest t = new WebTest ("NoEventValidation.aspx");\r
- t.UserData = new Hashtable ();\r
- t.Invoker = PageInvoker.CreateOnInit (new PageDelegate (_PostBackRowEvents));\r
- string html = t.Run ();\r
-\r
- // Remove grid to edit mode (Edit button pressed) \r
- FormRequest fr = new FormRequest (t.Response, "form1");\r
- fr.Controls.Add ("__EVENTTARGET");\r
- fr.Controls.Add ("__EVENTARGUMENT");\r
- fr.Controls["__EVENTTARGET"].Value = "Grid";\r
- fr.Controls["__EVENTARGUMENT"].Value = "Edit$0";\r
- t.Request = fr;\r
- html = t.Run ();\r
-\r
- // Update button pressed\r
- fr = new FormRequest (t.Response, "form1");\r
- fr.Controls.Add ("__EVENTTARGET");\r
- fr.Controls.Add ("__EVENTARGUMENT");\r
-#if DOT_NET\r
- fr.Controls.Add ("Grid$ctl02$ctl02");\r
- fr.Controls.Add ("Grid$ctl02$ctl03");\r
- fr.Controls.Add ("Grid$ctl02$ctl04");\r
-#else\r
- fr.Controls.Add ("Grid$ctl02$ctl03");\r
- fr.Controls.Add ("Grid$ctl02$ctl04");\r
- fr.Controls.Add ("Grid$ctl02$ctl05");\r
-#endif\r
- fr.Controls["__EVENTTARGET"].Value = "Grid$ctl02$ctl00";\r
- fr.Controls["__EVENTARGUMENT"].Value = "";\r
-#if DOT_NET\r
- fr.Controls["Grid$ctl02$ctl02"].Value = "1001";\r
- fr.Controls["Grid$ctl02$ctl03"].Value = "Mahesh";\r
- fr.Controls["Grid$ctl02$ctl04"].Value = "Chand";\r
-#else\r
- fr.Controls ["Grid$ctl02$ctl03"].Value = "1001";\r
- fr.Controls ["Grid$ctl02$ctl04"].Value = "Mahesh";\r
- fr.Controls ["Grid$ctl02$ctl05"].Value = "Chand";\r
-#endif\r
-\r
- t.Request = fr;\r
- t.UserData = new Hashtable ();\r
- html = t.Run ();\r
-\r
- // Check if events done\r
- CustomEventAssert (t, "RowCreated");\r
- CustomEventAssert (t, "RowCommand");\r
- CustomEventAssert (t, "RowUpdating");\r
- CustomEventAssert (t, "RowUpdated");\r
- CustomEventAssert (t, "RowDataBound");\r
- }\r
-\r
- [Test]\r
- [Category ("NunitWeb")]\r
- public void GridView_PostBackPagingEvents ()\r
- {\r
- WebTest t = new WebTest ("NoEventValidation.aspx");\r
- t.UserData = new Hashtable ();\r
- t.Invoker = PageInvoker.CreateOnInit (new PageDelegate (_PostBackPagingEvents));\r
- string html = t.Run ();\r
-\r
- // Move to page 2\r
- FormRequest fr = new FormRequest (t.Response, "form1");\r
- fr.Controls.Add ("__EVENTTARGET");\r
- fr.Controls.Add ("__EVENTARGUMENT");\r
- fr.Controls["__EVENTTARGET"].Value = "Grid";\r
- fr.Controls["__EVENTARGUMENT"].Value = "Page$2";\r
- t.Request = fr;\r
- html = t.Run ();\r
-\r
- // Check if events done\r
- CustomEventAssert (t, "PageIndexChanging");\r
- CustomEventAssert (t, "PageIndexChanged");\r
- }\r
-\r
- [Test]\r
- [Category ("NunitWeb")]\r
- public void GridView_PostBackSortingEvents ()\r
- {\r
- WebTest t = new WebTest ("NoEventValidation.aspx");\r
- t.UserData = new Hashtable ();\r
- t.Invoker = PageInvoker.CreateOnInit (new PageDelegate (_PostBackSortingEvents));\r
- string html = t.Run ();\r
-\r
- // Sort by ID\r
- FormRequest fr = new FormRequest (t.Response, "form1");\r
- fr.Controls.Add ("__EVENTTARGET");\r
- fr.Controls.Add ("__EVENTARGUMENT");\r
- fr.Controls["__EVENTTARGET"].Value = "Grid";\r
- fr.Controls["__EVENTARGUMENT"].Value = "Sort$ID";\r
- t.Request = fr;\r
- html = t.Run ();\r
-\r
- // Check if events done\r
- CustomEventAssert (t, "Sorting");\r
- CustomEventAssert (t, "Sorted");\r
- }\r
-\r
- [Test]\r
- [Category ("NunitWeb")]\r
- public void GridView_PostBackSelectingEvents ()\r
- {\r
- WebTest t = new WebTest ("NoEventValidation.aspx");\r
- t.UserData = new Hashtable ();\r
- t.Invoker = PageInvoker.CreateOnInit (new PageDelegate (_PostBackSelectingEvents));\r
- string html = t.Run ();\r
-\r
- // Select\r
- FormRequest fr = new FormRequest (t.Response, "form1");\r
- fr.Controls.Add ("__EVENTTARGET");\r
- fr.Controls.Add ("__EVENTARGUMENT");\r
- fr.Controls["__EVENTTARGET"].Value = "Grid";\r
- fr.Controls["__EVENTARGUMENT"].Value = "Select$0";\r
- t.Request = fr;\r
- html = t.Run ();\r
-\r
- // Check if events done\r
- CustomEventAssert (t, "SelectedIndexChanging");\r
- CustomEventAssert (t, "SelectedIndexChanged");\r
- }\r
-\r
- #region PostBackEvents_helpers\r
- \r
- private void CustomEventAssert (WebTest t, string c)\r
- {\r
- Hashtable local = t.UserData as Hashtable;\r
- if (local == null)\r
- Assert.Fail ("User data not created");\r
- if(!local.ContainsValue(c))\r
- Assert.Fail (c + " not fired!"); \r
- }\r
-\r
- public static void _PostBackSelectingEvents (Page p)\r
- {\r
- if (!p.IsPostBack)\r
- DataObjects.Reset ();\r
-\r
- GridView grid = new GridView ();\r
- ObjectDataSource ds = new ObjectDataSource ();\r
- grid.SelectedIndexChanged += new EventHandler (grid_SelectedIndexChanged);\r
- grid.SelectedIndexChanging += new GridViewSelectEventHandler (grid_SelectedIndexChanging);\r
- ds.ID = "ObjectDataSource2";\r
- ds.TypeName = "MonoTests.System.Web.UI.WebControls.DataObjects";\r
- ds.SelectMethod = "Select";\r
- ds.DeleteMethod = "Delete";\r
- ds.InsertMethod = "Insert";\r
- ds.UpdateMethod = "Update";\r
- grid.ID = "Grid";\r
- grid.AutoGenerateColumns = true;\r
- grid.AutoGenerateSelectButton = true;\r
- grid.DataSourceID = "ObjectDataSource2";\r
- p.Form.Controls.Add (ds);\r
- p.Form.Controls.Add (grid);\r
- }\r
-\r
- public static void _PostBackSortingEvents (Page p)\r
- {\r
- if (!p.IsPostBack)\r
- DataObjects.Reset ();\r
-\r
- GridView grid = new GridView ();\r
- ObjectDataSource ds = new ObjectDataSource ();\r
- ds.ID = "ObjectDataSource2";\r
- ds.TypeName = "MonoTests.System.Web.UI.WebControls.DataObjects";\r
- ds.SelectMethod = "Select";\r
- ds.DeleteMethod = "Delete";\r
- ds.InsertMethod = "Insert";\r
- ds.UpdateMethod = "Update";\r
-\r
- grid.Sorted += new EventHandler (grid_Sorted);\r
- grid.Sorting += new GridViewSortEventHandler (grid_Sorting);\r
- grid.AllowSorting = true;\r
- grid.ID = "Grid";\r
- grid.AutoGenerateColumns = true;\r
- \r
- grid.DataSourceID = "ObjectDataSource2";\r
- p.Form.Controls.Add (ds);\r
- p.Form.Controls.Add (grid);\r
- }\r
-\r
- \r
- public static void _PostBackPagingEvents (Page p)\r
- {\r
- if (!p.IsPostBack)\r
- DataObjects.Reset ();\r
-\r
- GridView grid = new GridView ();\r
- ObjectDataSource ds = new ObjectDataSource ();\r
- ds.ID = "ObjectDataSource2";\r
- ds.TypeName = "MonoTests.System.Web.UI.WebControls.DataObjects";\r
- ds.SelectMethod = "Select";\r
- ds.DeleteMethod = "Delete";\r
- ds.InsertMethod = "Insert";\r
- ds.UpdateMethod = "Update";\r
-\r
- grid.PageIndexChanged += new EventHandler (grid_PageIndexChanged);\r
- grid.PageIndexChanging += new GridViewPageEventHandler (grid_PageIndexChanging);\r
- grid.AllowPaging = true;\r
- grid.ID = "Grid";\r
- grid.AutoGenerateColumns = false;\r
- grid.PageSize = 1;\r
-\r
- BoundField field = new BoundField ();\r
- field.DataField = "ID";\r
- grid.Columns.Add (field);\r
-\r
- field = new BoundField ();\r
- field.DataField = "FName";\r
- grid.Columns.Add (field);\r
-\r
- field = new BoundField ();\r
- field.DataField = "LName";\r
- grid.Columns.Add (field);\r
-\r
- grid.DataSourceID = "ObjectDataSource2";\r
- p.Form.Controls.Add (ds);\r
- p.Form.Controls.Add (grid);\r
- }\r
-\r
- public static void _PostBackRowEvents (Page p)\r
- {\r
- if (!p.IsPostBack)\r
- DataObject.Reset ();\r
-\r
- GridView grid = new GridView ();\r
- ObjectDataSource ds = new ObjectDataSource ();\r
- ds.ID = "ObjectDataSource2";\r
- ds.TypeName = "MonoTests.System.Web.UI.WebControls.DataObject";\r
- ds.SelectMethod = "Select";\r
- ds.DeleteMethod = "Delete";\r
- ds.InsertMethod = "Insert";\r
- ds.UpdateMethod = "Update";\r
-\r
-\r
- grid.RowCancelingEdit += new GridViewCancelEditEventHandler (grid_RowCancelingEdit);\r
- grid.RowCommand += new GridViewCommandEventHandler (grid_RowCommand);\r
- grid.RowCreated += new GridViewRowEventHandler (grid_RowCreated);\r
- grid.RowDataBound += new GridViewRowEventHandler (grid_RowDataBound);\r
- grid.RowEditing += new GridViewEditEventHandler (grid__RowEditing);\r
- grid.RowUpdating += new GridViewUpdateEventHandler (grid_RowUpdating);\r
- grid.RowUpdated += new GridViewUpdatedEventHandler (grid_RowUpdated);\r
- grid.PageIndexChanged += new EventHandler (grid_PageIndexChanged);\r
- grid.PageIndexChanging += new GridViewPageEventHandler (grid_PageIndexChanging);\r
-\r
- Parameter p1 = new Parameter ("ID", TypeCode.String);\r
- Parameter p2 = new Parameter ("FName", TypeCode.String);\r
- Parameter p3 = new Parameter ("LName", TypeCode.String);\r
-\r
- ds.UpdateParameters.Add (p1);\r
- ds.UpdateParameters.Add (p2);\r
- ds.UpdateParameters.Add (p3);\r
-\r
- grid.ID = "Grid";\r
- grid.AutoGenerateEditButton = true;\r
-\r
- grid.AutoGenerateColumns = false;\r
-\r
- BoundField field = new BoundField ();\r
- field.DataField = "ID";\r
- grid.Columns.Add (field);\r
-\r
- field = new BoundField ();\r
- field.DataField = "FName";\r
- grid.Columns.Add (field);\r
-\r
- field = new BoundField ();\r
- field.DataField = "LName";\r
- grid.Columns.Add (field);\r
-\r
- grid.DataSourceID = "ObjectDataSource2";\r
- p.Form.Controls.Add (ds);\r
- p.Form.Controls.Add (grid);\r
- }\r
-\r
- static void grid_SelectedIndexChanging (object sender, GridViewSelectEventArgs e)\r
- {\r
- Hashtable local = WebTest.CurrentTest.UserData as Hashtable;\r
- if (local != null) {\r
- local.Add (local.Count, "SelectedIndexChanging");\r
- }\r
- }\r
-\r
- static void grid_SelectedIndexChanged (object sender, EventArgs e)\r
- {\r
- Hashtable local = WebTest.CurrentTest.UserData as Hashtable;\r
- if (local != null) {\r
- local.Add (local.Count, "SelectedIndexChanged");\r
- }\r
- }\r
-\r
- static void grid_PageIndexChanging (object sender, GridViewPageEventArgs e)\r
- {\r
- Hashtable local = WebTest.CurrentTest.UserData as Hashtable;\r
- if (local != null) {\r
- local.Add (local.Count, "PageIndexChanging");\r
- }\r
- }\r
-\r
- static void grid_PageIndexChanged (object sender, EventArgs e)\r
- {\r
- Hashtable local = WebTest.CurrentTest.UserData as Hashtable;\r
- if (local != null) {\r
- local.Add (local.Count, "PageIndexChanged");\r
- }\r
- }\r
-\r
- public static void grid_RowUpdated (object sender, GridViewUpdatedEventArgs e)\r
- {\r
- Hashtable local = WebTest.CurrentTest.UserData as Hashtable;\r
- if (local != null) {\r
- local.Add (local.Count, "RowUpdated");\r
- }\r
- }\r
-\r
- public static void grid_RowUpdating (object sender, GridViewUpdateEventArgs e)\r
- {\r
- Hashtable local = WebTest.CurrentTest.UserData as Hashtable;\r
- if (local != null) {\r
- local.Add (local.Count, "RowUpdating");\r
- }\r
- }\r
-\r
- public static void grid_RowEditing (object sender, GridViewEditEventArgs e)\r
- {\r
- Hashtable local = WebTest.CurrentTest.UserData as Hashtable;\r
- if (local != null) {\r
- local.Add (local.Count, "RowEditing");\r
- }\r
- }\r
-\r
- public static void grid_RowDataBound (object sender, GridViewRowEventArgs e)\r
- {\r
- Hashtable local = WebTest.CurrentTest.UserData as Hashtable;\r
- if (local != null) {\r
- local.Add (local.Count, "RowDataBound");\r
- }\r
- }\r
-\r
- public static void grid_RowCreated (object sender, GridViewRowEventArgs e)\r
- {\r
- Hashtable local = WebTest.CurrentTest.UserData as Hashtable;\r
- if (local != null) {\r
- local.Add (local.Count, "RowCreated");\r
- }\r
- }\r
-\r
- public static void grid_RowCommand (object sender, GridViewCommandEventArgs e)\r
- {\r
- Hashtable local = WebTest.CurrentTest.UserData as Hashtable;\r
- if (local != null) {\r
- local.Add (local.Count, "RowCommand");\r
- }\r
- }\r
-\r
- public static void grid_RowCancelingEdit (object sender, GridViewCancelEditEventArgs e)\r
- {\r
- Hashtable local = WebTest.CurrentTest.UserData as Hashtable;\r
- if (local != null) {\r
- local.Add (local.Count, "RowCancelingEdit");\r
- }\r
- }\r
-\r
- public static void grid__RowEditing (object sender, GridViewEditEventArgs e)\r
- {\r
- Hashtable local = WebTest.CurrentTest.UserData as Hashtable;\r
- if (local != null) {\r
- local.Add (local.Count, "RowEditing");\r
- }\r
- }\r
-\r
- static void grid_Sorting (object sender, GridViewSortEventArgs e)\r
- {\r
- Hashtable local = WebTest.CurrentTest.UserData as Hashtable;\r
- if (local != null) {\r
- local.Add (local.Count, "Sorting");\r
- }\r
- }\r
-\r
- static void grid_Sorted (object sender, EventArgs e)\r
- {\r
- Hashtable local = WebTest.CurrentTest.UserData as Hashtable;\r
- if (local != null) {\r
- local.Add (local.Count, "Sorted");\r
- }\r
- }\r
-\r
- #endregion\r
-\r
+ //////// Post back events /////////////
+ [Test]
+ [Category ("NunitWeb")]
+ public void GridView_PostBackRowEvents ()
+ {
+ WebTest t = new WebTest ("NoEventValidation.aspx");
+ t.UserData = new Hashtable ();
+ t.Invoker = PageInvoker.CreateOnInit (new PageDelegate (_PostBackRowEvents));
+ string html = t.Run ();
+
+ // Check if events done
+ CustomEventAssert(t,"RowCreated");
+ CustomEventAssert (t,"RowDataBound");
+
+ // Remove grid to edit mode (Edit button pressed)
+ FormRequest fr = new FormRequest (t.Response, "form1");
+ fr.Controls.Add ("__EVENTTARGET");
+ fr.Controls.Add ("__EVENTARGUMENT");
+ fr.Controls["__EVENTTARGET"].Value = "Grid";
+ fr.Controls["__EVENTARGUMENT"].Value = "Edit$0";
+ t.Request = fr;
+ t.UserData = new Hashtable ();
+ html = t.Run ();
+
+ // Check if events done
+ CustomEventAssert (t,"RowCreated");
+ CustomEventAssert (t,"RowCommand");
+ CustomEventAssert (t,"RowEditing");
+ CustomEventAssert (t,"RowDataBound");
+
+ // Cancel button pressed
+ fr = new FormRequest (t.Response, "form1");
+ fr.Controls.Add ("__EVENTTARGET");
+ fr.Controls.Add ("__EVENTARGUMENT");
+ fr.Controls["__EVENTTARGET"].Value = "Grid";
+ fr.Controls["__EVENTARGUMENT"].Value = "Cancel$0";
+ t.Request = fr;
+ t.UserData = new Hashtable ();
+ html = t.Run ();
+
+ // Check if events done
+ CustomEventAssert (t,"RowCreated");
+ CustomEventAssert (t,"RowCommand");
+ CustomEventAssert (t,"RowCancelingEdit");
+ CustomEventAssert (t,"RowDataBound");
+ }
+
+ [Test]
+ [Category ("NunitWeb")]
+ public void GridView_PostBackUpdateEvents ()
+ {
+ WebTest t = new WebTest ("NoEventValidation.aspx");
+ t.UserData = new Hashtable ();
+ t.Invoker = PageInvoker.CreateOnInit (new PageDelegate (_PostBackRowEvents));
+ string html = t.Run ();
+
+ // Remove grid to edit mode (Edit button pressed)
+ FormRequest fr = new FormRequest (t.Response, "form1");
+ fr.Controls.Add ("__EVENTTARGET");
+ fr.Controls.Add ("__EVENTARGUMENT");
+ fr.Controls["__EVENTTARGET"].Value = "Grid";
+ fr.Controls["__EVENTARGUMENT"].Value = "Edit$0";
+ t.Request = fr;
+ html = t.Run ();
+
+ // Update button pressed
+ fr = new FormRequest (t.Response, "form1");
+ fr.Controls.Add ("__EVENTTARGET");
+ fr.Controls.Add ("__EVENTARGUMENT");
+#if DOT_NET
+ fr.Controls.Add ("Grid$ctl02$ctl02");
+ fr.Controls.Add ("Grid$ctl02$ctl03");
+ fr.Controls.Add ("Grid$ctl02$ctl04");
+#else
+ fr.Controls.Add ("Grid$ctl02$ctl03");
+ fr.Controls.Add ("Grid$ctl02$ctl04");
+ fr.Controls.Add ("Grid$ctl02$ctl05");
+#endif
+ fr.Controls["__EVENTTARGET"].Value = "Grid$ctl02$ctl00";
+ fr.Controls["__EVENTARGUMENT"].Value = "";
+#if DOT_NET
+ fr.Controls["Grid$ctl02$ctl02"].Value = "1001";
+ fr.Controls["Grid$ctl02$ctl03"].Value = "Mahesh";
+ fr.Controls["Grid$ctl02$ctl04"].Value = "Chand";
+#else
+ fr.Controls ["Grid$ctl02$ctl03"].Value = "1001";
+ fr.Controls ["Grid$ctl02$ctl04"].Value = "Mahesh";
+ fr.Controls ["Grid$ctl02$ctl05"].Value = "Chand";
+#endif
+
+ t.Request = fr;
+ t.UserData = new Hashtable ();
+ html = t.Run ();
+
+ // Check if events done
+ CustomEventAssert (t, "RowCreated");
+ CustomEventAssert (t, "RowCommand");
+ CustomEventAssert (t, "RowUpdating");
+ CustomEventAssert (t, "RowUpdated");
+ CustomEventAssert (t, "RowDataBound");
+ }
+
+ [Test]
+ [Category ("NunitWeb")]
+ public void GridView_PostBackPagingEvents ()
+ {
+ WebTest t = new WebTest ("NoEventValidation.aspx");
+ t.UserData = new Hashtable ();
+ t.Invoker = PageInvoker.CreateOnInit (new PageDelegate (_PostBackPagingEvents));
+ string html = t.Run ();
+
+ // Move to page 2
+ FormRequest fr = new FormRequest (t.Response, "form1");
+ fr.Controls.Add ("__EVENTTARGET");
+ fr.Controls.Add ("__EVENTARGUMENT");
+ fr.Controls["__EVENTTARGET"].Value = "Grid";
+ fr.Controls["__EVENTARGUMENT"].Value = "Page$2";
+ t.Request = fr;
+ html = t.Run ();
+
+ // Check if events done
+ CustomEventAssert (t, "PageIndexChanging");
+ CustomEventAssert (t, "PageIndexChanged");
+ }
+
+ [Test]
+ [Category ("NunitWeb")]
+ public void GridView_PostBackSortingEvents ()
+ {
+ WebTest t = new WebTest ("NoEventValidation.aspx");
+ t.UserData = new Hashtable ();
+ t.Invoker = PageInvoker.CreateOnInit (new PageDelegate (_PostBackSortingEvents));
+ string html = t.Run ();
+
+ // Sort by ID
+ FormRequest fr = new FormRequest (t.Response, "form1");
+ fr.Controls.Add ("__EVENTTARGET");
+ fr.Controls.Add ("__EVENTARGUMENT");
+ fr.Controls["__EVENTTARGET"].Value = "Grid";
+ fr.Controls["__EVENTARGUMENT"].Value = "Sort$ID";
+ t.Request = fr;
+ html = t.Run ();
+
+ // Check if events done
+ CustomEventAssert (t, "Sorting");
+ CustomEventAssert (t, "Sorted");
+ }
+
+ [Test]
+ [Category ("NunitWeb")]
+ public void GridView_PostBackSelectingEvents ()
+ {
+ WebTest t = new WebTest ("NoEventValidation.aspx");
+ t.UserData = new Hashtable ();
+ t.Invoker = PageInvoker.CreateOnInit (new PageDelegate (_PostBackSelectingEvents));
+ string html = t.Run ();
+
+ // Select
+ FormRequest fr = new FormRequest (t.Response, "form1");
+ fr.Controls.Add ("__EVENTTARGET");
+ fr.Controls.Add ("__EVENTARGUMENT");
+ fr.Controls["__EVENTTARGET"].Value = "Grid";
+ fr.Controls["__EVENTARGUMENT"].Value = "Select$0";
+ t.Request = fr;
+ html = t.Run ();
+
+ // Check if events done
+ CustomEventAssert (t, "SelectedIndexChanging");
+ CustomEventAssert (t, "SelectedIndexChanged");
+ }
+
+ #region PostBackEvents_helpers
+
+ private void CustomEventAssert (WebTest t, string c)
+ {
+ Hashtable local = t.UserData as Hashtable;
+ if (local == null)
+ Assert.Fail ("User data not created");
+ if(!local.ContainsValue(c))
+ Assert.Fail (c + " not fired!");
+ }
+
+ public static void _PostBackSelectingEvents (Page p)
+ {
+ if (!p.IsPostBack)
+ DataObjects.Reset ();
+
+ GridView grid = new GridView ();
+ ObjectDataSource ds = new ObjectDataSource ();
+ grid.SelectedIndexChanged += new EventHandler (grid_SelectedIndexChanged);
+ grid.SelectedIndexChanging += new GridViewSelectEventHandler (grid_SelectedIndexChanging);
+ ds.ID = "ObjectDataSource2";
+ ds.TypeName = "MonoTests.System.Web.UI.WebControls.DataObjects";
+ ds.SelectMethod = "Select";
+ ds.DeleteMethod = "Delete";
+ ds.InsertMethod = "Insert";
+ ds.UpdateMethod = "Update";
+ grid.ID = "Grid";
+ grid.AutoGenerateColumns = true;
+ grid.AutoGenerateSelectButton = true;
+ grid.DataSourceID = "ObjectDataSource2";
+ p.Form.Controls.Add (ds);
+ p.Form.Controls.Add (grid);
+ }
+
+ public static void _PostBackSortingEvents (Page p)
+ {
+ if (!p.IsPostBack)
+ DataObjects.Reset ();
+
+ GridView grid = new GridView ();
+ ObjectDataSource ds = new ObjectDataSource ();
+ ds.ID = "ObjectDataSource2";
+ ds.TypeName = "MonoTests.System.Web.UI.WebControls.DataObjects";
+ ds.SelectMethod = "Select";
+ ds.DeleteMethod = "Delete";
+ ds.InsertMethod = "Insert";
+ ds.UpdateMethod = "Update";
+
+ grid.Sorted += new EventHandler (grid_Sorted);
+ grid.Sorting += new GridViewSortEventHandler (grid_Sorting);
+ grid.AllowSorting = true;
+ grid.ID = "Grid";
+ grid.AutoGenerateColumns = true;
+
+ grid.DataSourceID = "ObjectDataSource2";
+ p.Form.Controls.Add (ds);
+ p.Form.Controls.Add (grid);
+ }
+
+
+ public static void _PostBackPagingEvents (Page p)
+ {
+ if (!p.IsPostBack)
+ DataObjects.Reset ();
+
+ GridView grid = new GridView ();
+ ObjectDataSource ds = new ObjectDataSource ();
+ ds.ID = "ObjectDataSource2";
+ ds.TypeName = "MonoTests.System.Web.UI.WebControls.DataObjects";
+ ds.SelectMethod = "Select";
+ ds.DeleteMethod = "Delete";
+ ds.InsertMethod = "Insert";
+ ds.UpdateMethod = "Update";
+
+ grid.PageIndexChanged += new EventHandler (grid_PageIndexChanged);
+ grid.PageIndexChanging += new GridViewPageEventHandler (grid_PageIndexChanging);
+ grid.AllowPaging = true;
+ grid.ID = "Grid";
+ grid.AutoGenerateColumns = false;
+ grid.PageSize = 1;
+
+ BoundField field = new BoundField ();
+ field.DataField = "ID";
+ grid.Columns.Add (field);
+
+ field = new BoundField ();
+ field.DataField = "FName";
+ grid.Columns.Add (field);
+
+ field = new BoundField ();
+ field.DataField = "LName";
+ grid.Columns.Add (field);
+
+ grid.DataSourceID = "ObjectDataSource2";
+ p.Form.Controls.Add (ds);
+ p.Form.Controls.Add (grid);
+ }
+
+ public static void _PostBackRowEvents (Page p)
+ {
+ if (!p.IsPostBack)
+ DataObject.Reset ();
+
+ GridView grid = new GridView ();
+ ObjectDataSource ds = new ObjectDataSource ();
+ ds.ID = "ObjectDataSource2";
+ ds.TypeName = "MonoTests.System.Web.UI.WebControls.DataObject";
+ ds.SelectMethod = "Select";
+ ds.DeleteMethod = "Delete";
+ ds.InsertMethod = "Insert";
+ ds.UpdateMethod = "Update";
+
+
+ grid.RowCancelingEdit += new GridViewCancelEditEventHandler (grid_RowCancelingEdit);
+ grid.RowCommand += new GridViewCommandEventHandler (grid_RowCommand);
+ grid.RowCreated += new GridViewRowEventHandler (grid_RowCreated);
+ grid.RowDataBound += new GridViewRowEventHandler (grid_RowDataBound);
+ grid.RowEditing += new GridViewEditEventHandler (grid__RowEditing);
+ grid.RowUpdating += new GridViewUpdateEventHandler (grid_RowUpdating);
+ grid.RowUpdated += new GridViewUpdatedEventHandler (grid_RowUpdated);
+ grid.PageIndexChanged += new EventHandler (grid_PageIndexChanged);
+ grid.PageIndexChanging += new GridViewPageEventHandler (grid_PageIndexChanging);
+
+ Parameter p1 = new Parameter ("ID", TypeCode.String);
+ Parameter p2 = new Parameter ("FName", TypeCode.String);
+ Parameter p3 = new Parameter ("LName", TypeCode.String);
+
+ ds.UpdateParameters.Add (p1);
+ ds.UpdateParameters.Add (p2);
+ ds.UpdateParameters.Add (p3);
+
+ grid.ID = "Grid";
+ grid.AutoGenerateEditButton = true;
+
+ grid.AutoGenerateColumns = false;
+
+ BoundField field = new BoundField ();
+ field.DataField = "ID";
+ grid.Columns.Add (field);
+
+ field = new BoundField ();
+ field.DataField = "FName";
+ grid.Columns.Add (field);
+
+ field = new BoundField ();
+ field.DataField = "LName";
+ grid.Columns.Add (field);
+
+ grid.DataSourceID = "ObjectDataSource2";
+ p.Form.Controls.Add (ds);
+ p.Form.Controls.Add (grid);
+ }
+
+ static void grid_SelectedIndexChanging (object sender, GridViewSelectEventArgs e)
+ {
+ Hashtable local = WebTest.CurrentTest.UserData as Hashtable;
+ if (local != null) {
+ local.Add (local.Count, "SelectedIndexChanging");
+ }
+ }
+
+ static void grid_SelectedIndexChanged (object sender, EventArgs e)
+ {
+ Hashtable local = WebTest.CurrentTest.UserData as Hashtable;
+ if (local != null) {
+ local.Add (local.Count, "SelectedIndexChanged");
+ }
+ }
+
+ static void grid_PageIndexChanging (object sender, GridViewPageEventArgs e)
+ {
+ Hashtable local = WebTest.CurrentTest.UserData as Hashtable;
+ if (local != null) {
+ local.Add (local.Count, "PageIndexChanging");
+ }
+ }
+
+ static void grid_PageIndexChanged (object sender, EventArgs e)
+ {
+ Hashtable local = WebTest.CurrentTest.UserData as Hashtable;
+ if (local != null) {
+ local.Add (local.Count, "PageIndexChanged");
+ }
+ }
+
+ public static void grid_RowUpdated (object sender, GridViewUpdatedEventArgs e)
+ {
+ Hashtable local = WebTest.CurrentTest.UserData as Hashtable;
+ if (local != null) {
+ local.Add (local.Count, "RowUpdated");
+ }
+ }
+
+ public static void grid_RowUpdating (object sender, GridViewUpdateEventArgs e)
+ {
+ Hashtable local = WebTest.CurrentTest.UserData as Hashtable;
+ if (local != null) {
+ local.Add (local.Count, "RowUpdating");
+ }
+ }
+
+ public static void grid_RowEditing (object sender, GridViewEditEventArgs e)
+ {
+ Hashtable local = WebTest.CurrentTest.UserData as Hashtable;
+ if (local != null) {
+ local.Add (local.Count, "RowEditing");
+ }
+ }
+
+ public static void grid_RowDataBound (object sender, GridViewRowEventArgs e)
+ {
+ Hashtable local = WebTest.CurrentTest.UserData as Hashtable;
+ if (local != null) {
+ local.Add (local.Count, "RowDataBound");
+ }
+ }
+
+ public static void grid_RowCreated (object sender, GridViewRowEventArgs e)
+ {
+ Hashtable local = WebTest.CurrentTest.UserData as Hashtable;
+ if (local != null) {
+ local.Add (local.Count, "RowCreated");
+ }
+ }
+
+ public static void grid_RowCommand (object sender, GridViewCommandEventArgs e)
+ {
+ Hashtable local = WebTest.CurrentTest.UserData as Hashtable;
+ if (local != null) {
+ local.Add (local.Count, "RowCommand");
+ }
+ }
+
+ public static void grid_RowCancelingEdit (object sender, GridViewCancelEditEventArgs e)
+ {
+ Hashtable local = WebTest.CurrentTest.UserData as Hashtable;
+ if (local != null) {
+ local.Add (local.Count, "RowCancelingEdit");
+ }
+ }
+
+ public static void grid__RowEditing (object sender, GridViewEditEventArgs e)
+ {
+ Hashtable local = WebTest.CurrentTest.UserData as Hashtable;
+ if (local != null) {
+ local.Add (local.Count, "RowEditing");
+ }
+ }
+
+ static void grid_Sorting (object sender, GridViewSortEventArgs e)
+ {
+ Hashtable local = WebTest.CurrentTest.UserData as Hashtable;
+ if (local != null) {
+ local.Add (local.Count, "Sorting");
+ }
+ }
+
+ static void grid_Sorted (object sender, EventArgs e)
+ {
+ Hashtable local = WebTest.CurrentTest.UserData as Hashtable;
+ if (local != null) {
+ local.Add (local.Count, "Sorted");
+ }
+ }
+
+ #endregion
+
/// <summary>
/// All possible exceptions what can be thrown
/// </summary>
HtmlDiff.AssertAreEqual (original, pageHTML, "GridViewUpdate #3");
}
+ [Test]
+ [Category ("NunitWeb")]
+ public void GridView_RequiresDataBinding () {
+ PageDelegates delegates = new PageDelegates ();
+ delegates.LoadComplete = GridView_RequiresDataBinding_LoadComplete;
+ PageInvoker invoker = new PageInvoker (delegates);
+ WebTest t = new WebTest (invoker);
+ t.Run ();
+ }
+
+ public static void GridView_RequiresDataBinding_LoadComplete (Page p) {
+ PokerGridView grid = new PokerGridView ();
+ p.Form.Controls.Add (grid);
+
+ grid.DataSource = new string [] { "A", "B", "C" };
+ grid.DataBind ();
+
+ Assert.AreEqual (false, grid.GetRequiresDataBinding ());
+
+ grid.EmptyDataTemplate = new CompiledTemplateBuilder (BuildTemplateMethod);
+ Assert.AreEqual (false, grid.GetRequiresDataBinding (), "EmptyDataTemplate was set");
+
+ grid.PagerTemplate = new CompiledTemplateBuilder (BuildTemplateMethod);
+ Assert.AreEqual (false, grid.GetRequiresDataBinding (), "PagerTemplate was set");
+ }
+
+ public static void BuildTemplateMethod (Control c) { }
+
[TestFixtureTearDown]
public void TearDown()
{
return aTable;
}
}
-\r
- public class DataObjects\r
- {\r
- public static DataTable ds = CreateDataTable ();\r
- public static DataTable Select ()\r
- {\r
- return ds;\r
- }\r
-\r
- public static void Reset ()\r
- {\r
- ds = CreateDataTable ();\r
- }\r
-\r
- public static DataTable Delete (string ID, string FName, string LName)\r
- {\r
- DataRow dr = ds.Rows.Find (ID);\r
- if (dr != null) {\r
- ds.Rows.Remove (dr);\r
- }\r
- return ds;\r
- }\r
-\r
- public static DataTable Insert (string ID, string FName, string LName)\r
- {\r
- DataRow dr = ds.NewRow ();\r
- dr["ID"] = ID;\r
- dr["FName"] = FName;\r
- dr["LName"] = LName;\r
- ds.Rows.Add (dr);\r
- return ds;\r
- }\r
-\r
- public static DataTable Update (string ID, string FName, string LName)\r
- {\r
- foreach (DataRow row in ds.Rows) {\r
- if (row["ID"].ToString () == ID) {\r
- row["FName"] = FName;\r
- row["LName"] = LName;\r
- }\r
- }\r
- return ds;\r
- }\r
-\r
- public static DataTable CreateDataTable ()\r
- {\r
- DataTable aTable = new DataTable ("A");\r
- DataColumn dtCol;\r
- DataRow dtRow;\r
-\r
- // Create ID column and add to the DataTable.\r
- dtCol = new DataColumn ();\r
- dtCol.DataType = Type.GetType ("System.Int32");\r
- dtCol.ColumnName = "ID";\r
- dtCol.AutoIncrement = true;\r
- dtCol.Caption = "ID";\r
- dtCol.ReadOnly = true;\r
- dtCol.Unique = true;\r
- aTable.Columns.Add (dtCol);\r
-\r
- // Create Name column and add to the table\r
- dtCol = new DataColumn ();\r
- dtCol.DataType = Type.GetType ("System.String");\r
- dtCol.ColumnName = "FName";\r
- dtCol.AutoIncrement = false;\r
- dtCol.Caption = "First Name";\r
- dtCol.ReadOnly = false;\r
- dtCol.Unique = false;\r
- aTable.Columns.Add (dtCol);\r
-\r
- // Create Last Name column and add to the table.\r
- dtCol = new DataColumn ();\r
- dtCol.DataType = Type.GetType ("System.String");\r
- dtCol.ColumnName = "LName";\r
- dtCol.AutoIncrement = false;\r
- dtCol.Caption = "Last Name";\r
- dtCol.ReadOnly = false;\r
- dtCol.Unique = false;\r
- aTable.Columns.Add (dtCol);\r
-\r
- // Create three rows to the table\r
- dtRow = aTable.NewRow ();\r
- dtRow["ID"] = 1001;\r
- dtRow["FName"] = "Mahesh";\r
- dtRow["LName"] = "Chand";\r
- aTable.Rows.Add (dtRow);\r
-\r
- dtRow = aTable.NewRow ();\r
- dtRow["ID"] = 1002;\r
- dtRow["FName"] = "Vadim";\r
- dtRow["LName"] = "Popik";\r
- aTable.Rows.Add (dtRow);\r
-\r
- aTable.PrimaryKey = new DataColumn[] { aTable.Columns["ID"] };\r
- return aTable;\r
- }\r
+
+ public class DataObjects
+ {
+ public static DataTable ds = CreateDataTable ();
+ public static DataTable Select ()
+ {
+ return ds;
+ }
+
+ public static void Reset ()
+ {
+ ds = CreateDataTable ();
+ }
+
+ public static DataTable Delete (string ID, string FName, string LName)
+ {
+ DataRow dr = ds.Rows.Find (ID);
+ if (dr != null) {
+ ds.Rows.Remove (dr);
+ }
+ return ds;
+ }
+
+ public static DataTable Insert (string ID, string FName, string LName)
+ {
+ DataRow dr = ds.NewRow ();
+ dr["ID"] = ID;
+ dr["FName"] = FName;
+ dr["LName"] = LName;
+ ds.Rows.Add (dr);
+ return ds;
+ }
+
+ public static DataTable Update (string ID, string FName, string LName)
+ {
+ foreach (DataRow row in ds.Rows) {
+ if (row["ID"].ToString () == ID) {
+ row["FName"] = FName;
+ row["LName"] = LName;
+ }
+ }
+ return ds;
+ }
+
+ public static DataTable CreateDataTable ()
+ {
+ DataTable aTable = new DataTable ("A");
+ DataColumn dtCol;
+ DataRow dtRow;
+
+ // Create ID column and add to the DataTable.
+ dtCol = new DataColumn ();
+ dtCol.DataType = Type.GetType ("System.Int32");
+ dtCol.ColumnName = "ID";
+ dtCol.AutoIncrement = true;
+ dtCol.Caption = "ID";
+ dtCol.ReadOnly = true;
+ dtCol.Unique = true;
+ aTable.Columns.Add (dtCol);
+
+ // Create Name column and add to the table
+ dtCol = new DataColumn ();
+ dtCol.DataType = Type.GetType ("System.String");
+ dtCol.ColumnName = "FName";
+ dtCol.AutoIncrement = false;
+ dtCol.Caption = "First Name";
+ dtCol.ReadOnly = false;
+ dtCol.Unique = false;
+ aTable.Columns.Add (dtCol);
+
+ // Create Last Name column and add to the table.
+ dtCol = new DataColumn ();
+ dtCol.DataType = Type.GetType ("System.String");
+ dtCol.ColumnName = "LName";
+ dtCol.AutoIncrement = false;
+ dtCol.Caption = "Last Name";
+ dtCol.ReadOnly = false;
+ dtCol.Unique = false;
+ aTable.Columns.Add (dtCol);
+
+ // Create three rows to the table
+ dtRow = aTable.NewRow ();
+ dtRow["ID"] = 1001;
+ dtRow["FName"] = "Mahesh";
+ dtRow["LName"] = "Chand";
+ aTable.Rows.Add (dtRow);
+
+ dtRow = aTable.NewRow ();
+ dtRow["ID"] = 1002;
+ dtRow["FName"] = "Vadim";
+ dtRow["LName"] = "Popik";
+ aTable.Rows.Add (dtRow);
+
+ aTable.PrimaryKey = new DataColumn[] { aTable.Columns["ID"] };
+ return aTable;
+ }
}
}
+