You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tapestry.apache.org by hl...@apache.org on 2007/12/05 23:02:39 UTC
svn commit: r601548 - in /tapestry/tapestry5/trunk/tapestry-core/src:
main/java/org/apache/tapestry/corelib/base/
main/java/org/apache/tapestry/corelib/components/
main/java/org/apache/tapestry/internal/services/
main/java/org/apache/tapestry/test/ tes...
Author: hlship
Date: Wed Dec 5 14:02:04 2007
New Revision: 601548
URL: http://svn.apache.org/viewvc?rev=601548&view=rev
Log:
TAPESTRY-1879: PageLink does not have an anchor parameter
Added:
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/corelib/base/AbstractLink.java
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/internal/services/ComponentInvocation.java
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/internal/services/ComponentInvocationImpl.java
- copied, changed from r594319, tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/internal/services/ComponentInvocation.java
tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/corelib/base/
tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/corelib/base/AbstractLinkTest.java
Modified:
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/corelib/components/ActionLink.java
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/corelib/components/Form.java
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/corelib/components/PageLink.java
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/internal/services/LinkFactoryImpl.java
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/internal/services/LinkImpl.java
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/internal/services/MarkupWriterFactoryImpl.java
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/internal/services/MarkupWriterImpl.java
tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/test/PageTester.java
tapestry/tapestry5/trunk/tapestry-core/src/test/conf/testng.xml
tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/corelib/components/SelectTest.java
tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/internal/DefaultValidationDecoratorTest.java
tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/internal/services/ComponentInvocationTest.java
tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/internal/services/LinkFactoryImplTest.java
tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/internal/services/MarkupWriterImplTest.java
tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/internal/services/PageElementFactoryImplTest.java
Added: tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/corelib/base/AbstractLink.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/corelib/base/AbstractLink.java?rev=601548&view=auto
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/corelib/base/AbstractLink.java (added)
+++ tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/corelib/base/AbstractLink.java Wed Dec 5 14:02:04 2007
@@ -0,0 +1,81 @@
+// Copyright 2007 The Apache Software Foundation
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package org.apache.tapestry.corelib.base;
+
+import org.apache.tapestry.ComponentResources;
+import org.apache.tapestry.Link;
+import org.apache.tapestry.MarkupWriter;
+import org.apache.tapestry.annotations.Parameter;
+import org.apache.tapestry.dom.Element;
+import org.apache.tapestry.internal.services.ComponentInvocationMap;
+import org.apache.tapestry.ioc.annotations.Inject;
+
+/**
+ * Provides base utilities for classes that generate clickable links.
+ */
+public abstract class AbstractLink
+{
+ @Inject
+ private ComponentInvocationMap _componentInvocationMap;
+
+ /**
+ * An anchor value to append to the generated URL (the hash separator will be added automatically).
+ */
+ @Parameter
+ private String _anchor;
+
+ @Inject
+ private ComponentResources _resources;
+
+ private final String buildHref(Link link)
+ {
+ String href = link.toURI();
+
+ if (_anchor == null) return href;
+
+ return href + "#" + _anchor;
+ }
+
+ /**
+ * Writes an <a> element with the provided link as the href attribute. A call to
+ * {@link org.apache.tapestry.MarkupWriter#end()} is <em>not</em> provided. Automatically appends
+ * an anchor if the component's anchor parameter is non-null. Informal parameters are rendered as well.
+ *
+ * @param writer to write markup to
+ * @param clientId value written as the id attribute
+ * @param link the link that will form the href
+ * @param namesAndValues additional attributes to write
+ */
+ protected void writeLink(MarkupWriter writer, String clientId, Link link, Object... namesAndValues)
+ {
+ Element e = writer.element("a", "href", buildHref(link), "id", clientId);
+
+ writer.attributes(namesAndValues);
+
+ _resources.renderInformalParameters(writer);
+
+ _componentInvocationMap.store(e, link);
+ }
+
+ /**
+ * Used for testing.
+ */
+ void inject(String anchor, ComponentInvocationMap map, ComponentResources resources)
+ {
+ _anchor = anchor;
+ _componentInvocationMap = map;
+ _resources = resources;
+ }
+}
Modified: tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/corelib/components/ActionLink.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/corelib/components/ActionLink.java?rev=601548&r1=601547&r2=601548&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/corelib/components/ActionLink.java (original)
+++ tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/corelib/components/ActionLink.java Wed Dec 5 14:02:04 2007
@@ -19,6 +19,7 @@
import org.apache.tapestry.annotations.Environmental;
import org.apache.tapestry.annotations.Parameter;
import org.apache.tapestry.annotations.SupportsInformalParameters;
+import org.apache.tapestry.corelib.base.AbstractLink;
import org.apache.tapestry.internal.services.ZoneSetup;
import org.apache.tapestry.ioc.annotations.Inject;
@@ -28,7 +29,7 @@
* Component that triggers an action on the server with a subsequent full page refresh.
*/
@SupportsInformalParameters
-public class ActionLink implements ClientElement
+public class ActionLink extends AbstractLink implements ClientElement
{
/**
* The context for the link (optional parameter). This list of values will be converted into
@@ -56,6 +57,7 @@
private String _clientId;
+
/**
* Binding zone turns the link into a an Ajax control that causes the
* related zone to be updated.
@@ -73,9 +75,7 @@
Link link = _resources.createActionLink(ACTION_EVENT, false, contextArray);
- writer.element("a", "href", link, "id", _clientId);
-
- _resources.renderInformalParameters(writer);
+ writeLink(writer, _clientId, link);
if (_zone != null) _zoneSetup.linkZone(_clientId, _zone);
}
Modified: tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/corelib/components/Form.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/corelib/components/Form.java?rev=601548&r1=601547&r2=601548&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/corelib/components/Form.java (original)
+++ tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/corelib/components/Form.java Wed Dec 5 14:02:04 2007
@@ -23,6 +23,7 @@
import org.apache.tapestry.corelib.mixins.RenderInformals;
import org.apache.tapestry.dom.Element;
import org.apache.tapestry.internal.TapestryInternalUtils;
+import org.apache.tapestry.internal.services.ComponentInvocationMap;
import org.apache.tapestry.internal.services.HeartbeatImpl;
import org.apache.tapestry.internal.util.Base64ObjectInputStream;
import org.apache.tapestry.internal.util.Base64ObjectOutputStream;
@@ -141,6 +142,9 @@
@Persist
private ValidationTracker _defaultTracker;
+ @Inject
+ private ComponentInvocationMap _componentInvocationMap;
+
private FormSupportImpl _formSupport;
private Element _form;
@@ -207,6 +211,8 @@
_form = writer
.element("form", "name", _name, "id", _name, "method", "post", "action", link);
+
+ _componentInvocationMap.store(_form, link);
_resources.renderInformalParameters(writer);
Modified: tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/corelib/components/PageLink.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/corelib/components/PageLink.java?rev=601548&r1=601547&r2=601548&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/corelib/components/PageLink.java (original)
+++ tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/corelib/components/PageLink.java Wed Dec 5 14:02:04 2007
@@ -18,6 +18,7 @@
import org.apache.tapestry.annotations.Environmental;
import org.apache.tapestry.annotations.Parameter;
import org.apache.tapestry.annotations.SupportsInformalParameters;
+import org.apache.tapestry.corelib.base.AbstractLink;
import org.apache.tapestry.ioc.annotations.Inject;
import java.util.List;
@@ -33,7 +34,7 @@
* manipulated by the page.
*/
@SupportsInformalParameters
-public class PageLink implements ClientElement
+public class PageLink extends AbstractLink implements ClientElement
{
/**
* The logical name of the page to link to.
@@ -74,14 +75,9 @@
Object[] activationContext = _context != null ? _context.toArray() : _emptyContext;
- Link link = _resources.createPageLink(
- _page,
- _resources.isBound("context"),
- activationContext);
+ Link link = _resources.createPageLink(_page, _resources.isBound("context"), activationContext);
- writer.element("a", "href", link, "id", _clientId);
-
- _resources.renderInformalParameters(writer);
+ writeLink(writer, _clientId, link);
}
void afterRender(MarkupWriter writer)
Added: tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/internal/services/ComponentInvocation.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/internal/services/ComponentInvocation.java?rev=601548&view=auto
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/internal/services/ComponentInvocation.java (added)
+++ tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/internal/services/ComponentInvocation.java Wed Dec 5 14:02:04 2007
@@ -0,0 +1,39 @@
+// Copyright 2007 The Apache Software Foundation
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package org.apache.tapestry.internal.services;
+
+import java.util.List;
+
+public interface ComponentInvocation
+{
+ /**
+ * @return A path taking the format <em>target-path</em>/e1/e2?&q1=v1&q2=v2. where the
+ * <em>target-path</em> is the path provided by the invocation target; e1 and e2 are
+ * elements of the context; q1 and q2 are the parameters.
+ */
+ String buildURI(boolean isForm);
+
+ String[] getContext();
+
+ String[] getActivationContext();
+
+ void addParameter(String parameterName, String value);
+
+ List<String> getParameterNames();
+
+ String getParameterValue(String name);
+
+ InvocationTarget getTarget();
+}
Copied: tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/internal/services/ComponentInvocationImpl.java (from r594319, tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/internal/services/ComponentInvocation.java)
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/internal/services/ComponentInvocationImpl.java?p2=tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/internal/services/ComponentInvocationImpl.java&p1=tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/internal/services/ComponentInvocation.java&r1=594319&r2=601548&rev=601548&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/internal/services/ComponentInvocation.java (original)
+++ tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/internal/services/ComponentInvocationImpl.java Wed Dec 5 14:02:04 2007
@@ -28,7 +28,7 @@
* is extracted from incoming URLs for a running application (or created by the {@link PageTester}.
* Each invocation may provide a context (Object[]) and parameters to the invocation target.
*/
-public class ComponentInvocation
+public class ComponentInvocationImpl implements ComponentInvocation
{
private final String[] _context;
@@ -47,18 +47,14 @@
* passivate event to the page's root component (used when an action component
* invocation is for a page with an activation context)
*/
- public ComponentInvocation(InvocationTarget target, String[] context, String[] activationContext)
+ public ComponentInvocationImpl(InvocationTarget target, String[] context, String[] activationContext)
{
_target = target;
_context = context;
_activationContext = activationContext;
}
- /**
- * @return A path taking the format <em>target-path</em>/e1/e2?&q1=v1&q2=v2. where the
- * <em>target-path</em> is the path provided by the invocation target; e1 and e2 are
- * elements of the context; q1 and q2 are the parameters.
- */
+
public String buildURI(boolean isForm)
{
String path = getPath();
@@ -125,10 +121,8 @@
if (_parameters == null) _parameters = newMap();
- if (_parameters.containsKey(parameterName))
- throw new IllegalArgumentException(ServicesMessages.parameterNameMustBeUnique(
- parameterName,
- _parameters.get(parameterName)));
+ if (_parameters.containsKey(parameterName)) throw new IllegalArgumentException(
+ ServicesMessages.parameterNameMustBeUnique(parameterName, _parameters.get(parameterName)));
_parameters.put(parameterName, value);
}
Modified: tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/internal/services/LinkFactoryImpl.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/internal/services/LinkFactoryImpl.java?rev=601548&r1=601547&r2=601548&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/internal/services/LinkFactoryImpl.java (original)
+++ tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/internal/services/LinkFactoryImpl.java Wed Dec 5 14:02:04 2007
@@ -118,7 +118,7 @@
String[] activationContext = collectActivationContextForPage(containingPage);
- ComponentInvocation invocation = new ComponentInvocation(target, contextStrings, activationContext);
+ ComponentInvocation invocation = new ComponentInvocationImpl(target, contextStrings, activationContext);
Link link = new LinkImpl(_response, _request.getContextPath(), invocation, forForm);
@@ -165,7 +165,7 @@
activationContext) : collectActivationContextForPage(page);
PageLinkTarget target = new PageLinkTarget(logicalPageName);
- ComponentInvocation invocation = new ComponentInvocation(target, context, null);
+ ComponentInvocation invocation = new ComponentInvocationImpl(target, context, null);
Link link = new LinkImpl(_response, _request.getContextPath(), invocation, false);
Modified: tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/internal/services/LinkImpl.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/internal/services/LinkImpl.java?rev=601548&r1=601547&r2=601548&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/internal/services/LinkImpl.java (original)
+++ tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/internal/services/LinkImpl.java Wed Dec 5 14:02:04 2007
@@ -41,12 +41,11 @@
public LinkImpl(Response encoder, String contextPath, String targetPath, boolean forForm)
{
- this(encoder, contextPath, new ComponentInvocation(new OpaqueConstantTarget(targetPath),
- new String[0], null), forForm);
+ this(encoder, contextPath,
+ new ComponentInvocationImpl(new OpaqueConstantTarget(targetPath), new String[0], null), forForm);
}
- public LinkImpl(Response encoder, String contextPath, ComponentInvocation invocation,
- boolean forForm)
+ public LinkImpl(Response encoder, String contextPath, ComponentInvocation invocation, boolean forForm)
{
_contextPath = contextPath;
_response = encoder;
Modified: tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/internal/services/MarkupWriterFactoryImpl.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/internal/services/MarkupWriterFactoryImpl.java?rev=601548&r1=601547&r2=601548&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/internal/services/MarkupWriterFactoryImpl.java (original)
+++ tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/internal/services/MarkupWriterFactoryImpl.java Wed Dec 5 14:02:04 2007
@@ -20,20 +20,13 @@
public class MarkupWriterFactoryImpl implements MarkupWriterFactory
{
- private final ComponentInvocationMap _componentInvocationMap;
-
- public MarkupWriterFactoryImpl(ComponentInvocationMap componentInvocationMap)
- {
- _componentInvocationMap = componentInvocationMap;
- }
-
public MarkupWriter newMarkupWriter()
{
// TODO: Analyze the response type to determine the correct model? Maybe ContentType should
// be passed into to make this determination. DefaultMarkupModel is for SGML style (legacy)
// HTML.
- return new MarkupWriterImpl(new DefaultMarkupModel(), _componentInvocationMap);
+ return new MarkupWriterImpl(new DefaultMarkupModel());
}
}
Modified: tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/internal/services/MarkupWriterImpl.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/internal/services/MarkupWriterImpl.java?rev=601548&r1=601547&r2=601548&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/internal/services/MarkupWriterImpl.java (original)
+++ tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/internal/services/MarkupWriterImpl.java Wed Dec 5 14:02:04 2007
@@ -14,7 +14,6 @@
package org.apache.tapestry.internal.services;
-import org.apache.tapestry.Link;
import org.apache.tapestry.MarkupWriter;
import org.apache.tapestry.dom.*;
import org.apache.tapestry.ioc.internal.util.InternalUtils;
@@ -29,17 +28,14 @@
private Text _currentText;
- private final ComponentInvocationMap _invocationMap;
-
public MarkupWriterImpl()
{
- this(new DefaultMarkupModel(), new NoOpComponentInvocationMap());
+ this(new DefaultMarkupModel());
}
- public MarkupWriterImpl(MarkupModel model, ComponentInvocationMap invocationMap)
+ public MarkupWriterImpl(MarkupModel model)
{
_document = new Document(model);
- _invocationMap = invocationMap;
}
public void toMarkup(PrintWriter writer)
@@ -66,13 +62,11 @@
public void write(String text)
{
// Whitespace before and after the root element is quietly ignored.
- if (_current == null && InternalUtils.isBlank(text))
- return;
+ if (_current == null && InternalUtils.isBlank(text)) return;
ensureCurrentElement();
- if (text == null)
- return;
+ if (text == null) return;
if (_currentText == null)
{
@@ -104,11 +98,7 @@
String name = namesAndValues[i++].toString();
Object value = namesAndValues[i++];
- if (value == null)
- continue;
-
- if (value instanceof Link)
- _invocationMap.store(_current, (Link) value);
+ if (value == null) continue;
_current.attribute(name, value.toString());
}
@@ -117,16 +107,13 @@
private void ensureCurrentElement()
{
- if (_current == null)
- throw new IllegalStateException(ServicesMessages.markupWriterNoCurrentElement());
+ if (_current == null) throw new IllegalStateException(ServicesMessages.markupWriterNoCurrentElement());
}
public Element element(String name, Object... namesAndValues)
{
- if (_current == null)
- _current = _document.newRootElement(name);
- else
- _current = _current.element(name);
+ if (_current == null) _current = _document.newRootElement(name);
+ else _current = _current.element(name);
attributes(namesAndValues);
Modified: tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/test/PageTester.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/test/PageTester.java?rev=601548&r1=601547&r2=601548&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/test/PageTester.java (original)
+++ tapestry/tapestry5/trunk/tapestry-core/src/main/java/org/apache/tapestry/test/PageTester.java Wed Dec 5 14:02:04 2007
@@ -126,7 +126,7 @@
*/
public Document renderPage(String pageName)
{
- return invoke(new ComponentInvocation(new PageLinkTarget(pageName), new String[0], null));
+ return invoke(new ComponentInvocationImpl(new PageLinkTarget(pageName), new String[0], null));
}
/**
Modified: tapestry/tapestry5/trunk/tapestry-core/src/test/conf/testng.xml
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/test/conf/testng.xml?rev=601548&r1=601547&r2=601548&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-core/src/test/conf/testng.xml (original)
+++ tapestry/tapestry5/trunk/tapestry-core/src/test/conf/testng.xml Wed Dec 5 14:02:04 2007
@@ -15,18 +15,21 @@
limitations under the License.
-->
-<suite name="Tapestry Core" annotations="1.5" verbose="2" parallel="tests">
+<suite name="Tapestry Core" thread-count="10" annotations="1.5" verbose="2" parallel="tests">
<test name="Integration Tests">
<packages>
<package name="org.apache.tapestry.integration"/>
</packages>
</test>
+ <test name="Components">
+ <package name="org.apache.tapestry.integration.pagelevel"/>
+ <package name="org.apache.tapestry.corelib.base"/>
+ <package name="org.apache.tapestry.corelib.components"/>
+ <package name="org.apache.tapestry.corelib.internal"/>
+ </test>
<test name="Public APIs">
<packages>
<package name="org.apache.tapestry"/>
- <package name="org.apache.tapestry.integration.pagelevel"/>
- <package name="org.apache.tapestry.corelib.components"/>
- <package name="org.apache.tapestry.corelib.internal"/>
<package name="org.apache.tapestry.dom"/>
<package name="org.apache.tapestry.json"/>
<package name="org.apache.tapestry.services"/>
Added: tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/corelib/base/AbstractLinkTest.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/corelib/base/AbstractLinkTest.java?rev=601548&view=auto
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/corelib/base/AbstractLinkTest.java (added)
+++ tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/corelib/base/AbstractLinkTest.java Wed Dec 5 14:02:04 2007
@@ -0,0 +1,109 @@
+// Copyright 2007 The Apache Software Foundation
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package org.apache.tapestry.corelib.base;
+
+import org.apache.tapestry.ComponentResources;
+import org.apache.tapestry.Link;
+import org.apache.tapestry.MarkupWriter;
+import org.apache.tapestry.dom.Element;
+import org.apache.tapestry.internal.services.ComponentInvocation;
+import org.apache.tapestry.internal.services.ComponentInvocationMap;
+import org.apache.tapestry.internal.services.MarkupWriterImpl;
+import org.apache.tapestry.internal.test.InternalBaseTestCase;
+import org.apache.tapestry.internal.test.PageTesterComponentInvocationMap;
+import org.testng.annotations.Test;
+
+public class AbstractLinkTest extends InternalBaseTestCase
+{
+ private final static String LINK_URI = "/foo/bar.baz";
+
+ private final AbstractLink _linkFixture = new AbstractLink()
+ {
+ };
+
+ @Test
+ public void no_anchor()
+ {
+ Link link = mockLink();
+ ComponentResources resources = mockComponentResources();
+ ComponentInvocationMap map = new PageTesterComponentInvocationMap();
+ MarkupWriter writer = new MarkupWriterImpl();
+ ComponentInvocation invocation = mockComponentInvocation();
+
+ map.store(link, invocation);
+
+ train_toURI(link, LINK_URI);
+
+ resources.renderInformalParameters(writer);
+
+ replay();
+
+ _linkFixture.inject(null, map, resources);
+
+ _linkFixture.writeLink(writer, "fred", link);
+
+ verify();
+
+ Element e = writer.getElement();
+
+ writer.write("link text");
+ writer.end();
+
+ assertEquals(writer.toString(), "<a href=\"/foo/bar.baz\" id=\"fred\">link text</a>");
+ assertSame(map.get(e), invocation);
+ }
+
+ @Test
+ public void with_anchor()
+ {
+ Link link = mockLink();
+ ComponentResources resources = mockComponentResources();
+ ComponentInvocationMap map = new PageTesterComponentInvocationMap();
+ MarkupWriter writer = new MarkupWriterImpl();
+ ComponentInvocation invocation = mockComponentInvocation();
+
+ map.store(link, invocation);
+
+ train_toURI(link, LINK_URI);
+
+ resources.renderInformalParameters(writer);
+
+ replay();
+
+ _linkFixture.inject("wilma", map, resources);
+
+ _linkFixture.writeLink(writer, "barney", link);
+
+ verify();
+
+ Element e = writer.getElement();
+
+ writer.write("link text");
+ writer.end();
+
+ assertEquals(writer.toString(), "<a href=\"/foo/bar.baz#wilma\" id=\"barney\">link text</a>");
+ assertSame(map.get(e), invocation);
+ }
+
+ protected final void train_toURI(Link link, String URI)
+ {
+ expect(link.toURI()).andReturn(URI);
+ }
+
+ protected final ComponentInvocation mockComponentInvocation()
+ {
+ return newMock(ComponentInvocation.class);
+ }
+}
Modified: tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/corelib/components/SelectTest.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/corelib/components/SelectTest.java?rev=601548&r1=601547&r2=601548&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/corelib/components/SelectTest.java (original)
+++ tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/corelib/components/SelectTest.java Wed Dec 5 14:02:04 2007
@@ -89,7 +89,7 @@
select.setValueEncoder(new StringValueEncoder());
select.setValue("barney");
- MarkupWriter writer = new MarkupWriterImpl(new XMLMarkupModel(), null);
+ MarkupWriter writer = new MarkupWriterImpl(new XMLMarkupModel());
writer.element("select");
@@ -105,8 +105,8 @@
{
// Extra cast needed for Sun compiler, not Eclipse compiler.
- List<OptionModel> options = Arrays.asList((OptionModel) new OptionModelImpl("Fred", false,
- "fred", "class", "pixie"));
+ List<OptionModel> options = Arrays.asList(
+ (OptionModel) new OptionModelImpl("Fred", false, "fred", "class", "pixie"));
Select select = new Select();
@@ -114,7 +114,7 @@
select.setValueEncoder(new StringValueEncoder());
select.setValue("barney");
- MarkupWriter writer = new MarkupWriterImpl(new XMLMarkupModel(), null);
+ MarkupWriter writer = new MarkupWriterImpl(new XMLMarkupModel());
writer.element("select");
@@ -130,8 +130,8 @@
{
// Extra cast needed for Sun compiler, not Eclipse compiler.
- List<OptionModel> options = CollectionFactory.newList((OptionModel) new OptionModelImpl(
- "Fred", true, "fred", "class", "pixie"));
+ List<OptionModel> options = CollectionFactory.newList(
+ (OptionModel) new OptionModelImpl("Fred", true, "fred", "class", "pixie"));
Select select = new Select();
@@ -139,7 +139,7 @@
select.setValueEncoder(new StringValueEncoder());
select.setValue("barney");
- MarkupWriter writer = new MarkupWriterImpl(new XMLMarkupModel(), null);
+ MarkupWriter writer = new MarkupWriterImpl(new XMLMarkupModel());
writer.element("select");
@@ -166,7 +166,7 @@
select.setValueEncoder(new StringValueEncoder());
select.setValue("Fred");
- MarkupWriter writer = new MarkupWriterImpl(new XMLMarkupModel(), null);
+ MarkupWriter writer = new MarkupWriterImpl(new XMLMarkupModel());
writer.element("select");
@@ -190,7 +190,7 @@
select.setValueEncoder(new StringValueEncoder());
select.setValue("Fred");
- MarkupWriter writer = new MarkupWriterImpl(new XMLMarkupModel(), null);
+ MarkupWriter writer = new MarkupWriterImpl(new XMLMarkupModel());
writer.element("select");
@@ -216,7 +216,7 @@
select.setValueEncoder(new StringValueEncoder());
select.setValue("Fred");
- MarkupWriter writer = new MarkupWriterImpl(new XMLMarkupModel(), null);
+ MarkupWriter writer = new MarkupWriterImpl(new XMLMarkupModel());
writer.element("select");
Modified: tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/internal/DefaultValidationDecoratorTest.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/internal/DefaultValidationDecoratorTest.java?rev=601548&r1=601547&r2=601548&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/internal/DefaultValidationDecoratorTest.java (original)
+++ tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/internal/DefaultValidationDecoratorTest.java Wed Dec 5 14:02:04 2007
@@ -44,7 +44,7 @@
@Test
public void label_error_no_existing_class_attribute()
{
- MarkupWriter writer = new MarkupWriterImpl(new XMLMarkupModel(), null);
+ MarkupWriter writer = new MarkupWriterImpl(new XMLMarkupModel());
Environment env = mockEnvironment();
Field field = mockField();
ValidationTracker tracker = mockValidationTracker();
@@ -68,7 +68,7 @@
@Test
public void label_error_with_existing_class_attribute()
{
- MarkupWriter writer = new MarkupWriterImpl(new XMLMarkupModel(), null);
+ MarkupWriter writer = new MarkupWriterImpl(new XMLMarkupModel());
Environment env = mockEnvironment();
Field field = mockField();
ValidationTracker tracker = mockValidationTracker();
@@ -92,7 +92,7 @@
@Test
public void field_error()
{
- MarkupWriter writer = new MarkupWriterImpl(new XMLMarkupModel(), null);
+ MarkupWriter writer = new MarkupWriterImpl(new XMLMarkupModel());
Environment env = mockEnvironment();
Field field = mockField();
ValidationTracker tracker = mockValidationTracker();
Modified: tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/internal/services/ComponentInvocationTest.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/internal/services/ComponentInvocationTest.java?rev=601548&r1=601547&r2=601548&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/internal/services/ComponentInvocationTest.java (original)
+++ tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/internal/services/ComponentInvocationTest.java Wed Dec 5 14:02:04 2007
@@ -22,8 +22,8 @@
@Test
public void no_context()
{
- ComponentInvocation invocation = new ComponentInvocation(new OpaqueConstantTarget("abc"),
- new String[0], null);
+ ComponentInvocation invocation = new ComponentInvocationImpl(new OpaqueConstantTarget("abc"), new String[0],
+ null);
assertEquals(invocation.buildURI(false), "abc");
assertEquals(invocation.buildURI(true), "abc");
}
@@ -31,9 +31,8 @@
@Test
public void context()
{
- ComponentInvocation invocation = new ComponentInvocation(new OpaqueConstantTarget("abc"),
- new String[]
- {"x", "123"}, null);
+ ComponentInvocation invocation = new ComponentInvocationImpl(new OpaqueConstantTarget("abc"),
+ new String[]{"x", "123"}, null);
assertEquals(invocation.buildURI(false), "abc/x/123");
assertEquals(invocation.buildURI(true), "abc/x/123");
}
@@ -41,9 +40,8 @@
@Test
public void parameters()
{
- ComponentInvocation invocation = new ComponentInvocation(new OpaqueConstantTarget("abc"),
- new String[]
- {"x", "123"}, null);
+ ComponentInvocation invocation = new ComponentInvocationImpl(new OpaqueConstantTarget("abc"),
+ new String[]{"x", "123"}, null);
invocation.addParameter("p1", "foo");
invocation.addParameter("p2", "bar");
assertEquals(invocation.buildURI(false), "abc/x/123?p1=foo&p2=bar");
Modified: tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/internal/services/LinkFactoryImplTest.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/internal/services/LinkFactoryImplTest.java?rev=601548&r1=601547&r2=601548&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/internal/services/LinkFactoryImplTest.java (original)
+++ tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/internal/services/LinkFactoryImplTest.java Wed Dec 5 14:02:04 2007
@@ -55,63 +55,34 @@
@Test
public void action_link_root_context_no_ids()
{
- testActionLink(
- "",
- PAGE_LOGICAL_NAME,
- "foo.bar",
- "someaction",
- "/sub/mypage.foo.bar:someaction");
+ testActionLink("", PAGE_LOGICAL_NAME, "foo.bar", "someaction", "/sub/mypage.foo.bar:someaction");
}
@Test
public void action_link_root_context_with_ids()
{
- testActionLink(
- "",
- PAGE_LOGICAL_NAME,
- "foo.bar",
- "publish",
- "/sub/mypage.foo.bar:publish/fred/5",
- "fred",
- 5);
+ testActionLink("", PAGE_LOGICAL_NAME, "foo.bar", "publish", "/sub/mypage.foo.bar:publish/fred/5", "fred", 5);
}
@Test
public void action_link_with_default_action()
{
- testActionLink(
- "",
- PAGE_LOGICAL_NAME,
- "foo.bar",
- TapestryConstants.ACTION_EVENT,
- "/sub/mypage.foo.bar/fred/5",
- "fred",
- 5);
+ testActionLink("", PAGE_LOGICAL_NAME, "foo.bar", TapestryConstants.ACTION_EVENT, "/sub/mypage.foo.bar/fred/5",
+ "fred", 5);
}
@Test
public void page_level_event_always_includes_action()
{
- testActionLink(
- "",
- PAGE_LOGICAL_NAME,
- "",
- TapestryConstants.ACTION_EVENT,
- "/sub/mypage:action/barney/99",
- "barney",
- 99);
+ testActionLink("", PAGE_LOGICAL_NAME, "", TapestryConstants.ACTION_EVENT, "/sub/mypage:action/barney/99",
+ "barney", 99);
}
@Test
public void action_link_named_context_no_ids()
{
- testActionLink(
- "/fred",
- PAGE_LOGICAL_NAME,
- "foo.bar",
- "someaction",
- "/fred/sub/mypage.foo.bar:someaction");
+ testActionLink("/fred", PAGE_LOGICAL_NAME, "foo.bar", "someaction", "/fred/sub/mypage.foo.bar:someaction");
}
@SuppressWarnings("unchecked")
@@ -134,14 +105,11 @@
train_triggerPassivateEventForPageLink(rootElement, listener, holder);
- train_encodeRedirectURL(
- response,
- "/barney/" + PAGE_LOGICAL_NAME.toLowerCase() + "/foo/bar",
- ENCODED);
+ train_encodeRedirectURL(response, "/barney/" + PAGE_LOGICAL_NAME.toLowerCase() + "/foo/bar", ENCODED);
// This needs to be refactored a bit to be more testable.
- map.store(isA(Link.class), isA(ComponentInvocation.class));
+ map.store(isA(Link.class), isA(ComponentInvocationImpl.class));
replay();
@@ -179,12 +147,11 @@
listener.createdPageLink(isA(Link.class));
getMocksControl().andAnswer(createdPageLinkAnswer);
- train_encodeRedirectURL(response, "/barney/" + PAGE_LOGICAL_NAME.toLowerCase()
- + "/biff/bazz", ENCODED);
+ train_encodeRedirectURL(response, "/barney/" + PAGE_LOGICAL_NAME.toLowerCase() + "/biff/bazz", ENCODED);
// This needs to be refactored a bit to be more testable.
- map.store(isA(Link.class), isA(ComponentInvocation.class));
+ map.store(isA(Link.class), isA(ComponentInvocationImpl.class));
replay();
@@ -226,7 +193,7 @@
// This needs to be refactored a bit to be more testable.
- map.store(isA(Link.class), isA(ComponentInvocation.class));
+ map.store(isA(Link.class), isA(ComponentInvocationImpl.class));
replay();
@@ -267,14 +234,11 @@
train_triggerPassivateEventForPageLink(rootElement, listener, holder);
- train_encodeRedirectURL(
- response,
- "/barney/" + PAGE_LOGICAL_NAME.toLowerCase() + "/foo/bar",
- ENCODED);
+ train_encodeRedirectURL(response, "/barney/" + PAGE_LOGICAL_NAME.toLowerCase() + "/foo/bar", ENCODED);
// This needs to be refactored a bit to be more testable.
- map.store(isA(Link.class), isA(ComponentInvocation.class));
+ map.store(isA(Link.class), isA(ComponentInvocationImpl.class));
replay();
@@ -293,8 +257,8 @@
}
@SuppressWarnings("unchecked")
- private void train_triggerPassivateEventForPageLink(ComponentPageElement rootElement,
- LinkFactoryListener listener, Holder<Link> holder)
+ private void train_triggerPassivateEventForPageLink(ComponentPageElement rootElement, LinkFactoryListener listener,
+ Holder<Link> holder)
{
IAnswer<Boolean> triggerEventAnswer = newAnswerForPassivateEventTrigger();
@@ -303,11 +267,8 @@
// Intercept the call to handle component event, and let the IAnswer
// do the work.
- expect(
- rootElement.triggerEvent(
- eq(TapestryConstants.PASSIVATE_EVENT),
- (Object[]) isNull(),
- isA(ComponentEventHandler.class))).andAnswer(triggerEventAnswer);
+ expect(rootElement.triggerEvent(eq(TapestryConstants.PASSIVATE_EVENT), (Object[]) isNull(),
+ isA(ComponentEventHandler.class))).andAnswer(triggerEventAnswer);
listener.createdPageLink(isA(Link.class));
getMocksControl().andAnswer(createdPageLinkAnswer);
@@ -324,11 +285,8 @@
// Intercept the call to handle component event, and let the IAnswer
// do the work.
- expect(
- rootElement.triggerEvent(
- eq(TapestryConstants.PASSIVATE_EVENT),
- (Object[]) isNull(),
- isA(ComponentEventHandler.class))).andAnswer(triggerEventAnswer);
+ expect(rootElement.triggerEvent(eq(TapestryConstants.PASSIVATE_EVENT), (Object[]) isNull(),
+ isA(ComponentEventHandler.class))).andAnswer(triggerEventAnswer);
listener.createdActionLink(isA(Link.class));
getMocksControl().andAnswer(createdPageLinkAnswer);
@@ -359,8 +317,7 @@
ComponentEventHandler handler = (ComponentEventHandler) EasyMock
.getCurrentArguments()[2];
- handler.handleResult(new Object[]
- {"foo", "bar"}, null, null);
+ handler.handleResult(new Object[]{"foo", "bar"}, null, null);
return true;
}
@@ -368,8 +325,8 @@
}
@SuppressWarnings("unchecked")
- private void testActionLink(String contextPath, String logicalPageName, String nestedId,
- String eventName, String expectedURI, Object... context)
+ private void testActionLink(String contextPath, String logicalPageName, String nestedId, String eventName,
+ String expectedURI, Object... context)
{
Request request = mockRequest();
Response response = mockResponse();
@@ -392,12 +349,10 @@
// This needs to be refactored a bit to be more testable.
- map.store(isA(Link.class), isA(ComponentInvocation.class));
+ map.store(isA(Link.class), isA(ComponentInvocationImpl.class));
- train_encodeURL(response, String.format(
- "%s?%s=foo/bar",
- expectedURI,
- InternalConstants.PAGE_CONTEXT_NAME), ENCODED);
+ train_encodeURL(response, String.format("%s?%s=foo/bar", expectedURI, InternalConstants.PAGE_CONTEXT_NAME),
+ ENCODED);
replay();
Modified: tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/internal/services/MarkupWriterImplTest.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/internal/services/MarkupWriterImplTest.java?rev=601548&r1=601547&r2=601548&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/internal/services/MarkupWriterImplTest.java (original)
+++ tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/internal/services/MarkupWriterImplTest.java Wed Dec 5 14:02:04 2007
@@ -14,7 +14,6 @@
package org.apache.tapestry.internal.services;
-import org.apache.tapestry.Link;
import org.apache.tapestry.MarkupWriter;
import org.apache.tapestry.dom.Element;
import org.apache.tapestry.dom.XMLMarkupModel;
@@ -34,7 +33,7 @@
@Test
public void write_whitespace_before_start_of_root_element_is_ignored()
{
- MarkupWriter w = new MarkupWriterImpl(new XMLMarkupModel(), null);
+ MarkupWriter w = new MarkupWriterImpl(new XMLMarkupModel());
w.write(" ");
@@ -47,7 +46,7 @@
@Test
public void write_whitespace_after_end_of_root_element_is_ignored()
{
- MarkupWriter w = new MarkupWriterImpl(new XMLMarkupModel(), null);
+ MarkupWriter w = new MarkupWriterImpl(new XMLMarkupModel());
w.element("root");
w.end();
@@ -112,9 +111,8 @@
root.attribute("gnip", "gnop");
- assertEquals(
- w.toString(),
- "<root foo=\"bar\" gnip=\"gnop\">before child<nested>inner text</nested>after child</root>");
+ assertEquals(w.toString(),
+ "<root foo=\"bar\" gnip=\"gnop\">before child<nested>inner text</nested>after child</root>");
}
@Test
@@ -191,24 +189,6 @@
assertEquals(w.toString(), "<root>Test name: writef</root>");
}
- @Test
- public void writer_notifies_map_about_links()
- {
- ComponentInvocationMap map = mockComponentInvocationMap();
-
- MarkupWriter writer = new MarkupWriterImpl(new XMLMarkupModel(), map);
- Link link = mockLink();
-
- Element e = writer.element("form");
-
- map.store(e, link);
-
- replay();
-
- writer.attributes("action", link);
-
- verify();
- }
@Test
public void write_raw()
Modified: tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/internal/services/PageElementFactoryImplTest.java
URL: http://svn.apache.org/viewvc/tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/internal/services/PageElementFactoryImplTest.java?rev=601548&r1=601547&r2=601548&view=diff
==============================================================================
--- tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/internal/services/PageElementFactoryImplTest.java (original)
+++ tapestry/tapestry5/trunk/tapestry-core/src/test/java/org/apache/tapestry/internal/services/PageElementFactoryImplTest.java Wed Dec 5 14:02:04 2007
@@ -66,7 +66,7 @@
{
ComponentInstantiatorSource source = mockComponentInstantiatorSource();
ComponentClassResolver resolver = mockComponentClassResolver();
- MarkupWriter writer = new MarkupWriterImpl(_xmlModel, null);
+ MarkupWriter writer = new MarkupWriterImpl(_xmlModel);
Location l = mockLocation();
RenderQueue queue = mockRenderQueue();
@@ -91,7 +91,7 @@
{
ComponentInstantiatorSource source = mockComponentInstantiatorSource();
ComponentClassResolver resolver = mockComponentClassResolver();
- MarkupWriter writer = new MarkupWriterImpl(_xmlModel, null);
+ MarkupWriter writer = new MarkupWriterImpl(_xmlModel);
RenderQueue queue = mockRenderQueue();
replay();
@@ -194,8 +194,8 @@
replay();
- PageElementFactory factory = new PageElementFactoryImpl(source, resolver, typeCoercer,
- bindingSource, messagesSource);
+ PageElementFactory factory = new PageElementFactoryImpl(source, resolver, typeCoercer, bindingSource,
+ messagesSource);
try
{
@@ -204,9 +204,7 @@
}
catch (TapestryException ex)
{
- assertEquals(
- ex.getMessage(),
- "Attribute expression \'${flintstone\' is missing a closing brace.");
+ assertEquals(ex.getMessage(), "Attribute expression \'${flintstone\' is missing a closing brace.");
assertSame(ex.getLocation(), location);
}