You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by "Ephraim Rosenfeld (JIRA)" <ji...@apache.org> on 2015/10/01 18:32:27 UTC

[jira] [Updated] (WICKET-5989) BaseWicketTester#startComponentInPage fails for pages with placeholder

     [ https://issues.apache.org/jira/browse/WICKET-5989?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ephraim Rosenfeld updated WICKET-5989:
--------------------------------------
    Summary: BaseWicketTester#startComponentInPage fails for pages with <wicket:header-items></wicket:header> placeholder  (was: BaseWicketTester#startComponentInPage fails for pages with <wicket:header-items/> placeholer)

> BaseWicketTester#startComponentInPage fails for pages with <wicket:header-items></wicket:header> placeholder
> ------------------------------------------------------------------------------------------------------------
>
>                 Key: WICKET-5989
>                 URL: https://issues.apache.org/jira/browse/WICKET-5989
>             Project: Wicket
>          Issue Type: Bug
>          Components: wicket
>    Affects Versions: 6.20.0
>         Environment: Windows 7, Java 7
>            Reporter: Ephraim Rosenfeld
>         Attachments: myproject.zip
>
>
> I am using the {{[BaseWicketTester.html#startComponentInPage(C)|https://ci.apache.org/projects/wicket/apidocs/6.x/org/apache/wicket/util/tester/BaseWicketTester.html#startComponentInPage(C)]}} to validate individual components/panels.
> I am overriding the {{[BaseWicketTester.html#createPage()|https://ci.apache.org/projects/wicket/apidocs/6.x/org/apache/wicket/util/tester/BaseWicketTester.html#createPage()]}} and {{[BaseWicketTester.html#createPageMarkup(java.lang.String)|https://ci.apache.org/projects/wicket/apidocs/6.x/org/apache/wicket/util/tester/BaseWicketTester.html#createPageMarkup(java.lang.String)]}} methods to return a dummy page that contains a placeholder for components-to-be-tested. The dummy page extends my base page class.
> My base page class makes use of the [<wicket:header-items/>|https://cwiki.apache.org/confluence/display/WICKET/Wicket's+XHTML+tags#Wicket'sXHTMLtags-Elementwicket:header-items] placeholder tag, but this is by no means my area of expertise.
> When attempting to use {{[BaseWicketTester.html#createPage()|https://ci.apache.org/projects/wicket/apidocs/6.x/org/apache/wicket/util/tester/BaseWicketTester.html#createPage()]}} method, the method fails with the following error message:
> |Error while parsing the markup for the autogenerated page: More than one <wicket:header-items/> detected in the <head> element. Only one is allowed.
> If I remove the {{[<wicket:header-items/>|https://cwiki.apache.org/confluence/display/WICKET/Wicket's+XHTML+tags#Wicket'sXHTMLtags-Elementwicket:header-items]}} placeholder tag from my base page class, the test runs successfully.
> The test only fails when using the {{[BaseWicketTester.html#startComponentInPage(C)|https://ci.apache.org/projects/wicket/apidocs/6.x/org/apache/wicket/util/tester/BaseWicketTester.html#startComponentInPage(C)]}}, which only accepts one argument. If I use the {{[BaseWicketTester.html#startComponentInPage(C, org.apache.wicket.markup.IMarkupFragment)|https://ci.apache.org/projects/wicket/apidocs/6.x/org/apache/wicket/util/tester/BaseWicketTester.html#startComponentInPage(C, org.apache.wicket.markup.IMarkupFragment)]}} and pass in the {{MarkupFragment}} of the test class as the second argument, then the test runs successfully, e.g. 
> {code}
> tester.startComponentInPage(new MyPanel(DummyPanelPage.TEST_PANEL_ID),  new MyDummyPanelPage(new PageParameters()).getMarkup());
> {code}
> It would seem that the {{[<wicket:header-items/>|https://cwiki.apache.org/confluence/display/WICKET/Wicket's+XHTML+tags#Wicket'sXHTMLtags-Elementwicket:header-items]}} placeholder tag clashes with the {{[ContainerInfo|https://ci.apache.org/projects/wicket/apidocs/6.x/org/apache/wicket/markup/ContainerInfo.html]}} class used by the testing framework.
> I am attaching a quick-start app with a {{TestHomePage}} test class that reproduces the issue.
> Thank you in advance!



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)