PageRenderTime 55ms CodeModel.GetById 25ms RepoModel.GetById 0ms app.codeStats 1ms

/mcs/class/System.Web/Test/System.Web.UI.WebControls/WizardTest.cs

https://bitbucket.org/danipen/mono
C# | 2175 lines | 1842 code | 277 blank | 56 comment | 28 complexity | bf78b40b5b7ea50b75de8a61d131f6a8 MD5 | raw file
Possible License(s): Unlicense, Apache-2.0, LGPL-2.0, MPL-2.0-no-copyleft-exception, CC-BY-SA-3.0, GPL-2.0

Large files files are truncated, but you can click here to view the full file

  1. //
  2. // Tests for System.Web.UI.WebControls.WizardTest.cs
  3. //
  4. // Author:
  5. // Vladimir Krasnov <vladimirk@mainsoft.com>
  6. // Yoni Klein (yonik@mainsoft.com)
  7. //
  8. //
  9. // Copyright (C) 2005 Novell, Inc (http://www.novell.com)
  10. //
  11. // Permission is hereby granted, free of charge, to any person obtaining
  12. // a copy of this software and associated documentation files (the
  13. // "Software"), to deal in the Software without restriction, including
  14. // without limitation the rights to use, copy, modify, merge, publish,
  15. // distribute, sublicense, and/or sell copies of the Software, and to
  16. // permit persons to whom the Software is furnished to do so, subject to
  17. // the following conditions:
  18. //
  19. // The above copyright notice and this permission notice shall be
  20. // included in all copies or substantial portions of the Software.
  21. //
  22. // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
  23. // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
  24. // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
  25. // NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
  26. // LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
  27. // OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
  28. // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
  29. #if NET_2_0
  30. using System;
  31. using System.Collections.Generic;
  32. using System.Text;
  33. using System.Web;
  34. using System.Web.UI;
  35. using System.Drawing;
  36. using System.Web.UI.WebControls;
  37. using Template = System.Web.UI.WebControls;
  38. using System.IO;
  39. using System.Collections;
  40. using System.Collections.Specialized;
  41. using NUnit.Framework;
  42. using MonoTests.SystemWeb.Framework;
  43. using MonoTests.stand_alone.WebHarness;
  44. using System.Threading;
  45. using MonoTests.Common;
  46. namespace MonoTests.System.Web.UI.WebControls
  47. {
  48. class PokerWizard : Wizard
  49. {
  50. // View state Stuff
  51. public PokerWizard ()
  52. : base ()
  53. {
  54. TrackViewState ();
  55. }
  56. public object SaveState ()
  57. {
  58. return SaveViewState ();
  59. }
  60. public void LoadState (object o)
  61. {
  62. LoadViewState (o);
  63. }
  64. public StateBag StateBag
  65. {
  66. get { return base.ViewState; }
  67. }
  68. public static string PokerCancelButtonID
  69. {
  70. get
  71. {
  72. return PokerWizard.CancelButtonID;
  73. }
  74. }
  75. public static string PokerCustomFinishButtonID
  76. {
  77. get
  78. {
  79. return PokerWizard.CustomFinishButtonID;
  80. }
  81. }
  82. public static string PokerCustomNextButtonID
  83. {
  84. get
  85. {
  86. return PokerWizard.CustomNextButtonID;
  87. }
  88. }
  89. public static string PokerCustomPreviousButtonID
  90. {
  91. get
  92. {
  93. return PokerWizard.CustomPreviousButtonID;
  94. }
  95. }
  96. public static string PokerDataListID
  97. {
  98. get
  99. {
  100. return PokerWizard.DataListID;
  101. }
  102. }
  103. public static string PokerFinishButtonID
  104. {
  105. get
  106. {
  107. return PokerWizard.FinishButtonID;
  108. }
  109. }
  110. public static string PokerFinishPreviousButtonID
  111. {
  112. get
  113. {
  114. return PokerWizard.FinishPreviousButtonID;
  115. }
  116. }
  117. public static string PokerSideBarButtonID
  118. {
  119. get
  120. {
  121. return PokerWizard.SideBarButtonID;
  122. }
  123. }
  124. public static string PokerStartNextButtonID
  125. {
  126. get
  127. {
  128. return PokerWizard.StartNextButtonID;
  129. }
  130. }
  131. public static string PokerStepNextButtonID
  132. {
  133. get
  134. {
  135. return PokerWizard.StepNextButtonID;
  136. }
  137. }
  138. public static string PokerStepPreviousButtonID
  139. {
  140. get
  141. {
  142. return PokerWizard.StepPreviousButtonID;
  143. }
  144. }
  145. public HtmlTextWriterTag PokerTagKey
  146. {
  147. get
  148. {
  149. return base.TagKey;
  150. }
  151. }
  152. public object PokerSaveControlState ()
  153. {
  154. return base.SaveControlState ();
  155. }
  156. public void PokerLoadControlState (object state)
  157. {
  158. base.LoadControlState (state);
  159. }
  160. public bool PokerAllowNavigationToStep (int index)
  161. {
  162. return base.AllowNavigationToStep (index);
  163. }
  164. public void PokerCreateChildControls ()
  165. {
  166. base.CreateChildControls ();
  167. }
  168. public ControlCollection PokerCreateControlCollection ()
  169. {
  170. return base.CreateControlCollection ();
  171. }
  172. public Style PokerCreateControlStyle ()
  173. {
  174. return base.CreateControlStyle ();
  175. }
  176. public void DoOnActiveStepChanged (object source, EventArgs e)
  177. {
  178. base.OnActiveStepChanged (source, e);
  179. }
  180. public void DoOnCancelButtonClick (EventArgs e)
  181. {
  182. base.OnCancelButtonClick (e);
  183. }
  184. public void DoOnDataBinding (EventArgs e)
  185. {
  186. base.OnDataBinding (e);
  187. }
  188. public void DoOnFinishButtonClick (WizardNavigationEventArgs e)
  189. {
  190. base.OnFinishButtonClick (e);
  191. }
  192. public void DoOnInit (EventArgs e)
  193. {
  194. base.OnInit (e);
  195. }
  196. public void DoOnLoad (EventArgs e)
  197. {
  198. base.OnLoad (e);
  199. }
  200. public void DoOnNextButtonClick (WizardNavigationEventArgs e)
  201. {
  202. base.OnNextButtonClick (e);
  203. }
  204. public void DoOnPreRender (EventArgs e)
  205. {
  206. base.OnPreRender (e);
  207. }
  208. public void DoOnPreviousButtonClick (WizardNavigationEventArgs e)
  209. {
  210. base.OnPreviousButtonClick (e);
  211. }
  212. public void DoOnSideBarButtonClick (WizardNavigationEventArgs e)
  213. {
  214. base.OnSideBarButtonClick (e);
  215. }
  216. public string Tag
  217. {
  218. get { return base.TagName; }
  219. }
  220. public string Render ()
  221. {
  222. StringWriter sw = new StringWriter ();
  223. sw.NewLine = "\n";
  224. HtmlTextWriter writer = new HtmlTextWriter (sw);
  225. base.Render (writer);
  226. return writer.InnerWriter.ToString ();
  227. }
  228. public Style GetStyle ()
  229. {
  230. return base.CreateControlStyle ();
  231. }
  232. public void TrackState ()
  233. {
  234. TrackViewState ();
  235. }
  236. private bool onBubble;
  237. public bool OnBubbleEventCalled
  238. {
  239. get { return onBubble; }
  240. set { onBubble = value; }
  241. }
  242. protected override bool OnBubbleEvent (object source, EventArgs e)
  243. {
  244. onBubble = true;
  245. return base.OnBubbleEvent (source, e);
  246. }
  247. public bool DoBubbleEvent (object source, EventArgs e)
  248. {
  249. return base.OnBubbleEvent (source, e);
  250. }
  251. public void DoEnsureChildControls ()
  252. {
  253. base.EnsureChildControls ();
  254. }
  255. }
  256. #if NET_4_0
  257. class TestHeaderSpan : WebControl
  258. {
  259. public TestHeaderSpan ()
  260. : base (HtmlTextWriterTag.Span)
  261. { }
  262. }
  263. class TestHeaderTemplate : ITemplate
  264. {
  265. public void InstantiateIn (Control container)
  266. {
  267. container.Controls.Add (new LiteralControl ("Header"));
  268. }
  269. }
  270. class TestLayoutTemplate : ITemplate
  271. {
  272. public bool HasHeaderPlaceHolder { get; set; }
  273. public bool HasNavigationPlaceHolder { get; set; }
  274. public bool HasSideBarPlaceHolder { get; set; }
  275. public bool HasWizardStepPlaceHolder { get; set; }
  276. public Type HeaderPlaceHolderType { get; set; }
  277. public Type NavigationPlaceHolderType { get; set; }
  278. public Type SideBarPlaceHolderType { get; set; }
  279. public Type WizardStepPlaceHolderType { get; set; }
  280. public TestLayoutTemplate ()
  281. {
  282. HeaderPlaceHolderType = typeof (PlaceHolder);
  283. NavigationPlaceHolderType = typeof (PlaceHolder);
  284. SideBarPlaceHolderType = typeof (PlaceHolder);
  285. WizardStepPlaceHolderType = typeof (PlaceHolder);
  286. }
  287. public void InstantiateIn (Control container)
  288. {
  289. if (HasHeaderPlaceHolder)
  290. container.Controls.Add (MakePlaceHolder (HeaderPlaceHolderType, Wizard.HeaderPlaceholderId));
  291. if (HasSideBarPlaceHolder)
  292. container.Controls.Add (MakePlaceHolder (SideBarPlaceHolderType, Wizard.SideBarPlaceholderId));
  293. if (HasNavigationPlaceHolder)
  294. container.Controls.Add (MakePlaceHolder (NavigationPlaceHolderType, Wizard.NavigationPlaceholderId));
  295. if (HasWizardStepPlaceHolder)
  296. container.Controls.Add (MakePlaceHolder (WizardStepPlaceHolderType, Wizard.WizardStepPlaceholderId));
  297. }
  298. Control MakePlaceHolder (Type type, string id)
  299. {
  300. Control ctl = Activator.CreateInstance (type) as Control;
  301. if (ctl == null)
  302. throw new InvalidOperationException ("Placeholder must descend from the Control type.");
  303. ctl.ID = id;
  304. return ctl;
  305. }
  306. }
  307. #endif
  308. [TestFixture]
  309. public class WizardTest
  310. {
  311. [Test]
  312. public void Wizard_DefaultProperty ()
  313. {
  314. PokerWizard wizard = new PokerWizard ();
  315. // Static members
  316. Assert.AreEqual ("Cancel", Wizard.CancelCommandName, "CancelCommandName");
  317. Assert.AreEqual ("MoveComplete", Wizard.MoveCompleteCommandName, "MoveCompleteCommandName");
  318. Assert.AreEqual ("MoveNext", Wizard.MoveNextCommandName, "MoveNextCommandName");
  319. Assert.AreEqual ("MovePrevious", Wizard.MovePreviousCommandName, "MovePreviousCommandName");
  320. Assert.AreEqual ("Move", Wizard.MoveToCommandName, "MoveToCommandName");
  321. #if NET_4_0
  322. Assert.AreEqual ("headerPlaceholder", Wizard.HeaderPlaceholderId, "HeaderPlaceHolderId");
  323. Assert.AreEqual ("navigationPlaceholder", Wizard.NavigationPlaceholderId, "NavigationPlaceHolderId");
  324. Assert.AreEqual ("sideBarPlaceholder", Wizard.SideBarPlaceholderId, "SidePlaceholderId");
  325. Assert.AreEqual ("wizardStepPlaceholder", Wizard.WizardStepPlaceholderId, "WizardStepPlaceholderId");
  326. #endif
  327. // Protected Fields
  328. Assert.AreEqual ("CancelButton", PokerWizard.PokerCancelButtonID, "CancelButtonID");
  329. Assert.AreEqual ("CustomFinishButton", PokerWizard.PokerCustomFinishButtonID, "CustomFinishButtonID");
  330. Assert.AreEqual ("CustomNextButton", PokerWizard.PokerCustomNextButtonID, "CustomNextButtonID");
  331. Assert.AreEqual ("CustomPreviousButton", PokerWizard.PokerCustomPreviousButtonID, "CustomPreviousButtonID");
  332. Assert.AreEqual ("SideBarList", PokerWizard.PokerDataListID, "DataListID");
  333. Assert.AreEqual ("FinishButton", PokerWizard.PokerFinishButtonID, "FinishButtonID");
  334. Assert.AreEqual ("FinishPreviousButton", PokerWizard.PokerFinishPreviousButtonID, "FinishPreviousButtonID");
  335. Assert.AreEqual ("SideBarButton", PokerWizard.PokerSideBarButtonID, "SideBarButtonID");
  336. Assert.AreEqual ("StartNextButton", PokerWizard.PokerStartNextButtonID, "StartNextButtonID");
  337. Assert.AreEqual ("StepNextButton", PokerWizard.PokerStepNextButtonID, "StepNextButtonID");
  338. Assert.AreEqual ("StepPreviousButton", PokerWizard.PokerStepPreviousButtonID, "StepPreviousButtonID");
  339. //Public Properties
  340. Assert.AreEqual ("", wizard.CancelButtonImageUrl, "CancelButtonImageUrl");
  341. Assert.AreEqual (typeof (Style), wizard.CancelButtonStyle.GetType (), "CancelButtonStyle");
  342. Assert.AreEqual ("Cancel", wizard.CancelButtonText, "CancelButtonText");
  343. Assert.AreEqual (ButtonType.Button, wizard.CancelButtonType, "CancelButtonType");
  344. Assert.AreEqual ("", wizard.CancelDestinationPageUrl, "CancelDestinationPageUrl");
  345. Assert.AreEqual (0, wizard.CellPadding, "CellPadding");
  346. Assert.AreEqual (0, wizard.CellSpacing, "CellSpacing");
  347. Assert.AreEqual (false, wizard.DisplayCancelButton, "DisplayCancelButton");
  348. Assert.AreEqual (true, wizard.DisplaySideBar, "DisplaySideBar");
  349. Assert.AreEqual ("", wizard.FinishCompleteButtonImageUrl, "FinishCompleteButtonImageUrl");
  350. Assert.AreEqual (typeof (Style), wizard.FinishCompleteButtonStyle.GetType (), "FinishCompleteButtonStyle");
  351. Assert.AreEqual ("Finish", wizard.FinishCompleteButtonText, "FinishCompleteButtonText");
  352. Assert.AreEqual (ButtonType.Button, wizard.FinishCompleteButtonType, "FinishCompleteButtonType");
  353. Assert.AreEqual ("", wizard.FinishDestinationPageUrl, "FinishDestinationPageUrl");
  354. Assert.AreEqual (null, wizard.FinishNavigationTemplate, "FinishNavigationTemplate");
  355. Assert.AreEqual ("", wizard.FinishPreviousButtonImageUrl, "FinishPreviousButtonImageUrl");
  356. Assert.AreEqual (typeof (Style), wizard.FinishPreviousButtonStyle.GetType (), "FinishPreviousButtonStyle");
  357. Assert.AreEqual ("Previous", wizard.FinishPreviousButtonText, "FinishPreviousButtonText");
  358. Assert.AreEqual (ButtonType.Button, wizard.FinishPreviousButtonType, "FinishPreviousButtonType");
  359. Assert.AreEqual (typeof (TableItemStyle), wizard.HeaderStyle.GetType (), "HeaderStyle");
  360. Assert.AreEqual (null, wizard.HeaderTemplate, "HeaderTemplate");
  361. Assert.AreEqual ("", wizard.HeaderText, "HeaderText");
  362. Assert.AreEqual (typeof (Style), wizard.NavigationButtonStyle.GetType (), "NavigationButtonStyle");
  363. Assert.AreEqual (typeof (TableItemStyle), wizard.NavigationStyle.GetType (), "NavigationStyle");
  364. Assert.AreEqual (typeof (Style), wizard.SideBarButtonStyle.GetType (), "SideBarButtonStyle");
  365. Assert.AreEqual (typeof (TableItemStyle), wizard.SideBarStyle.GetType (), "SideBarStyle");
  366. Assert.AreEqual (null, wizard.SideBarTemplate, "SideBarTemplate");
  367. Assert.AreEqual (null, wizard.StartNavigationTemplate, "StartNavigationTemplate");
  368. Assert.AreEqual ("", wizard.StartNextButtonImageUrl, "StartNextButtonImageUrl");
  369. Assert.AreEqual (typeof (Style), wizard.StartNextButtonStyle.GetType (), "StartNextButtonStyle");
  370. Assert.AreEqual ("Next", wizard.StartNextButtonText, "StartNextButtonText");
  371. Assert.AreEqual (ButtonType.Button, wizard.StartNextButtonType, "StartNextButtonType");
  372. Assert.AreEqual (null, wizard.StepNavigationTemplate, "StepNavigationTemplate");
  373. Assert.AreEqual ("", wizard.StepNextButtonImageUrl, "StepNextButtonImageUrl");
  374. Assert.AreEqual (typeof (Style), wizard.StepNextButtonStyle.GetType (), "StepNextButtonStyle");
  375. Assert.AreEqual ("Next", wizard.StepNextButtonText, "StepNextButtonText");
  376. Assert.AreEqual (ButtonType.Button, wizard.StepNextButtonType, "StepNextButtonType");
  377. Assert.AreEqual ("", wizard.StepPreviousButtonImageUrl, "StepPreviousButtonImageUrl");
  378. Assert.AreEqual (typeof (Style), wizard.StepPreviousButtonStyle.GetType (), "StepPreviousButtonStyle");
  379. Assert.AreEqual ("Previous", wizard.StepPreviousButtonText, "StepPreviousButtonText");
  380. Assert.AreEqual (ButtonType.Button, wizard.StepPreviousButtonType, "StepPreviousButtonType");
  381. Assert.AreEqual (typeof (TableItemStyle), wizard.StepStyle.GetType (), "StepStyle");
  382. Assert.AreEqual (typeof (WizardStepCollection), wizard.WizardSteps.GetType (), "WizardSteps");
  383. Assert.IsNotNull (wizard.WizardSteps, "WizardSteps");
  384. }
  385. [Test]
  386. public void Wizard_DefaultPropertyNotWorking ()
  387. {
  388. PokerWizard wizard = new PokerWizard ();
  389. Assert.AreEqual (null, wizard.ActiveStep, "ActiveStep");
  390. Assert.AreEqual ("Skip Navigation Links.", wizard.SkipLinkText, "SkipLinkText");
  391. // Protected Properties
  392. Assert.AreEqual (typeof (HtmlTextWriterTag), wizard.PokerTagKey.GetType (), "TagKey");
  393. }
  394. [Test]
  395. public void Wizard_StateBag ()
  396. {
  397. PokerWizard w = new PokerWizard ();
  398. Assert.AreEqual (0, w.Attributes.Count, "Attributes.Count");
  399. Assert.AreEqual (0, w.StateBag.Count, "ViewState.Count");
  400. w.CancelButtonImageUrl = "value";
  401. Assert.AreEqual ("value", w.CancelButtonImageUrl, "CancelButtonImageUrl");
  402. Assert.AreEqual (1, w.StateBag.Count, "ViewState.Count-1");
  403. w.CancelDestinationPageUrl = "value";
  404. Assert.AreEqual ("value", w.CancelDestinationPageUrl, "CancelDestinationPageUrl");
  405. Assert.AreEqual (2, w.StateBag.Count, "ViewState.Count-2");
  406. w.FinishCompleteButtonImageUrl = "value";
  407. Assert.AreEqual ("value", w.FinishCompleteButtonImageUrl, "FinishCompleteButtonImageUrl");
  408. Assert.AreEqual (3, w.StateBag.Count, "ViewState.Count-3");
  409. w.FinishDestinationPageUrl = "value";
  410. Assert.AreEqual ("value", w.FinishDestinationPageUrl, "FinishDestinationPageUrl");
  411. Assert.AreEqual (4, w.StateBag.Count, "ViewState.Count-4");
  412. w.FinishPreviousButtonImageUrl = "value";
  413. Assert.AreEqual ("value", w.FinishPreviousButtonImageUrl, "FinishPreviousButtonImageUrl");
  414. Assert.AreEqual (5, w.StateBag.Count, "ViewState.Count-5");
  415. w.StartNextButtonImageUrl = "value";
  416. Assert.AreEqual ("value", w.StartNextButtonImageUrl, "StartNextButtonImageUrl");
  417. Assert.AreEqual (6, w.StateBag.Count, "ViewState.Count-6");
  418. w.StepNextButtonImageUrl = "value";
  419. Assert.AreEqual ("value", w.StepNextButtonImageUrl, "StepNextButtonImageUrl");
  420. Assert.AreEqual (7, w.StateBag.Count, "ViewState.Count-7");
  421. w.StepPreviousButtonImageUrl = "value";
  422. Assert.AreEqual ("value", w.StepPreviousButtonImageUrl, "StepPreviousButtonImageUrl");
  423. Assert.AreEqual (8, w.StateBag.Count, "ViewState.Count-8");
  424. w.CancelButtonText = "value";
  425. Assert.AreEqual ("value", w.CancelButtonText, "CancelButtonText");
  426. Assert.AreEqual (9, w.StateBag.Count, "ViewState.Count-9");
  427. w.FinishCompleteButtonText = "value";
  428. Assert.AreEqual ("value", w.FinishCompleteButtonText, "FinishCompleteButtonText");
  429. Assert.AreEqual (10, w.StateBag.Count, "ViewState.Count-10");
  430. w.StartNextButtonText = "value";
  431. Assert.AreEqual ("value", w.StartNextButtonText, "StartNextButtonText");
  432. Assert.AreEqual (11, w.StateBag.Count, "ViewState.Count-11");
  433. w.StepNextButtonText = "value";
  434. Assert.AreEqual ("value", w.StepNextButtonText, "StepNextButtonText");
  435. Assert.AreEqual (12, w.StateBag.Count, "ViewState.Count-12");
  436. w.StepPreviousButtonText = "value";
  437. Assert.AreEqual ("value", w.StepPreviousButtonText, "StepPreviousButtonText");
  438. Assert.AreEqual (13, w.StateBag.Count, "ViewState.Count-13");
  439. w.CancelButtonType = ButtonType.Button;
  440. Assert.AreEqual (ButtonType.Button, w.CancelButtonType, "CancelButtonType");
  441. Assert.AreEqual (14, w.StateBag.Count, "ViewState.Count-14");
  442. w.FinishCompleteButtonType = ButtonType.Button;
  443. Assert.AreEqual (ButtonType.Button, w.FinishCompleteButtonType, "FinishCompleteButtonType");
  444. Assert.AreEqual (15, w.StateBag.Count, "ViewState.Count-15");
  445. w.FinishPreviousButtonType = ButtonType.Button;
  446. Assert.AreEqual (ButtonType.Button, w.FinishPreviousButtonType, "FinishPreviousButtonType");
  447. Assert.AreEqual (16, w.StateBag.Count, "ViewState.Count-16");
  448. w.StartNextButtonType = ButtonType.Button;
  449. Assert.AreEqual (ButtonType.Button, w.StartNextButtonType, "StartNextButtonType");
  450. Assert.AreEqual (17, w.StateBag.Count, "ViewState.Count-17");
  451. w.StepNextButtonType = ButtonType.Button;
  452. Assert.AreEqual (ButtonType.Button, w.StepNextButtonType, "StepNextButtonType");
  453. Assert.AreEqual (18, w.StateBag.Count, "ViewState.Count-18");
  454. w.StepPreviousButtonType = ButtonType.Button;
  455. Assert.AreEqual (ButtonType.Button, w.StepPreviousButtonType, "StepPreviousButtonType");
  456. Assert.AreEqual (19, w.StateBag.Count, "ViewState.Count-19");
  457. }
  458. [Test]
  459. [Category ("NunitWeb")]
  460. public void Wizard_CancelButtonPropertyRendering ()
  461. {
  462. WebTest t = new WebTest (PageInvoker.CreateOnPreInit (_CancelButtonPropertyRendering));
  463. string html = t.Run ();
  464. #if NET_4_0
  465. string origin = "<table cellspacing=\"0\" cellpadding=\"0\" style=\"border-collapse:collapse;\">\r\n\t<tr style=\"height:100%;\">\r\n\t\t<td>Start</td>\r\n\t</tr><tr>\r\n\t\t<td align=\"right\"><table cellspacing=\"5\" cellpadding=\"5\">\r\n\t\t\t<tr>\r\n\t\t\t\t<td align=\"right\"><input type=\"submit\" name=\"ctl00$StartNavigationTemplateContainerID$StartNextButton\" value=\"Next\" id=\"ctl00_StartNavigationTemplateContainerID_StartNextButton\" /></td><td align=\"right\"><input type=\"submit\" name=\"ctl00$StartNavigationTemplateContainerID$CancelButton\" value=\"CancelButtonText\" id=\"ctl00_StartNavigationTemplateContainerID_CancelButton\" style=\"border-color:Red;\" /></td>\r\n\t\t\t</tr>\r\n\t\t</table></td>\r\n\t</tr>\r\n</table>";
  466. #else
  467. string origin = "<table cellspacing=\"0\" cellpadding=\"0\" border=\"0\" style=\"border-collapse:collapse;\">\r\n\t<tr style=\"height:100%;\">\r\n\t\t<td>Start</td>\r\n\t</tr><tr>\r\n\t\t<td align=\"right\"><table cellspacing=\"5\" cellpadding=\"5\" border=\"0\">\r\n\t\t\t<tr>\r\n\t\t\t\t<td align=\"right\"><input type=\"submit\" name=\"ctl00$StartNavigationTemplateContainerID$StartNextButton\" value=\"Next\" id=\"ctl00_StartNavigationTemplateContainerID_StartNextButton\" /></td><td align=\"right\"><input type=\"submit\" name=\"ctl00$StartNavigationTemplateContainerID$CancelButton\" value=\"CancelButtonText\" id=\"ctl00_StartNavigationTemplateContainerID_CancelButton\" style=\"border-color:Red;\" /></td>\r\n\t\t\t</tr>\r\n\t\t</table></td>\r\n\t</tr>\r\n</table>";
  468. #endif
  469. string renderedHtml = HtmlDiff.GetControlFromPageHtml (html);
  470. HtmlDiff.AssertAreEqual (origin, renderedHtml, "CancelButtonPropertyRendering");
  471. }
  472. public static void _CancelButtonPropertyRendering (Page p)
  473. {
  474. LiteralControl lcb = new LiteralControl (HtmlDiff.BEGIN_TAG);
  475. LiteralControl lce = new LiteralControl (HtmlDiff.END_TAG);
  476. PokerWizard w = new PokerWizard ();
  477. w.CancelButtonStyle.BorderColor = Color.Red;
  478. w.CancelButtonImageUrl = "CancelButtonImageUrl";
  479. w.CancelDestinationPageUrl = "CancelDestinationPageUrl";
  480. w.CancelButtonText = "CancelButtonText";
  481. w.CancelButtonType = ButtonType.Button;
  482. w.DisplayCancelButton = true;
  483. WizardStep ws1 = new WizardStep ();
  484. ws1.ID = "step1";
  485. ws1.StepType = WizardStepType.Start;
  486. ws1.Controls.Add (new LiteralControl ("Start"));
  487. WizardStep ws2 = new WizardStep ();
  488. ws2.ID = "step2";
  489. ws2.StepType = WizardStepType.Finish;
  490. ws2.Controls.Add (new LiteralControl ("Finish"));
  491. w.DisplaySideBar = false;
  492. w.WizardSteps.Add (ws1);
  493. w.WizardSteps.Add (ws2);
  494. p.Controls.Add(lcb);
  495. p.Controls.Add (w);
  496. p.Controls.Add (lce);
  497. }
  498. [Test]
  499. [Category ("NunitWeb")]
  500. public void Wizard_FinishButtonPropertyRendering ()
  501. {
  502. WebTest t = new WebTest (PageInvoker.CreateOnPreInit (_FinishButtonPropertyRendering));
  503. string html = t.Run ();
  504. #if NET_4_0
  505. string origin = "<table cellspacing=\"0\" cellpadding=\"0\" style=\"border-collapse:collapse;\">\r\n\t<tr style=\"height:100%;\">\r\n\t\t<td>Finish</td>\r\n\t</tr><tr>\r\n\t\t<td align=\"right\"><table cellspacing=\"5\" cellpadding=\"5\">\r\n\t\t\t<tr>\r\n\t\t\t\t<td align=\"right\"><input type=\"image\" name=\"ctl00$FinishNavigationTemplateContainerID$FinishPreviousImageButton\" id=\"ctl00_FinishNavigationTemplateContainerID_FinishPreviousImageButton\" src=\"http://FinishPreviousButtonImageUrl\" alt=\"FinishPreviousButtonText\" style=\"background-color:Red;\" /></td><td align=\"right\"><a id=\"ctl00_FinishNavigationTemplateContainerID_FinishLinkButton\" href=\"javascript:__doPostBack(&#39;ctl00$FinishNavigationTemplateContainerID$FinishLinkButton&#39;,&#39;&#39;)\" style=\"border-color:Red;\">FinishCompleteButtonText</a></td>\r\n\t\t\t</tr>\r\n\t\t</table></td>\r\n\t</tr>\r\n</table>";
  506. #else
  507. string origin = "<table cellspacing=\"0\" cellpadding=\"0\" border=\"0\" style=\"border-collapse:collapse;\">\r\n\t<tr style=\"height:100%;\">\r\n\t\t<td>Finish</td>\r\n\t</tr><tr>\r\n\t\t<td align=\"right\"><table cellspacing=\"5\" cellpadding=\"5\" border=\"0\">\r\n\t\t\t<tr>\r\n\t\t\t\t<td align=\"right\"><input type=\"image\" name=\"ctl00$FinishNavigationTemplateContainerID$FinishPreviousImageButton\" id=\"ctl00_FinishNavigationTemplateContainerID_FinishPreviousImageButton\" src=\"http://FinishPreviousButtonImageUrl\" alt=\"FinishPreviousButtonText\" style=\"background-color:Red;border-width:0px;\" /></td><td align=\"right\"><a id=\"ctl00_FinishNavigationTemplateContainerID_FinishLinkButton\" href=\"javascript:__doPostBack('ctl00$FinishNavigationTemplateContainerID$FinishLinkButton','')\" style=\"border-color:Red;\">FinishCompleteButtonText</a></td>\r\n\t\t\t</tr>\r\n\t\t</table></td>\r\n\t</tr>\r\n</table>";
  508. #endif
  509. string renderedHtml = HtmlDiff.GetControlFromPageHtml (html);
  510. HtmlDiff.AssertAreEqual (origin, renderedHtml, "CancelButtonPropertyRendering");
  511. }
  512. public static void _FinishButtonPropertyRendering (Page p)
  513. {
  514. LiteralControl lcb = new LiteralControl (HtmlDiff.BEGIN_TAG);
  515. LiteralControl lce = new LiteralControl (HtmlDiff.END_TAG);
  516. PokerWizard w = new PokerWizard ();
  517. w.FinishCompleteButtonStyle.BorderColor = Color.Red;
  518. w.FinishCompleteButtonImageUrl = "http://FinishCompleteButtonImageUrl";
  519. w.FinishDestinationPageUrl = "FinishDestinationPageUrl";
  520. w.FinishCompleteButtonText = "FinishCompleteButtonText";
  521. w.FinishCompleteButtonType = ButtonType.Link;
  522. w.FinishPreviousButtonImageUrl = "http://FinishPreviousButtonImageUrl";
  523. w.FinishPreviousButtonStyle.BackColor = Color.Red;
  524. w.FinishPreviousButtonText = "FinishPreviousButtonText";
  525. w.FinishPreviousButtonType = ButtonType.Image;
  526. WizardStep ws0 = new WizardStep ();
  527. ws0.ID = "step0";
  528. ws0.StepType = WizardStepType.Start;
  529. ws0.Controls.Add (new LiteralControl ("Finish"));
  530. WizardStep ws1 = new WizardStep ();
  531. ws1.ID = "step1";
  532. ws1.StepType = WizardStepType.Finish;
  533. ws1.Controls.Add (new LiteralControl ("Finish"));
  534. w.DisplaySideBar = false;
  535. w.WizardSteps.Add (ws0);
  536. w.WizardSteps.Add (ws1);
  537. w.MoveTo (ws1);
  538. p.Controls.Add (lcb);
  539. p.Controls.Add (w);
  540. p.Controls.Add (lce);
  541. }
  542. [Test]
  543. [Category ("NunitWeb")]
  544. public void Wizard_HeaderRendering ()
  545. {
  546. WebTest t = new WebTest (PageInvoker.CreateOnPreInit (_HeaderRendering));
  547. string html = t.Run ();
  548. #if NET_4_0
  549. string origin = "<table cellspacing=\"0\" cellpadding=\"0\" style=\"border-collapse:collapse;\">\r\n\t<tr>\r\n\t\t<td style=\"background-color:Red;\"><input name=\"ctl00$HeaderContainer$TextBox1\" type=\"text\" id=\"ctl00_HeaderContainer_TextBox1\" /></td>\r\n\t</tr><tr style=\"height:100%;\">\r\n\t\t<td>Finish</td>\r\n\t</tr><tr>\r\n\t\t<td align=\"right\"><table cellspacing=\"5\" cellpadding=\"5\">\r\n\t\t\t<tr>\r\n\t\t\t\t<td align=\"right\"><input type=\"submit\" name=\"ctl00$FinishNavigationTemplateContainerID$FinishPreviousButton\" value=\"Previous\" id=\"ctl00_FinishNavigationTemplateContainerID_FinishPreviousButton\" /></td><td align=\"right\"><input type=\"submit\" name=\"ctl00$FinishNavigationTemplateContainerID$FinishButton\" value=\"Finish\" id=\"ctl00_FinishNavigationTemplateContainerID_FinishButton\" /></td>\r\n\t\t\t</tr>\r\n\t\t</table></td>\r\n\t</tr>\r\n</table>";
  550. #else
  551. string origin = "<table cellspacing=\"0\" cellpadding=\"0\" border=\"0\" style=\"border-collapse:collapse;\">\r\n\t<tr>\r\n\t\t<td style=\"background-color:Red;\"><input name=\"ctl00$HeaderContainer$TextBox1\" type=\"text\" id=\"ctl00_HeaderContainer_TextBox1\" /></td>\r\n\t</tr><tr style=\"height:100%;\">\r\n\t\t<td>Finish</td>\r\n\t</tr><tr>\r\n\t\t<td align=\"right\"><table cellspacing=\"5\" cellpadding=\"5\" border=\"0\">\r\n\t\t\t<tr>\r\n\t\t\t\t<td align=\"right\"><input type=\"submit\" name=\"ctl00$FinishNavigationTemplateContainerID$FinishPreviousButton\" value=\"Previous\" id=\"ctl00_FinishNavigationTemplateContainerID_FinishPreviousButton\" /></td><td align=\"right\"><input type=\"submit\" name=\"ctl00$FinishNavigationTemplateContainerID$FinishButton\" value=\"Finish\" id=\"ctl00_FinishNavigationTemplateContainerID_FinishButton\" /></td>\r\n\t\t\t</tr>\r\n\t\t</table></td>\r\n\t</tr>\r\n</table>";
  552. #endif
  553. string renderedHtml = HtmlDiff.GetControlFromPageHtml (html);
  554. HtmlDiff.AssertAreEqual (origin, renderedHtml, "HeaderRendering");
  555. }
  556. public static void _HeaderRendering (Page p)
  557. {
  558. LiteralControl lcb = new LiteralControl (HtmlDiff.BEGIN_TAG);
  559. LiteralControl lce = new LiteralControl (HtmlDiff.END_TAG);
  560. PokerWizard w = new PokerWizard ();
  561. w.HeaderStyle.BackColor = Color.Red;
  562. w.HeaderTemplate = new CompiledTemplateBuilder (_BuildHeader);
  563. w.HeaderText = "test";
  564. WizardStep ws0 = new WizardStep ();
  565. ws0.ID = "step0";
  566. ws0.StepType = WizardStepType.Start;
  567. ws0.Controls.Add (new LiteralControl ("Start"));
  568. WizardStep ws1 = new WizardStep ();
  569. ws1.ID = "step1";
  570. ws1.StepType = WizardStepType.Finish;
  571. ws1.Controls.Add (new LiteralControl ("Finish"));
  572. w.DisplaySideBar = false;
  573. w.WizardSteps.Add (ws0);
  574. w.WizardSteps.Add (ws1);
  575. w.MoveTo (ws1);
  576. p.Controls.Add (lcb);
  577. p.Controls.Add (w);
  578. p.Controls.Add (lce);
  579. }
  580. private static void _BuildHeader (Control container)
  581. {
  582. TextBox ctrl;
  583. ctrl = new TextBox ();
  584. ctrl.ID = "TextBox1";
  585. container.Controls.Add (ctrl);
  586. }
  587. [Test]
  588. [Category ("NunitWeb")]
  589. public void Wizard_SideBarRendering ()
  590. {
  591. WebTest t = new WebTest (PageInvoker.CreateOnPreInit (_SideBarRendering));
  592. string html = t.Run ();
  593. #if NET_4_0
  594. string origin = "<table cellspacing=\"0\" cellpadding=\"0\" style=\"border-collapse:collapse;\">\r\n\t<tr>\r\n\t\t<td style=\"background-color:Red;height:100%;\"><a href=\"#ctl00_SkipLink\"><img alt=\"Skip Navigation Links.\" height=\"0\" width=\"0\" src=\"/NunitWeb/WebResource.axd?d=8VpphgAbakKUC_J8R6hR0Q2&amp;t=634067491135766272\" style=\"border-width:0px;\" /></a><table id=\"ctl00_SideBarContainer_SideBarList\" cellspacing=\"0\" style=\"border-collapse:collapse;\">\r\n\t\t\t<tr>\r\n\t\t\t\t<td><input type=\"button\" name=\"ctl00$SideBarContainer$SideBarList$ctl00$SideBarButton\" value=\"step1\" onclick=\"javascript:__doPostBack(&#39;ctl00$SideBarContainer$SideBarList$ctl00$SideBarButton&#39;,&#39;&#39;)\" id=\"ctl00_SideBarContainer_SideBarList_SideBarButton_0\" /></td>\r\n\t\t\t</tr><tr>\r\n\t\t\t\t<td><input type=\"button\" name=\"ctl00$SideBarContainer$SideBarList$ctl01$SideBarButton\" value=\"step2\" onclick=\"javascript:__doPostBack(&#39;ctl00$SideBarContainer$SideBarList$ctl01$SideBarButton&#39;,&#39;&#39;)\" id=\"ctl00_SideBarContainer_SideBarList_SideBarButton_1\" /></td>\r\n\t\t\t</tr>\r\n\t\t</table><a id=\"ctl00_SkipLink\"></a></td><td style=\"height:100%;\"><table cellspacing=\"0\" cellpadding=\"0\" style=\"height:100%;width:100%;border-collapse:collapse;\">\r\n\t\t\t<tr style=\"height:100%;\">\r\n\t\t\t\t<td>Step 1</td>\r\n\t\t\t</tr><tr>\r\n\t\t\t\t<td align=\"right\"><table cellspacing=\"5\" cellpadding=\"5\">\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td align=\"right\"><input type=\"submit\" name=\"ctl00$StartNavigationTemplateContainerID$StartNextButton\" value=\"Next\" id=\"ctl00_StartNavigationTemplateContainerID_StartNextButton\" /></td>\r\n\t\t\t\t\t</tr>\r\n\t\t\t\t</table></td>\r\n\t\t\t</tr>\r\n\t\t</table></td>\r\n\t</tr>\r\n</table>";
  595. #else
  596. string origin = "<table cellspacing=\"0\" cellpadding=\"0\" border=\"0\" style=\"border-collapse:collapse;\">\r\n\t<tr>\r\n\t\t<td style=\"background-color:Red;height:100%;\"><a href=\"#ctl00_SkipLink\"><img alt=\"Skip Navigation Links.\" height=\"0\" width=\"0\" src=\"/NunitWeb/WebResource.axd?d=4RHYfeNnynkXiM59uthjZg2&amp;t=633802729995006876\" style=\"border-width:0px;\" /></a><table id=\"ctl00_SideBarContainer_SideBarList\" cellspacing=\"0\" border=\"0\" style=\"border-collapse:collapse;\">\r\n\t\t\t<tr>\r\n\t\t\t\t<td><input type=\"button\" name=\"ctl00$SideBarContainer$SideBarList$ctl00$SideBarButton\" value=\"step1\" onclick=\"javascript:__doPostBack('ctl00$SideBarContainer$SideBarList$ctl00$SideBarButton','')\" id=\"ctl00_SideBarContainer_SideBarList_ctl00_SideBarButton\" /></td>\r\n\t\t\t</tr><tr>\r\n\t\t\t\t<td><input type=\"button\" name=\"ctl00$SideBarContainer$SideBarList$ctl01$SideBarButton\" value=\"step2\" onclick=\"javascript:__doPostBack('ctl00$SideBarContainer$SideBarList$ctl01$SideBarButton','')\" id=\"ctl00_SideBarContainer_SideBarList_ctl01_SideBarButton\" /></td>\r\n\t\t\t</tr>\r\n\t\t</table><a id=\"ctl00_SkipLink\"></a></td><td style=\"height:100%;\"><table cellspacing=\"0\" cellpadding=\"0\" border=\"0\" style=\"height:100%;width:100%;border-collapse:collapse;\">\r\n\t\t\t<tr style=\"height:100%;\">\r\n\t\t\t\t<td>Step 1</td>\r\n\t\t\t</tr><tr>\r\n\t\t\t\t<td align=\"right\"><table cellspacing=\"5\" cellpadding=\"5\" border=\"0\">\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td align=\"right\"><input type=\"submit\" name=\"ctl00$StartNavigationTemplateContainerID$StartNextButton\" value=\"Next\" id=\"ctl00_StartNavigationTemplateContainerID_StartNextButton\" /></td>\r\n\t\t\t\t\t</tr>\r\n\t\t\t\t</table></td>\r\n\t\t\t</tr>\r\n\t\t</table></td>\r\n\t</tr>\r\n</table>";
  597. #endif
  598. string renderedHtml = HtmlDiff.GetControlFromPageHtml (html);
  599. HtmlDiff.AssertAreEqual (origin, renderedHtml, "SideBarRendering");
  600. }
  601. public static void _SideBarRendering (Page p)
  602. {
  603. LiteralControl lcb = new LiteralControl (HtmlDiff.BEGIN_TAG);
  604. LiteralControl lce = new LiteralControl (HtmlDiff.END_TAG);
  605. PokerWizard w = new PokerWizard ();
  606. w.SideBarButtonStyle.BackColor = Color.Red;
  607. w.SideBarStyle.BackColor = Color.Red;
  608. w.SideBarTemplate = new CompiledTemplateBuilder (_SideBarTemplate);
  609. WizardStep ws1 = new WizardStep ();
  610. ws1.ID = "step1";
  611. ws1.StepType = WizardStepType.Auto;
  612. ws1.Controls.Add (new LiteralControl ("Step 1"));
  613. WizardStep ws2 = new WizardStep ();
  614. ws2.ID = "step2";
  615. ws2.StepType = WizardStepType.Auto;
  616. ws2.Controls.Add (new LiteralControl ("Step 2"));
  617. w.WizardSteps.Add (ws1);
  618. w.WizardSteps.Add (ws2);
  619. p.Controls.Add (lcb);
  620. p.Controls.Add (w);
  621. p.Controls.Add (lce);
  622. }
  623. private static void _SideBarTemplate (Control container)
  624. {
  625. DataList list = new DataList ();
  626. list.ItemTemplate = new CompiledTemplateBuilder (_ItemTemplate);
  627. list.ID = "SideBarList";
  628. container.Controls.Add (list);
  629. }
  630. private static void _ItemTemplate (Control container)
  631. {
  632. Button button = new Button();
  633. button.ID = "SideBarButton";
  634. container.Controls.Add (button);
  635. }
  636. [Test]
  637. [Category ("NunitWeb")]
  638. public void Wizard_NavigationRendering ()
  639. {
  640. WebTest t = new WebTest (PageInvoker.CreateOnPreInit (_NavigationRendering));
  641. string html = t.Run ();
  642. #if NET_4_0
  643. string origin = "<table cellspacing=\"0\" cellpadding=\"0\" style=\"border-collapse:collapse;\">\r\n\t<tr>\r\n\t\t<td style=\"height:100%;\"><a href=\"#ctl00_SkipLink\"><img alt=\"Skip Navigation Links.\" height=\"0\" width=\"0\" src=\"/NunitWeb/WebResource.axd?d=8VpphgAbakKUC_J8R6hR0Q2&amp;t=634067491135766272\" style=\"border-width:0px;\" /></a><table id=\"ctl00_SideBarContainer_SideBarList\" cellspacing=\"0\" style=\"border-collapse:collapse;\">\r\n\t\t\t<tr>\r\n\t\t\t\t<td style=\"font-weight:bold;\"><a id=\"ctl00_SideBarContainer_SideBarList_SideBarButton_0\" href=\"javascript:__doPostBack(&#39;ctl00$SideBarContainer$SideBarList$ctl00$SideBarButton&#39;,&#39;&#39;)\">step1</a></td>\r\n\t\t\t</tr><tr>\r\n\t\t\t\t<td><a id=\"ctl00_SideBarContainer_SideBarList_SideBarButton_1\" href=\"javascript:__doPostBack(&#39;ctl00$SideBarContainer$SideBarList$ctl01$SideBarButton&#39;,&#39;&#39;)\">step2</a></td>\r\n\t\t\t</tr>\r\n\t\t</table><a id=\"ctl00_SkipLink\"></a></td><td style=\"height:100%;\"><table cellspacing=\"0\" cellpadding=\"0\" style=\"height:100%;width:100%;border-collapse:collapse;\">\r\n\t\t\t<tr style=\"height:100%;\">\r\n\t\t\t\t<td>Start</td>\r\n\t\t\t</tr><tr>\r\n\t\t\t\t<td align=\"right\" style=\"background-color:Yellow;\"><table cellspacing=\"5\" cellpadding=\"5\">\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td align=\"right\"><input type=\"submit\" name=\"ctl00$StartNavigationTemplateContainerID$StartNextButton\" value=\"Next\" id=\"ctl00_StartNavigationTemplateContainerID_StartNextButton\" style=\"background-color:Red;\" /></td>\r\n\t\t\t\t\t</tr>\r\n\t\t\t\t</table></td>\r\n\t\t\t</tr>\r\n\t\t</table></td>\r\n\t</tr>\r\n</table>";
  644. #else
  645. string origin = "<table cellspacing=\"0\" cellpadding=\"0\" border=\"0\" style=\"border-collapse:collapse;\">\r\n\t<tr>\r\n\t\t<td style=\"height:100%;\"><a href=\"#ctl00_SkipLink\"><img alt=\"Skip Navigation Links.\" height=\"0\" width=\"0\" src=\"/NunitWeb/WebResource.axd?d=4RHYfeNnynkXiM59uthjZg2&amp;t=633802729995006876\" style=\"border-width:0px;\" /></a><table id=\"ctl00_SideBarContainer_SideBarList\" cellspacing=\"0\" border=\"0\" style=\"border-collapse:collapse;\">\r\n\t\t\t<tr>\r\n\t\t\t\t<td style=\"font-weight:bold;\"><a id=\"ctl00_SideBarContainer_SideBarList_ctl00_SideBarButton\" href=\"javascript:__doPostBack('ctl00$SideBarContainer$SideBarList$ctl00$SideBarButton','')\">step1</a></td>\r\n\t\t\t</tr><tr>\r\n\t\t\t\t<td><a id=\"ctl00_SideBarContainer_SideBarList_ctl01_SideBarButton\" href=\"javascript:__doPostBack('ctl00$SideBarContainer$SideBarList$ctl01$SideBarButton','')\">step2</a></td>\r\n\t\t\t</tr>\r\n\t\t</table><a id=\"ctl00_SkipLink\"></a></td><td style=\"height:100%;\"><table cellspacing=\"0\" cellpadding=\"0\" border=\"0\" style=\"height:100%;width:100%;border-collapse:collapse;\">\r\n\t\t\t<tr style=\"height:100%;\">\r\n\t\t\t\t<td>Start</td>\r\n\t\t\t</tr><tr>\r\n\t\t\t\t<td align=\"right\" style=\"background-color:Yellow;\"><table cellspacing=\"5\" cellpadding=\"5\" border=\"0\">\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td align=\"right\"><input type=\"submit\" name=\"ctl00$StartNavigationTemplateContainerID$StartNextButton\" value=\"Next\" id=\"ctl00_StartNavigationTemplateContainerID_StartNextButton\" style=\"background-color:Red;\" /></td>\r\n\t\t\t\t\t</tr>\r\n\t\t\t\t</table></td>\r\n\t\t\t</tr>\r\n\t\t</table></td>\r\n\t</tr>\r\n</table>";
  646. #endif
  647. string renderedHtml = HtmlDiff.GetControlFromPageHtml (html);
  648. HtmlDiff.AssertAreEqual (origin, renderedHtml, "NavigationRendering");
  649. }
  650. public static void _NavigationRendering (Page p)
  651. {
  652. LiteralControl lcb = new LiteralControl (HtmlDiff.BEGIN_TAG);
  653. LiteralControl lce = new LiteralControl (HtmlDiff.END_TAG);
  654. PokerWizard w = new PokerWizard ();
  655. WizardStep ws1 = new WizardStep ();
  656. WizardStep ws2 = new WizardStep ();
  657. ws1.ID = "step1";
  658. ws1.StepType = WizardStepType.Start;
  659. ws1.Controls.Add (new LiteralControl ("Start"));
  660. ws2.ID = "step2";
  661. ws2.StepType = WizardStepType.Start;
  662. ws2.Controls.Add (new LiteralControl ("Finish"));
  663. w.NavigationButtonStyle.BackColor = Color.Red;
  664. w.NavigationStyle.BackColor = Color.Yellow;
  665. w.WizardSteps.Add (ws1);
  666. w.WizardSteps.Add (ws2);
  667. p.Controls.Add (lcb);
  668. p.Controls.Add (w);
  669. p.Controls.Add (lce);
  670. }
  671. [Test]
  672. [Category ("NunitWeb")]
  673. public void Wizard_StartTypeRendering ()
  674. {
  675. WebTest t = new WebTest (PageInvoker.CreateOnPreInit (_StartTypeRendering));
  676. string html = t.Run ();
  677. #if NET_4_0
  678. string origin = "<table cellspacing=\"0\" cellpadding=\"0\" style=\"border-collapse:collapse;\">\r\n\t<tr>\r\n\t\t<td style=\"height:100%;\"><a href=\"#ctl00_SkipLink\"><img alt=\"Skip Navigation Links.\" height=\"0\" width=\"0\" src=\"/NunitWeb/WebResource.axd?d=8VpphgAbakKUC_J8R6hR0Q2&amp;t=634067491135766272\" style=\"border-width:0px;\" /></a><table id=\"ctl00_SideBarContainer_SideBarList\" cellspacing=\"0\" style=\"border-collapse:collapse;\">\r\n\t\t\t<tr>\r\n\t\t\t\t<td style=\"font-weight:bold;\"><a id=\"ctl00_SideBarContainer_SideBarList_SideBarButton_0\" href=\"javascript:__doPostBack(&#39;ctl00$SideBarContainer$SideBarList$ctl00$SideBarButton&#39;,&#39;&#39;)\">step1</a></td>\r\n\t\t\t</tr><tr>\r\n\t\t\t\t<td><a id=\"ctl00_SideBarContainer_SideBarList_SideBarButton_1\" href=\"javascript:__doPostBack(&#39;ctl00$SideBarContainer$SideBarList$ctl01$SideBarButton&#39;,&#39;&#39;)\">step2</a></td>\r\n\t\t\t</tr>\r\n\t\t</table><a id=\"ctl00_SkipLink\"></a></td><td style=\"height:100%;\"><table cellspacing=\"0\" cellpadding=\"0\" style=\"height:100%;width:100%;border-collapse:collapse;\">\r\n\t\t\t<tr style=\"height:100%;\">\r\n\t\t\t\t<td>Start</td>\r\n\t\t\t</tr><tr>\r\n\t\t\t\t<td align=\"right\"><table cellspacing=\"5\" cellpadding=\"5\">\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td align=\"right\"><input type=\"submit\" name=\"ctl00$StartNavigationTemplateContainerID$StartNextButton\" value=\"StartNextButtonText\" id=\"ctl00_StartNavigationTemplateContainerID_StartNextButton\" style=\"background-color:Red;\" /></td>\r\n\t\t\t\t\t</tr>\r\n\t\t\t\t</table></td>\r\n\t\t\t</tr>\r\n\t\t</table></td>\r\n\t</tr>\r\n</table>";
  679. #else
  680. string origin = "<table cellspacing=\"0\" cellpadding=\"0\" border=\"0\" style=\"border-collapse:collapse;\">\r\n\t<tr>\r\n\t\t<td style=\"height:100%;\"><a href=\"#ctl00_SkipLink\"><img alt=\"Skip Navigation Links.\" height=\"0\" width=\"0\" src=\"/NunitWeb/WebResource.axd?d=4RHYfeNnynkXiM59uthjZg2&amp;t=633802729995006876\" style=\"border-width:0px;\" /></a><table id=\"ctl00_SideBarContainer_SideBarList\" cellspacing=\"0\" border=\"0\" style=\"border-collapse:collapse;\">\r\n\t\t\t<tr>\r\n\t\t\t\t<td style=\"font-weight:bold;\"><a id=\"ctl00_SideBarContainer_SideBarList_ctl00_SideBarButton\" href=\"javascript:__doPostBack('ctl00$SideBarContainer$SideBarList$ctl00$SideBarButton','')\">step1</a></td>\r\n\t\t\t</tr><tr>\r\n\t\t\t\t<td><a id=\"ctl00_SideBarContainer_SideBarList_ctl01_SideBarButton\" href=\"javascript:__doPostBack('ctl00$SideBarContainer$SideBarList$ctl01$SideBarButton','')\">step2</a></td>\r\n\t\t\t</tr>\r\n\t\t</table><a id=\"ctl00_SkipLink\"></a></td><td style=\"height:100%;\"><table cellspacing=\"0\" cellpadding=\"0\" border=\"0\" style=\"height:100%;width:100%;border-collapse:collapse;\">\r\n\t\t\t<tr style=\"height:100%;\">\r\n\t\t\t\t<td>Start</td>\r\n\t\t\t</tr><tr>\r\n\t\t\t\t<td align=\"right\"><table cellspacing=\"5\" cellpadding=\"5\" border=\"0\">\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td align=\"right\"><input type=\"submit\" name=\"ctl00$StartNavigationTemplateContainerID$StartNextButton\" value=\"StartNextButtonText\" id=\"ctl00_StartNavigationTemplateContainerID_StartNextButton\" style=\"background-color:Red;\" /></td>\r\n\t\t\t\t\t</tr>\r\n\t\t\t\t</table></td>\r\n\t\t\t</tr>\r\n\t\t</table></td>\r\n\t</tr>\r\n</table>";
  681. #endif
  682. string renderedHtml = HtmlDiff.GetControlFromPageHtml (html);
  683. HtmlDiff.AssertAreEqual (origin, renderedHtml, "StartTypeRendering");
  684. }
  685. public static void _StartTypeRendering (Page p)
  686. {
  687. LiteralControl lcb = new LiteralControl (HtmlDiff.BEGIN_TAG);
  688. LiteralControl lce = new LiteralControl (HtmlDiff.END_TAG);
  689. PokerWizard w = new PokerWizard ();
  690. WizardStep ws1 = new WizardStep ();
  691. WizardStep ws2 = new WizardStep ();
  692. ws1.ID = "step1";
  693. ws1.StepType = WizardStepType.Start;
  694. ws1.Controls.Add (new LiteralControl ("Start"));
  695. ws2.ID = "step2";
  696. ws2.StepType = WizardStepType.Finish;
  697. ws2.Controls.Add (new LiteralControl ("Finish"));
  698. w.StartNextButtonImageUrl = "StartNextButtonImageUrl";
  699. w.StartNextButtonStyle.BackColor = Color.Red;
  700. w.StartNextButtonText = "StartNextButtonText";
  701. w.StartNextButtonType = ButtonType.Button;
  702. w.WizardSteps.Add (ws1);
  703. w.WizardSteps.Add (ws2);
  704. p.Controls.Add (lcb);
  705. p.Controls.Add (w);
  706. p.Controls.Add (lce);
  707. }
  708. [Test]
  709. [Category ("NunitWeb")]
  710. public void Wizard_StartTemplateRendering ()
  711. {
  712. WebTest t = new WebTest (PageInvoker.CreateOnPreInit (_StartTemplateRendering));
  713. string html = t.Run ();
  714. #if NET_4_0
  715. string origin = "<table cellspacing=\"0\" cellpadding=\"0\" style=\"border-collapse:collapse;\">\r\n\t<tr>\r\n\t\t<td style=\"height:100%;\"><a href=\"#ctl00_SkipLink\"><img alt=\"Skip Navigation Links.\" height=\"0\" width=\"0\" src=\"/NunitWeb/WebResource.axd?d=8VpphgAbakKUC_J8R6hR0Q2&amp;t=634067491135766272\" style=\"border-width:0px;\" /></a><table id=\"ctl00_SideBarContainer_SideBarList\" cellspacing=\"0\" style=\"border-collapse:collapse;\">\r\n\t\t\t<tr>\r\n\t\t\t\t<td style=\"font-weight:bold;\"><a id=\"ctl00_SideBarContainer_SideBarList_SideBarButton_0\" href=\"javascript:__doPostBack(&#39;ctl00$SideBarContainer$SideBarList$ctl00$SideBarButton&#39;,&#39;&#39;)\">step1</a></td>\r\n\t\t\t</tr>\r\n\t\t</table><a id=\"ctl00_SkipLink\"></a></td><td style=\"height:100%;\"><table cellspacing=\"0\" cellpadding=\"0\" style=\"height:100%;width:100%;border-collapse:collapse;\">\r\n\t\t\t<tr style=\"height:100%;\">\r\n\t\t\t\t<td>Start</td>\r\n\t\t\t</tr><tr>\r\n\t\t\t\t<td align=\"right\"><input type=\"submit\" name=\"ctl00$StartNavigationTemplateContainerID$SideBarButton\" value=\"\" id=\"ctl00_StartNavigationTemplateContainerID_SideBarButton\" style=\"background-color:Red;\" /></td>\r\n\t\t\t</tr>\r\n\t\t</table></td>\r\n\t</tr>\r\n</table>";
  716. #else
  717. string origin = "<table cellspacing=\"0\" cellpadding=\"0\" border=\"0\" style=\"border-collapse:collapse;\">\r\n\t<tr>\r\n\t\t<td style=\"height:100%;\"><a href=\"#ctl00_SkipLink\"><img alt=\"Skip Navigation Links.\" height=\"0\" width=\"0\" src=\"/NunitWeb/WebResource.axd?d=4RHYfeNnynkXiM59uthjZg2&amp;t=633802729995006876\" style=\"border-width:0px;\" /></a><table id=\"ctl00_SideBarContainer_SideBarList\" cellspacing=\"0\" border=\"0\" style=\"border-collapse:collapse;\">\r\n\t\t\t<tr>\r\n\t\t\t\t<td style=\"font-weight:bold;\"><a id=\"ctl00_SideBarContainer_SideBarList_ctl00_SideBarButton\" href=\"javascript:__doPostBack('ctl00$SideBarContainer$SideBarList$ctl00$SideBarButton','')\">step1</a></td>\r\n\t\t\t</tr>\r\n\t\t</table><a id=\"ctl00_SkipLink\"></a></td><td style=\"height:100%;\"><table cellspacing=\"0\" cellpadding=\"0\" border=\"0\" style=\"height:100%;width:100%;border-collapse:collapse;\">\r\n\t\t\t<tr style=\"height:100%;\">\r\n\t\t\t\t<td>Start</td>\r\n\t\t\t</tr><tr>\r\n\t\t\t\t<td align=\"right\"><input type=\"submit\" name=\"ctl00$StartNavigationTemplateContainerID$SideBarButton\" value=\"\" id=\"ctl00_StartNavigationTemplateContainerID_SideBarButton\" style=\"background-color:Red;\" /></td>\r\n\t\t\t</tr>\r\n\t\t</table></td>\r\n\t</tr>\r\n</table>";
  718. #endif
  719. string renderedHtml = HtmlDiff.GetControlFromPageHtml (html);
  720. HtmlDiff.AssertAreEqual (origin, renderedHtml, "StartTemplateRendering");
  721. }
  722. public static void _StartTemplateRendering (Page p)
  723. {
  724. LiteralControl lcb = new LiteralControl (HtmlDiff.BEGIN_TAG);
  725. LiteralControl lce = new LiteralControl (HtmlDiff.END_TAG);
  726. PokerWizard w = new PokerWizard ();
  727. WizardStep ws1 = new WizardStep ();
  728. ws1.ID = "step1";
  729. ws1.StepType = WizardStepType.Start;
  730. ws1.Controls.Add (new LiteralControl ("Start"));
  731. w.StartNavigationTemplate = new CompiledTemplateBuilder (_StartTemplate);
  732. w.WizardSteps.Add (ws1);
  733. p.Controls.Add (lcb);
  734. p.Controls.Add (w);
  735. p.Controls.Add (lce);
  736. }
  737. private static void _StartTemplate (Control container)
  738. {
  739. Button button = new Button();
  740. button.ID = "SideBarButton";
  741. button.BackColor = Color.Red;
  742. container.Controls.Add (button);
  743. }
  744. [Test]
  745. [Category ("NunitWeb")]
  746. public void Wizard_StepTypeRendering ()
  747. {
  748. WebTest t = new WebTest (PageInvoker.CreateOnPreInit (_StepTypeRendering));
  749. string html = t.Run ();
  750. #if NET_4_0
  751. string origin = "<table cellspacing=\"0\" cellpadding=\"0\" style=\"border-collapse:collapse;\">\r\n\t<tr>\r\n\t\t<td style=\"height:100%;\"><a href=\"#ctl00_SkipLink\"><img alt=\"Skip Navigation Links.\" height=\"0\" width=\"0\" src=\"/NunitWeb/WebResource.axd?d=8VpphgAbakKUC_J8R6hR0Q2&amp;t=634067491135766272\" style=\"border-width:0px;\" /></a><table id=\"ctl00_SideBarContainer_SideBarList\" cellspacing=\"0\" style=\"border-collapse:collapse;\">\r\n\t\t\t<tr>\r\n\t\t\t\t<td><a id=\"ctl00_SideBarContainer_SideBarList_SideBarButton_0\" href=\"javascript:__doPostBack(&#39;ctl00$SideBarContainer$SideBarList$ctl00$SideBarButton&#39;,&#39;&#39;)\">step1</a></td>\r\n\t\t\t</tr><tr>\r\n\t\t\t\t<td style=\"font-weight:bold;\"><a id=\"ctl00_SideBarContainer_SideBarList_SideBarButton_1\" href=\"javascript:__doPostBack(&#39;ctl00$SideBarContainer$SideBarList$ctl01$SideBarButton&#39;,&#39;&#39;)\">step2</a></td>\r\n\t\t\t</tr><tr>\r\n\t\t\t\t<td><a id=\"ctl00_SideBarContainer_SideBarList_SideBarButton_2\" href=\"javascript:__doPostBack(&#39;ctl00$SideBarContainer$SideBarList$ctl02$SideBarButton&#39;,&#39;&#39;)\">step3</a></td>\r\n\t\t\t</tr>\r\n\t\t</table><a id=\"ctl00_SkipLink\"></a></td><td style=\"height:100%;\"><table cellspacing=\"0\" cellpadding=\"0\" style=\"height:100%;width:100%;border-collapse:collapse;\">\r\n\t\t\t<tr style=\"height:100%;\">\r\n\t\t\t\t<td style=\"background-color:Red;\">Step2</td>\r\n\t\t\t</tr><tr>\r\n\t\t\t\t<td align=\"right\"><table cellspacing=\"5\" cellpadding=\"5\">\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td align=\"right\"><a id=\"ctl00_StepNavigationTemplateContainerID_StepPreviousLinkButton\" href=\"javascript:__doPostBack(&#39;ctl00$StepNavigationTemplateContainerID$StepPreviousLinkButton&#39;,&#39;&#39;)\" style=\"background-color:Red;\">StepPreviousButtonText</a></td><td align=\"right\"><input type=\"image\" name=\"ctl00$StepNavigationTemplateContainerID$StepNextImageButton\" id=\"ctl00_StepNavigationTemplateContainerID_StepNextImageButton\" src=\"http://StepNextButtonImageUrl\" alt=\"StepNextButtonText\" style=\"background-color:Red;\" /></td>\r\n\t\t\t\t\t</tr>\r\n\t\t\t\t</table></td>\r\n\t\t\t</tr>\r\n\t\t</table></td>\r\n\t</tr>\r\n</table>";
  752. #else
  753. string origin = "<table cellspacing=\"0\" cellpadding=\"0\" border=\"0\" style=\"border-collapse:collapse;\">\r\n\t<tr>\r\n\t\t<td style=\"height:100%;\"><a href=\"#ctl00_SkipLink\"><img alt=\"Skip Navigation Links.\" height=\"0\" width=\"0\" src=\"/NunitWeb/WebResource.axd?d=4RHYfeNnynkXiM59uthjZg2&amp;t=633802729995006876\" style=\"border-width:0px;\" /></a><table id=\"ctl00_SideBarContainer_SideBarList\" cellspacing=\"0\" border=\"0\" style=\"border-collapse:collapse;\">\r\n\t\t\t<tr>\r\n\t\t\t\t<td><a id=\"ctl00_SideBarContainer_SideBarList_ctl00_SideBarButton\" href=\"javascript:__doPostBack('ctl00$SideBarContainer$SideBarList$ctl00$SideBarButton','')\">step1</a></td>\r\n\t\t\t</tr><tr>\r\n\t\t\t\t<td style=\"font-weight:bold;\"><a id=\"ctl00_SideBarContainer_SideBarList_ctl01_SideBarButton\" href=\"javascript:__doPostBack('ctl00$SideBarContainer$SideBarList$ctl01$SideBarButton','')\">step2</a></td>\r\n\t\t\t</tr><tr>\r\n\t\t\t\t<td><a id=\"ctl00_SideBarContainer_SideBarList_ctl02_SideBarButton\" href=\"javascript:__doPostBack('ctl00$SideBarContainer$SideBarList$ctl02$SideBarButton','')\">step3</a></td>\r\n\t\t\t</tr>\r\n\t\t</table><a id=\"ctl00_SkipLink\"></a></td><td style=\"height:100%;\"><table cellspacing=\"0\" cellpadding=\"0\" border=\"0\" style=\"height:100%;width:100%;border-collapse:collapse;\">\r\n\t\t\t<tr style=\"height:100%;\">\r\n\t\t\t\t<td style=\"background-color:Red;\">Step2</td>\r\n\t\t\t</tr><tr>\r\n\t\t\t\t<td align=\"right\"><table cellspacing=\"5\" cellpadding=\"5\" border=\"0\">\r\n\t\t\t\t\t<tr>\r\n\t\t\t\t\t\t<td align=\"right\"><a id=\"ctl00_StepNavigationTemplateContainerID_StepPreviousLinkButton\" href=\"javascript:__doPostBack('ctl00$StepNavigationTemplateContainerID$StepPreviousLinkButton','')\" style=\"background-color:Red;\">StepPreviousButtonText</a></td><td align=\"right\"><input type=\"image\" name=\"ctl00$StepNavigationTemplateContainerID$StepNextImageButton\" id=\"ctl00_StepNavigationTemplateContainerID_StepNextImageButton\" src=\"http://StepNextButtonImageUrl\" alt=\"StepNextButtonText\" style=\"background-color:Red;border-width:0px;\" /></td>\r\n\t\t\t\t\t</tr>\r\n\t\t\t\t</t…

Large files files are truncated, but you can click here to view the full file