+2010-01-15 Marek Habersack <mhabersack@novell.com>
+
+ * Makefile (TEST_RESOURCE_FILES): added
+ Test/mainsoft/NunitWebResources/ChangePasswordContainer_FindControl.aspx
+
2010-01-14 Marek Habersack <mhabersack@novell.com>
* System.Web_standalone_test.dll.sources,
Test/mainsoft/NunitWebResources/NestedParserFileText.aspx \
Test/mainsoft/NunitWebResources/StateFormatter_CorrectConverter.aspx \
Test/mainsoft/NunitWebResources/StateFormatter_CollectionConverter.aspx \
- Test/mainsoft/NunitWebResources/StateFormatter_CollectionConverter.aspx.cs
+ Test/mainsoft/NunitWebResources/StateFormatter_CollectionConverter.aspx.cs \
+ Test/mainsoft/NunitWebResources/ChangePasswordContainer_FindControl.aspx
RESX_DIST = resources/TranslationResources.resx
ifneq (1, $(FRAMEWORK_VERSION_MAJOR))
+2010-01-15 Marek Habersack <mhabersack@novell.com>
+
+ * ChangePassword.cs: BaseChangePasswordContainer forwards
+ EnsureChildControls call to its owner, so that finding controls in
+ the container works correctly.
+
2009-11-30 Marek Habersack <mhabersack@novell.com>
* WebControl.cs: HasAttributes made available as internal for 1.1
#endregion
- class BaseChangePasswordContainer : Table, INamingContainer, INonBindingContainer
+ class BaseChangePasswordContainer : Table, INamingContainer, INonBindingContainer
{
protected readonly ChangePassword _owner = null;
TableCell _containerCell = null;
ApplyStyle (_owner.ControlStyle);
base.OnPreRender (e);
}
+
+ protected override void EnsureChildControls ()
+ {
+ base.EnsureChildControls ();
+
+ // it's the owner who adds controls, not us
+ if (_owner != null)
+ _owner.EnsureChildControls ();
+ }
}
sealed class ChangePasswordContainer : BaseChangePasswordContainer
+2010-01-15 Marek Habersack <mhabersack@novell.com>
+
+ * ChangePasswordTest.cs: added test for looking for controls in
+ ChangePassword template containers.
+
2009-11-16 Marek Habersack <mhabersack@novell.com>
* TreeNodeTest.cs: added test for a situation when a
[TestFixtureSetUp]
public void CopyTestResources ()
{
+ WebTest.CopyResource (GetType (), "ChangePasswordContainer_FindControl.aspx", "ChangePasswordContainer_FindControl.aspx");
}
[Test]
Assert.AreEqual (Membership.Provider.GetType (), typeof (FakeMembershipProvider), "Membership.Provider.GetType ()");
}
+ [Test]
+ public void ChangePasswordContainer_FindControl ()
+ {
+ WebTest t = new WebTest ("ChangePasswordContainer_FindControl.aspx");
+ t.Invoker = PageInvoker.CreateOnLoad (new PageDelegate (ChangePasswordContainer_FindControl_OnLoad));
+ t.Run ();
+ }
+
+ public static void ChangePasswordContainer_FindControl_OnLoad (Page p)
+ {
+ ChangePassword cp = p.FindControl ("ChangePassword1") as ChangePassword;
+ Assert.IsNotNull (cp, "#A1");
+
+ RequiredFieldValidator rfv = cp.ChangePasswordTemplateContainer.FindControl ("text1required") as RequiredFieldValidator;
+ Assert.IsNotNull (rfv, "#A2");
+ }
+
[TestFixtureTearDown]
public void TearDown ()
{
--- /dev/null
+<%@ Page Language="C#" CodeFile="MyPage.aspx.cs" Inherits="MyPage" %>
+<html><head><title>Change password</title></head>
+<body>
+ <form runat="server">
+ Test: <asp:Label runat="server" id="test"/><br/>
+ <asp:ChangePassword ID="ChangePassword1" runat="server">
+ <ChangePasswordTemplate>
+ <table>
+ <tr>
+ <td>
+ <asp:TextBox runat="server" id="CurrentPassword" TextMode="Password"/>
+ <asp:RequiredFieldValidator runat="server" id="text1required" ControlToValidate="CurrentPassword"/>
+ </td>
+ </tr>
+
+ <tr>
+ <td>
+ <asp:TextBox runat="server" id="NewPassword" TextMode="Password"/>
+ <asp:RequiredFieldValidator runat="server" id="text2required" ControlToValidate="NewPassword"/>
+ </td>
+ </tr>
+ </table>
+ </ChangePasswordTemplate>
+ </asp:ChangePassword>
+ </form>
+</body>
+</html>