diff -Nru tiles-2.2.1/debian/changelog tiles-2.2.2/debian/changelog --- tiles-2.2.1/debian/changelog 2010-10-26 16:15:25.000000000 +0200 +++ tiles-2.2.2/debian/changelog 2010-10-26 16:14:01.000000000 +0200 @@ -1,3 +1,22 @@ +tiles (2.2.2-1ubuntu1) natty; urgency=low + + * Merge from debian unstable (LP: #666788). Remaining changes: + - Build-depend/suggest libmvel2-java instead of libmvel-java. + + -- Angel Abad Tue, 26 Oct 2010 16:13:58 +0200 + +tiles (2.2.2-1) unstable; urgency=low + + [ Torsten Werner ] + * Change maintainers into Maintainers. + + [ Damien Raude-Morvan ] + * New upstream bugfix release. + * Bump Standards-Version to 3.9.0: no changes needed. + * Use 3.0 (quilt) format. + + -- Damien Raude-Morvan Thu, 01 Jul 2010 01:12:16 +0200 + tiles (2.2.1-2ubuntu1) maverick; urgency=low * Build-depend/suggest libmvel2-java instead of libmvel-java. @@ -60,3 +79,4 @@ * debian/build.xml: remove Javadoc API of Portlet module (build disabled) -- Damien Raude-Morvan Sat, 21 Mar 2009 22:35:52 +0100 + diff -Nru tiles-2.2.1/debian/control tiles-2.2.2/debian/control --- tiles-2.2.1/debian/control 2010-10-26 16:15:25.000000000 +0200 +++ tiles-2.2.2/debian/control 2010-10-26 16:09:32.000000000 +0200 @@ -1,13 +1,14 @@ Source: tiles Section: java Priority: optional -Maintainer: Debian Java maintainers +Maintainer: Ubuntu Developers +XSBC-Original-Maintainer: Debian Java Maintainers Uploaders: Damien Raude-Morvan Build-Depends: cdbs, debhelper (>= 7), default-jdk, maven-ant-helper Build-Depends-Indep: libcommons-digester-java, libslf4j-java, libognl-java, libservlet2.5-java, libtomcat6-java, libspring-core-2.5-java, libspring-web-2.5-java, libfreemarker-java, maven-repo-helper, libmvel2-java -Standards-Version: 3.8.4 +Standards-Version: 3.9.0 Vcs-Svn: svn://svn.debian.org/svn/pkg-java/trunk/tiles/ Vcs-Browser: http://svn.debian.org/wsvn/pkg-java/trunk/tiles/ Homepage: http://tiles.apache.org/ diff -Nru tiles-2.2.1/debian/source/format tiles-2.2.2/debian/source/format --- tiles-2.2.1/debian/source/format 1970-01-01 01:00:00.000000000 +0100 +++ tiles-2.2.2/debian/source/format 2010-09-30 00:20:41.000000000 +0200 @@ -0,0 +1 @@ +3.0 (quilt) diff -Nru tiles-2.2.1/NOTICE.txt tiles-2.2.2/NOTICE.txt --- tiles-2.2.1/NOTICE.txt 2009-10-14 13:08:10.000000000 +0200 +++ tiles-2.2.2/NOTICE.txt 2010-06-17 20:31:47.000000000 +0200 @@ -1,5 +1,5 @@ Apache Tiles - Copyright 1999-2009 The Apache Software Foundation + Copyright 1999-2010 The Apache Software Foundation This product includes software developed at The Apache Software Foundation (http://www.apache.org/). diff -Nru tiles-2.2.1/src/assembly/pom.xml tiles-2.2.2/src/assembly/pom.xml --- tiles-2.2.1/src/assembly/pom.xml 2009-10-14 13:08:01.000000000 +0200 +++ tiles-2.2.2/src/assembly/pom.xml 2010-06-17 20:31:36.000000000 +0200 @@ -1,6 +1,6 @@ @@ -223,6 +217,7 @@ org.codehaus.mojo rat-maven-plugin + 1.0-alpha-3 pom.xml @@ -260,9 +255,14 @@ + maven-install-plugin + + true + + + org.apache.maven.plugins maven-gpg-plugin - 1.0-alpha-4 sign-artifacts @@ -276,7 +276,6 @@ org.apache.maven.plugins maven-source-plugin - 2.1 attach-source @@ -328,29 +327,4 @@ - - - - apache.snapshots - http://people.apache.org/repo/m2-snapshot-repository - - true - - - true - - - - - - apache.snapshots - http://people.apache.org/repo/m2-snapshot-repository/ - - true - - - false - - - \ No hay ningún carácter de nueva línea al final del archivo diff -Nru tiles-2.2.1/src/src/site/apt/config-reference.apt tiles-2.2.2/src/src/site/apt/config-reference.apt --- tiles-2.2.1/src/src/site/apt/config-reference.apt 2009-10-14 13:08:05.000000000 +0200 +++ tiles-2.2.2/src/src/site/apt/config-reference.apt 2010-06-17 20:31:41.000000000 +0200 @@ -1,4 +1,4 @@ -~~ $Id: config-reference.apt 798090 2009-07-27 10:01:47Z apetrelli $ +~~ $Id: config-reference.apt 831448 2009-10-30 20:39:52Z apetrelli $ ~~ ~~ Licensed to the Apache Software Foundation (ASF) under one ~~ or more contributor license agreements. See the NOTICE file diff -Nru tiles-2.2.1/src/src/site/apt/dev/release.apt tiles-2.2.2/src/src/site/apt/dev/release.apt --- tiles-2.2.1/src/src/site/apt/dev/release.apt 2009-10-14 13:08:05.000000000 +0200 +++ tiles-2.2.2/src/src/site/apt/dev/release.apt 2010-06-17 20:31:41.000000000 +0200 @@ -1,4 +1,4 @@ -~~ $Id: release.apt 797970 2009-07-26 18:24:53Z apetrelli $ +~~ $Id: release.apt 950449 2010-06-02 09:32:59Z apetrelli $ ~~ ~~ Licensed to the Apache Software Foundation (ASF) under one ~~ or more contributor license agreements. See the NOTICE file @@ -50,8 +50,8 @@ * Create and publish your GPG key To create a GPG key, follow the - {{{http://maven.apache.org/developers/release/pmc-gpg-keys.html}guidelines}} - from Maven team. Include it in: + {{{http://www.apache.org/dev/openpgp.html}guidelines}}. + Include it in: ------------------------------------- https://svn.apache.org/repos/asf/tiles/site/KEYS @@ -65,13 +65,13 @@ * Generate your SSH key (in this case we will use DSA encryption): --------------------------------- -ssh-keygen -t dsa +ssh-keygen -t rsa --------------------------------- * Copy your public key to the server: -------------------------------------- -scp ~/.ssh/id_dsa.pub user@people.apache.org:.ssh/authorized_keys +scp ~/.ssh/id_rsa.pub user@people.apache.org:.ssh/authorized_keys -------------------------------------- * Try to login: @@ -82,16 +82,51 @@ If it does not ask you a password, everything is ok. -Repeatable operations +* Modify <<>> - These steps must be performed <> release. + Your <<>> must be modified to allow deployment. + + This is the minimal configuration, obviously if you already have a <<>> file, + you must edit it: -* Remove snapshot repositories +--------------------------- + + + + apache-site + YOUR_APACHE_USERNAME + 664 + 775 + + + apache.snapshots.https + YOUR_APACHE_USERNAME + YOUR_APACHE_PASSWORD + + + apache.releases.https + YOUR_APACHE_USERNAME + YOUR_APACHE_PASSWORD + + + + + release + + YOUR_SECRET_PHRASE + + + + + +--------------------------- + +Repeatable operations - Snapshot repositories (for libraries and plugins) should be removed from the - main POM before a release. The problem is that a system behind a corporate - firewall/white list cannot access to the snapshot repository URL, thus giving - an error. + These steps must be performed <> release. * Prepare the release tag @@ -106,20 +141,35 @@ tag to use and the next snapshot version. It is reccomended to use the tag: <>. -* Check-out and install the release - - Due to an {{{https://issues.apache.org/struts/browse/TILES-149}open bug}}, it - is needed to check out and install, through <<>>, the tag; - otherwise the release process fails. - * Perform the Release To perform the release, i.e. creating and deploying Maven artifacts, use: ----------------------------------- -mvn -Prelease -Darguments="-Prelease" release:perform +mvn release:perform ----------------------------------- +* Close the staging repository + + Login to {{{https://repository.apache.org using} Nexus repository}} your Apache LDAP credentials. + Click on "Staging". Then click on "tiles" in the list of repositories. + In the panel below you should see an open repository that is linked to your username and ip. + Right click on this repository and select "Close". + This will close the repository from future deployments and make it available for others to view. + If you are staging multiple releases together, skip this step until you have staged everything. + Enter the name and version of the artifact being released in the "Description" field and then click "Close". + This will make it easier to identify it later. + +* Verify the staged artifacts + + If you click on your repository, a tree view will appear below. + You can then browse the contents to ensure the artifacts are as you expect them. + Pay particular attention to the existence of *.asc (signature) files. + If the you don't like the content of the repository, right click your repository and choose "Drop". + You can then rollback your release and repeat the process. + + Note the repository URL, you will need this in your vote email. + * Digest and upload assemblies * Go into the release assembly target directory: @@ -180,7 +230,7 @@ Maven 2 staging repository: - * http://people.apache.org/builds/tiles/${version}/m2-staging-repository/ + * https://repository.apache.org/content/repositories/tiles-[YOUR REPOSITORY ID]/ A vote regarding the quality of this test build will be initiated within the next couple of days. @@ -206,7 +256,7 @@ Maven 2 staging repository: - * http://people.apache.org/builds/tiles/${version}/m2-staging-repository/ + * https://repository.apache.org/content/repositories/tiles-[YOUR REPOSITORY ID]/ If you have had a chance to review the test build, please respond with a vote on its quality: @@ -227,17 +277,19 @@ After a vote is finished, and it has been decided that is <>, there is the need of a post-vote process. -** Move artifacts +** Promote staged artifacts + + Once the release is deemed fit for public consumption it can be transfered to a production repository where it will be available to all users. + + Login to {{{https://repository.apache.org}Nexus repository}} again. + Click on "Staging" and then on the repository with id "tiles-staging". + Find your closed staging repository, right click on it and choose "Promote". + Select the "Releases" repository and click "Promote". - * Move Maven artifacts to the rsync repository. To do it there is an - {{{https://svn.apache.org/repos/asf/maven/plugins/trunk/maven-stage-plugin/}<>}} - to help in the process (WARNING: not tested yet!). - Merge the staging repository with the rsync repository: - ------------------------------------------- -mvn stage:copy -Dsource="http://people.apache.org/builds/tiles/${version}/m2-staging-repository/" --Dtarget="scp://people.apache.org/www/people.apache.org/repo/m2-ibiblio-rsync-repository" -Dversion=${version} ------------------------------------------- + Next click on "Repositories", select the "Releases" repository + and validate that your artifacts exist as you expect them. + +** Move assemblies * Move assemblies to the Apache distribution mirrors: @@ -249,12 +301,6 @@ cp * /www/www.apache.org/dist/tiles/v${version}/ ------------------------------------------- - * Upload the <<>> file to the Apache mirrors: - -------------------------------------------- -scp KEYS user@people.apache.org:/www/www.apache.org/dist/tiles/v${version}/ -------------------------------------------- - ** Update the site * Wait 24 hours to let the mirror sync to the release and then update the @@ -304,4 +350,4 @@ the user list, or, if appropriate, file a ticket with JIRA. -------------------------------------- - <> \ No hay ningún carácter de nueva línea al final del archivo + <> diff -Nru tiles-2.2.1/src/src/site/apt/getting_started.apt tiles-2.2.2/src/src/site/apt/getting_started.apt --- tiles-2.2.1/src/src/site/apt/getting_started.apt 2009-10-14 13:08:05.000000000 +0200 +++ tiles-2.2.2/src/src/site/apt/getting_started.apt 2010-06-17 20:31:41.000000000 +0200 @@ -1,4 +1,4 @@ -~~ $Id: getting_started.apt 798090 2009-07-27 10:01:47Z apetrelli $ +~~ $Id: getting_started.apt 831448 2009-10-30 20:39:52Z apetrelli $ ~~ ~~ Licensed to the Apache Software Foundation (ASF) under one ~~ or more contributor license agreements. See the NOTICE file diff -Nru tiles-2.2.1/src/src/site/apt/security/security-bulletin-1.apt tiles-2.2.2/src/src/site/apt/security/security-bulletin-1.apt --- tiles-2.2.1/src/src/site/apt/security/security-bulletin-1.apt 2009-10-14 13:08:05.000000000 +0200 +++ tiles-2.2.2/src/src/site/apt/security/security-bulletin-1.apt 2010-06-17 20:31:41.000000000 +0200 @@ -1,4 +1,4 @@ -~~ $Id: security-bulletin-1.apt 782137 2009-06-05 21:18:52Z apetrelli $ +~~ $Id: security-bulletin-1.apt 940000 2010-05-01 12:46:53Z mck $ ~~ ~~ Licensed to the Apache Software Foundation (ASF) under one ~~ or more contributor license agreements. See the NOTICE file @@ -39,7 +39,7 @@ *-------------------------+-----------+ | Affected Software | Tiles 2.1.0/2.1.1 (Tiles 2.0.x versions are safe) | *-------------------------+-----------+ -| Original JIRA Ticket | {{{https://issues.apache.org/struts/browse/TILES-351}TILES-351}} | +| Original JIRA Ticket | {{{https://issues.apache.org/jira/browse/TILES-351}TILES-351}} | *-------------------------+-----------+ | Reporter | Antonio Petrelli (Tiles PMC member) | *-------------------------+-----------+ diff -Nru tiles-2.2.1/src/src/site/apt/selenium.apt tiles-2.2.2/src/src/site/apt/selenium.apt --- tiles-2.2.1/src/src/site/apt/selenium.apt 2009-10-14 13:08:05.000000000 +0200 +++ tiles-2.2.2/src/src/site/apt/selenium.apt 2010-06-17 20:31:41.000000000 +0200 @@ -1,4 +1,4 @@ -~~ $Id: selenium.apt 693560 2008-09-09 18:54:13Z apetrelli $ +~~ $Id: selenium.apt 831448 2009-10-30 20:39:52Z apetrelli $ ~~ ~~ Licensed to the Apache Software Foundation (ASF) under one ~~ or more contributor license agreements. See the NOTICE file @@ -48,6 +48,35 @@ {{{http://www.openqa.org/selenium-ide/} http://www.openqa.org/selenium-ide/}}. +* Run Selenium tests the easy way + + To run Selenium tests you need to add a configuration parameter in your <<>> file. + +------------------------------ + +... + + ... + + run-selenium + + /tomcat/installation/directory + + + ... + + +------------------------------ + + After that, if you have Firefox installed, you can launch Selenium tests in the command line: + +------------------------------ +mvn verity -Prun-selenium +------------------------------ + * Package <> the webapp with the 'selenium' profile activated. diff -Nru tiles-2.2.1/src/src/site/apt/tutorial/integration/velocity.apt tiles-2.2.2/src/src/site/apt/tutorial/integration/velocity.apt --- tiles-2.2.1/src/src/site/apt/tutorial/integration/velocity.apt 2009-10-14 13:08:04.000000000 +0200 +++ tiles-2.2.2/src/src/site/apt/tutorial/integration/velocity.apt 2010-06-17 20:31:41.000000000 +0200 @@ -1,4 +1,4 @@ -~~ $Id: velocity.apt 782137 2009-06-05 21:18:52Z apetrelli $ +~~ $Id: velocity.apt 931637 2010-04-07 18:31:09Z apetrelli $ ~~ ~~ Licensed to the Apache Software Foundation (ASF) under one ~~ or more contributor license agreements. See the NOTICE file @@ -35,6 +35,21 @@ * Add <<>> and <<>> files to your application. + * Add this code in you <<>> file: + +---------------------------------- +userdirective=org.apache.tiles.velocity.template.AddAttributeDirective,\ + org.apache.tiles.velocity.template.AddListAttributeDirective,\ + org.apache.tiles.velocity.template.DefinitionDirective,\ + org.apache.tiles.velocity.template.GetAsStringDirective,\ + org.apache.tiles.velocity.template.ImportAttributeDirective,\ + org.apache.tiles.velocity.template.InsertAttributeDirective,\ + org.apache.tiles.velocity.template.InsertDefinitionDirective,\ + org.apache.tiles.velocity.template.InsertTemplateDirective,\ + org.apache.tiles.velocity.template.PutAttributeDirective,\ + org.apache.tiles.velocity.template.PutListAttributeDirective +---------------------------------- + * To access ".vm" files from HTTP requests, add this piece of configuration in <<>> (the parameters can be modified as needed). @@ -57,7 +72,8 @@ ---------------------------------- * To access ".vm" files as attributes, register VelocityAttributeRenderer - this way (only available in a servlet environment): + (only available in a servlet environment), by overriding the registerAttributeRenderers + method in the AbstractTilesContainerFactory implementation being used, like: ---------------------------------- @Override @@ -87,9 +103,9 @@ * Usage in Velocity templates - There are two Velocity tools that will be available to your application: + There are two ways to use Tiles-Velocity integration: - * the <<>> tool, that is a Velocity-style tool: + * the <<>> tool, that is a Velocity-style tool: ---------------------------------- $tilesAlt.startAttributeContext() @@ -109,18 +125,40 @@ $attribute.setRenderer("velocity") $attributeContext.putAttribute("body", $attribute}) -$tilesAlt.renderAttribute($templateAttribute) +$tilesAlt.render($templateAttribute) $tilesAlt.endAttributeContext() ---------------------------------- - * the <<>> tool, that has both Velocity-style methods and directive oriented methods. + * the <<>> directives, that have a tag-like meaning. ---------------------------------- -$tiles.insertTemplate.start({"template":"/page/myTemplate.vm"}) - $tiles.putAttribute({"name":"title", "value":"This is the title."}) - $tiles.putAttribute({"name":"header", "value":"/velocity/header.vm", "type":"velocity"}) - $tiles.putAttribute({"name":"body", "value":"/velocity/body.vm", "type":"velocity"}) -$tiles.insertTemplate().end() +#tiles_insertTemplate({"template":"/page/myTemplate.vm"}) + #tiles_putAttribute({"name":"title", "value":"This is the title."})#end + #tiles_putAttribute({"name":"header", "value":"/velocity/header.vm", "type":"velocity"})#end + #tiles_putAttribute({"name":"body", "value":"/velocity/body.vm", "type":"velocity"})#end +#end ---------------------------------- - For details about directives see the {{{../../apidocs/index.html}Javadocs}}. + Other <<>> directives are: + + * <<>> - get the value of named attribute as string. + + * <<>> - import the named attribute into the scope of + template context under the (optional) custom name. + + * <<>> - inserts given attribute in the output in its own context. + If this is a string a string is printed, if this is a definition - it is included in the output. + + * <<>> - inserts given attribute in the output. + If this is a string a string is printed, if this is a definition - it is included in the output. You can specify whether + a separate context is created for rendering the definition - in this case variables with duplicate names + will not be inherited from the parent definition + + * <<>> - renders a definition in its own context. + + * <<>> - inserts definition, optionally in the shared context. + + * <<>> - inserts a named page, equivalent to Velocity's <<<#parse>>>. + + + For details about the tool and directives see the {{{../../apidocs/index.html}Javadocs}}. diff -Nru tiles-2.2.1/src/src/site/xdoc/dev/building.xml tiles-2.2.2/src/src/site/xdoc/dev/building.xml --- tiles-2.2.1/src/src/site/xdoc/dev/building.xml 2009-10-14 13:08:05.000000000 +0200 +++ tiles-2.2.2/src/src/site/xdoc/dev/building.xml 2010-06-17 20:31:42.000000000 +0200 @@ -1,7 +1,7 @@ - - - - - - - - - - - - ${reports} - - \ No hay ningún carácter de nueva línea al final del archivo diff -Nru tiles-2.2.1/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/context/VelocityUtilTest.java tiles-2.2.2/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/context/VelocityUtilTest.java --- tiles-2.2.1/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/context/VelocityUtilTest.java 2009-10-14 13:08:09.000000000 +0200 +++ tiles-2.2.2/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/context/VelocityUtilTest.java 2010-06-17 20:31:47.000000000 +0200 @@ -1,5 +1,5 @@ /* - * $Id: VelocityUtilTest.java 797765 2009-07-25 13:20:26Z apetrelli $ + * $Id: VelocityUtilTest.java 902965 2010-01-25 20:12:46Z apetrelli $ * * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements. See the NOTICE file @@ -22,18 +22,23 @@ package org.apache.tiles.velocity.context; import static org.apache.tiles.velocity.context.VelocityUtil.*; -import static org.junit.Assert.*; import static org.easymock.EasyMock.*; +import static org.easymock.classextension.EasyMock.*; +import static org.junit.Assert.*; -import java.util.HashMap; +import java.io.IOException; +import java.io.Writer; import java.util.Map; import javax.servlet.ServletContext; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpSession; -import org.apache.tiles.ArrayStack; import org.apache.velocity.context.Context; +import org.apache.velocity.context.InternalContextAdapter; +import org.apache.velocity.runtime.parser.node.ASTBlock; +import org.apache.velocity.runtime.parser.node.ASTMap; +import org.apache.velocity.runtime.parser.node.Node; import org.junit.Test; /** @@ -47,11 +52,6 @@ private static final Integer DUMMY_VALUE = new Integer(10); /** - * The parameter stack key. - */ - private static final String PARAMETER_MAP_STACK_KEY = "org.apache.tiles.velocity.PARAMETER_MAP_STACK"; - - /** * Test method for {@link org.apache.tiles.velocity.context.VelocityUtil * #toSimpleBoolean(java.lang.Boolean, boolean)}. */ @@ -67,34 +67,6 @@ /** * Test method for {@link org.apache.tiles.velocity.context.VelocityUtil - * #getParameterStack(org.apache.velocity.context.Context)}. - */ - @Test - public void testGetParameterStack() { - Context velocityContext = createMock(Context.class); - - expect(velocityContext.get(PARAMETER_MAP_STACK_KEY)).andReturn(null); - expect(velocityContext.put(eq(PARAMETER_MAP_STACK_KEY), - isA(ArrayStack.class))).andReturn(null); - replay(velocityContext); - ArrayStack> paramStack = getParameterStack(velocityContext); - assertNotNull(paramStack); - assertEquals(0, paramStack.size()); - verify(velocityContext); - - reset(velocityContext); - - paramStack = new ArrayStack>(); - paramStack.push(new HashMap()); - expect(velocityContext.get(PARAMETER_MAP_STACK_KEY)).andReturn(paramStack); - - replay(velocityContext); - assertEquals(paramStack, getParameterStack(velocityContext)); - verify(velocityContext); - } - - /** - * Test method for {@link org.apache.tiles.velocity.context.VelocityUtil * #setAttribute(org.apache.velocity.context.Context, javax.servlet.http.HttpServletRequest, * javax.servlet.ServletContext, java.lang.String, java.lang.Object, java.lang.String)}. */ @@ -166,4 +138,86 @@ setAttribute(velocityContext, request, servletContext, "myName", value, "application"); verify(velocityContext, request, servletContext); } + + /** + * Test method for + * {@link VelocityUtil#getBodyAsString(InternalContextAdapter, Node)}. + * + * @throws IOException If something goes wrong. + */ + @Test + public void testGetBodyAsString() throws IOException { + InternalContextAdapter context = createMock(InternalContextAdapter.class); + Node node = createMock(Node.class); + ASTBlock block = new CustomBlock(); + + expect(node.jjtGetChild(1)).andReturn(block); + + replay(context, node); + assertEquals("myBody", VelocityUtil.getBodyAsString(context, node)); + verify(context, node); + } + + /** + * Test method for + * {@link VelocityUtil#evaluateBody(InternalContextAdapter, Writer, Node)}. + * + * @throws IOException If something goes wrong. + */ + @Test + public void testEvaluateBody() throws IOException { + InternalContextAdapter context = createMock(InternalContextAdapter.class); + Node node = createMock(Node.class); + Writer writer = createMock(Writer.class); + ASTBlock block = createMock(ASTBlock.class); + + expect(node.jjtGetChild(1)).andReturn(block); + + replay(context, node, writer); + VelocityUtil.evaluateBody(context, writer, node); + verify(context, node, writer); + } + + /** + * Test method for + * {@link VelocityUtil#getBodyAsString(InternalContextAdapter, Node)}. + */ + @SuppressWarnings("unchecked") + @Test + public void testGetParameters() { + InternalContextAdapter context = createMock(InternalContextAdapter.class); + Node node = createMock(Node.class); + ASTMap block = createMock(ASTMap.class); + Map params = createMock(Map.class); + + expect(node.jjtGetChild(0)).andReturn(block); + expect(block.value(context)).andReturn(params); + + replay(context, node, block, params); + assertEquals(params, VelocityUtil.getParameters(context, node)); + verify(context, node, block, params); + } + + /** + * Custom block to render a specific string. + * + * @version $Rev: 902965 $ $Date: 2010-01-25 21:12:46 +0100 (lun, 25 gen 2010) $ + */ + private static class CustomBlock extends ASTBlock { + + /** + * Constructor. + */ + public CustomBlock() { + super(1); + } + + /** {@inheritDoc} */ + @Override + public boolean render(InternalContextAdapter context, Writer writer) + throws IOException { + writer.write("myBody"); + return true; + } + } } diff -Nru tiles-2.2.1/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/renderer/VelocityAttributeRendererTest.java tiles-2.2.2/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/renderer/VelocityAttributeRendererTest.java --- tiles-2.2.1/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/renderer/VelocityAttributeRendererTest.java 2009-10-14 13:08:09.000000000 +0200 +++ tiles-2.2.2/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/renderer/VelocityAttributeRendererTest.java 2010-06-17 20:31:47.000000000 +0200 @@ -1,5 +1,5 @@ /* - * $Id: VelocityAttributeRendererTest.java 821299 2009-10-03 12:15:05Z apetrelli $ + * $Id: VelocityAttributeRendererTest.java 831448 2009-10-30 20:39:52Z apetrelli $ * * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements. See the NOTICE file @@ -28,7 +28,7 @@ /** * Tests {@link VelocityAttributeRenderer}. * - * @version $Rev: 821299 $ $Date: 2009-10-03 14:15:05 +0200 (sab, 03 ott 2009) $ + * @version $Rev: 831448 $ $Date: 2009-10-30 21:39:52 +0100 (ven, 30 ott 2009) $ */ public class VelocityAttributeRendererTest { diff -Nru tiles-2.2.1/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/AddAttributeDirectiveTest.java tiles-2.2.2/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/AddAttributeDirectiveTest.java --- tiles-2.2.1/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/AddAttributeDirectiveTest.java 1970-01-01 01:00:00.000000000 +0100 +++ tiles-2.2.2/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/AddAttributeDirectiveTest.java 2010-06-17 20:31:47.000000000 +0200 @@ -0,0 +1,126 @@ +/* + * $Id: AddAttributeDirectiveTest.java 902403 2010-01-23 13:31:17Z apetrelli $ + * + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you 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.tiles.velocity.template; + +import static org.easymock.EasyMock.*; +import static org.easymock.classextension.EasyMock.*; + +import java.io.Writer; +import java.util.HashMap; +import java.util.Map; + +import javax.servlet.ServletContext; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.apache.tiles.ArrayStack; +import org.apache.tiles.servlet.context.ServletUtil; +import org.apache.tiles.template.AddAttributeModel; +import org.apache.velocity.context.InternalContextAdapter; +import org.junit.Before; +import org.junit.Test; + +/** + * Tests {@link AddAttributeDirective}. + */ +public class AddAttributeDirectiveTest { + + /** + * The model to test. + */ + private AddAttributeDirective model; + + /** + * The template model. + */ + private AddAttributeModel tModel; + + /** + * Sets up the model to test. + */ + @Before + public void setUp() { + tModel = createMock(AddAttributeModel.class); + model = new AddAttributeDirective(tModel); + } + + /** + * Test method for {@link AddAttributeDirective#start(InternalContextAdapter, + * Writer, Map, HttpServletRequest, HttpServletResponse, ServletContext)}. + */ + @Test + public void testStart() { + HttpServletRequest request = createMock(HttpServletRequest.class); + HttpServletResponse response = createMock(HttpServletResponse.class); + InternalContextAdapter velocityContext = createMock(InternalContextAdapter.class); + Map params = createParams(); + ArrayStack composeStack = new ArrayStack(); + Writer writer = createMock(Writer.class); + ServletContext servletContext = createMock(ServletContext.class); + + expect(request.getAttribute(ServletUtil.COMPOSE_STACK_ATTRIBUTE_NAME)) + .andReturn(composeStack); + tModel.start(composeStack); + + replay(tModel, request, response, velocityContext, writer, servletContext); + model.start(velocityContext, writer, params, request, response, servletContext); + verify(tModel, request, response, velocityContext, writer, servletContext); + } + + /** + * Test method for {@link AddAttributeDirective#end(InternalContextAdapter, + * Writer, Map, String, HttpServletRequest, HttpServletResponse, ServletContext)}. + */ + @Test + public void testEnd() { + HttpServletRequest request = createMock(HttpServletRequest.class); + HttpServletResponse response = createMock(HttpServletResponse.class); + InternalContextAdapter velocityContext = createMock(InternalContextAdapter.class); + Map params = createParams(); + ArrayStack composeStack = new ArrayStack(); + Writer writer = createMock(Writer.class); + ServletContext servletContext = createMock(ServletContext.class); + + expect(request.getAttribute(ServletUtil.COMPOSE_STACK_ATTRIBUTE_NAME)) + .andReturn(composeStack); + tModel.end(composeStack, "myValue", "myExpression", + "myBody", "myRole", "myType"); + + replay(tModel, request, response, velocityContext, writer, servletContext); + model.end(velocityContext, writer, params, "myBody", request, response, servletContext); + verify(tModel, request, response, velocityContext); + } + + /** + * Creates the parameters to work with the model. + * + * @return The parameters. + */ + private Map createParams() { + Map params = new HashMap(); + params.put("value", "myValue"); + params.put("expression", "myExpression"); + params.put("role", "myRole"); + params.put("type", "myType"); + return params; + } +} diff -Nru tiles-2.2.1/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/AddAttributeVModelTest.java tiles-2.2.2/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/AddAttributeVModelTest.java --- tiles-2.2.1/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/AddAttributeVModelTest.java 2009-10-14 13:08:10.000000000 +0200 +++ tiles-2.2.2/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/AddAttributeVModelTest.java 1970-01-01 01:00:00.000000000 +0100 @@ -1,159 +0,0 @@ -/* - * $Id: AddAttributeVModelTest.java 797765 2009-07-25 13:20:26Z apetrelli $ - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you 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.tiles.velocity.template; - -import static org.easymock.EasyMock.*; -import static org.easymock.classextension.EasyMock.*; -import static org.junit.Assert.*; - -import java.util.HashMap; -import java.util.Map; - -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; - -import org.apache.tiles.ArrayStack; -import org.apache.tiles.servlet.context.ServletUtil; -import org.apache.tiles.template.AddAttributeModel; -import org.apache.tiles.velocity.context.VelocityUtil; -import org.apache.velocity.context.Context; -import org.junit.Before; -import org.junit.Test; - -/** - * Tests {@link AddAttributeVModel}. - */ -public class AddAttributeVModelTest { - - /** - * The attribute key that will be used to store the parameter map, to use across Velocity tool calls. - */ - private static final String PARAMETER_MAP_STACK_KEY = "org.apache.tiles.velocity.PARAMETER_MAP_STACK"; - - /** - * The model to test. - */ - private AddAttributeVModel model; - - /** - * The template model. - */ - private AddAttributeModel tModel; - - /** - * Sets up the model to test. - */ - @Before - public void setUp() { - tModel = createMock(AddAttributeModel.class); - model = new AddAttributeVModel(tModel); - } - - /** - * Test method for {@link org.apache.tiles.velocity.template.AddAttributeVModel - * #execute(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, - * org.apache.velocity.context.Context, java.util.Map)}. - */ - @Test - public void testExecute() { - HttpServletRequest request = createMock(HttpServletRequest.class); - HttpServletResponse response = createMock(HttpServletResponse.class); - Context velocityContext = createMock(Context.class); - Map params = createParams(); - ArrayStack composeStack = new ArrayStack(); - - expect(request.getAttribute(ServletUtil.COMPOSE_STACK_ATTRIBUTE_NAME)) - .andReturn(composeStack); - tModel.execute(composeStack, "myValue", "myExpression", null, "myRole", "myType"); - - replay(tModel, request, response, velocityContext); - assertEquals(VelocityUtil.EMPTY_RENDERABLE, model.execute(request, response, velocityContext, params)); - verify(tModel, request, response, velocityContext); - } - - /** - * Test method for {@link org.apache.tiles.velocity.template.AddAttributeVModel - * #start(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, - * org.apache.velocity.context.Context, java.util.Map)}. - */ - @Test - public void testStart() { - HttpServletRequest request = createMock(HttpServletRequest.class); - HttpServletResponse response = createMock(HttpServletResponse.class); - Context velocityContext = createMock(Context.class); - Map params = createParams(); - ArrayStack composeStack = new ArrayStack(); - ArrayStack> parameterMapStack = new ArrayStack>(); - - expect(request.getAttribute(ServletUtil.COMPOSE_STACK_ATTRIBUTE_NAME)) - .andReturn(composeStack); - expect(velocityContext.get(PARAMETER_MAP_STACK_KEY)).andReturn(parameterMapStack); - tModel.start(composeStack); - - replay(tModel, request, response, velocityContext); - model.start(request, response, velocityContext, params); - assertEquals(1, parameterMapStack.size()); - assertEquals(params, parameterMapStack.peek()); - verify(tModel, request, response, velocityContext); - } - - /** - * Test method for {@link org.apache.tiles.velocity.template.AddAttributeVModel - * #end(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, - * org.apache.velocity.context.Context)}. - */ - @Test - public void testEnd() { - HttpServletRequest request = createMock(HttpServletRequest.class); - HttpServletResponse response = createMock(HttpServletResponse.class); - Context velocityContext = createMock(Context.class); - Map params = createParams(); - ArrayStack composeStack = new ArrayStack(); - ArrayStack> parameterMapStack = new ArrayStack>(); - parameterMapStack.push(params); - - expect(request.getAttribute(ServletUtil.COMPOSE_STACK_ATTRIBUTE_NAME)) - .andReturn(composeStack); - expect(velocityContext.get(PARAMETER_MAP_STACK_KEY)).andReturn(parameterMapStack); - tModel.end(composeStack, "myValue", "myExpression", - null, "myRole", "myType"); - - replay(tModel, request, response, velocityContext); - assertEquals(VelocityUtil.EMPTY_RENDERABLE, model.end(request, response, velocityContext)); - assertTrue(parameterMapStack.isEmpty()); - verify(tModel, request, response, velocityContext); - } - - /** - * Creates the parameters to work with the model. - * - * @return The parameters. - */ - private Map createParams() { - Map params = new HashMap(); - params.put("value", "myValue"); - params.put("expression", "myExpression"); - params.put("role", "myRole"); - params.put("type", "myType"); - return params; - } -} diff -Nru tiles-2.2.1/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/AddListAttributeDirectiveTest.java tiles-2.2.2/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/AddListAttributeDirectiveTest.java --- tiles-2.2.1/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/AddListAttributeDirectiveTest.java 1970-01-01 01:00:00.000000000 +0100 +++ tiles-2.2.2/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/AddListAttributeDirectiveTest.java 2010-06-17 20:31:47.000000000 +0200 @@ -0,0 +1,122 @@ +/* + * $Id: AddListAttributeDirectiveTest.java 902403 2010-01-23 13:31:17Z apetrelli $ + * + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you 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.tiles.velocity.template; + +import static org.easymock.EasyMock.*; +import static org.easymock.classextension.EasyMock.*; + +import java.io.Writer; +import java.util.HashMap; +import java.util.Map; + +import javax.servlet.ServletContext; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.apache.tiles.ArrayStack; +import org.apache.tiles.servlet.context.ServletUtil; +import org.apache.tiles.template.AddListAttributeModel; +import org.apache.velocity.context.InternalContextAdapter; +import org.junit.Before; +import org.junit.Test; + +/** + * Tests {@link AddListAttributeDirective}. + */ +public class AddListAttributeDirectiveTest { + + /** + * The model to test. + */ + private AddListAttributeDirective model; + + /** + * The template model. + */ + private AddListAttributeModel tModel; + + /** + * Sets up the model to test. + */ + @Before + public void setUp() { + tModel = createMock(AddListAttributeModel.class); + model = new AddListAttributeDirective(tModel); + } + + /** + * Test method for {@link AddListAttributeDirective#start(InternalContextAdapter, + * Writer, Map, HttpServletRequest, HttpServletResponse, ServletContext)}. + */ + @Test + public void testStart() { + HttpServletRequest request = createMock(HttpServletRequest.class); + HttpServletResponse response = createMock(HttpServletResponse.class); + InternalContextAdapter velocityContext = createMock(InternalContextAdapter.class); + Map params = createParams(); + ArrayStack composeStack = new ArrayStack(); + Writer writer = createMock(Writer.class); + ServletContext servletContext = createMock(ServletContext.class); + + expect(request.getAttribute(ServletUtil.COMPOSE_STACK_ATTRIBUTE_NAME)) + .andReturn(composeStack); + tModel.start(composeStack, "myRole"); + + replay(tModel, request, response, velocityContext, writer, servletContext); + model.start(velocityContext, writer, params, request, response, servletContext); + verify(tModel, request, response, velocityContext, writer, servletContext); + } + + /** + * Test method for {@link AddListAttributeDirective#end(InternalContextAdapter, + * Writer, Map, HttpServletRequest, HttpServletResponse, ServletContext)}. + */ + @Test + public void testEnd() { + HttpServletRequest request = createMock(HttpServletRequest.class); + HttpServletResponse response = createMock(HttpServletResponse.class); + InternalContextAdapter velocityContext = createMock(InternalContextAdapter.class); + Map params = createParams(); + ArrayStack composeStack = new ArrayStack(); + Writer writer = createMock(Writer.class); + ServletContext servletContext = createMock(ServletContext.class); + + expect(request.getAttribute(ServletUtil.COMPOSE_STACK_ATTRIBUTE_NAME)) + .andReturn(composeStack); + tModel.end(composeStack); + + replay(tModel, request, response, velocityContext, writer, servletContext); + model.end(velocityContext, writer, params, request, response, servletContext); + verify(tModel, request, response, velocityContext, writer, servletContext); + } + + /** + * Creates the parameters to work with the model. + * + * @return The parameters. + */ + private Map createParams() { + Map params = new HashMap(); + params.put("role", "myRole"); + return params; + } +} diff -Nru tiles-2.2.1/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/AddListAttributeVModelTest.java tiles-2.2.2/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/AddListAttributeVModelTest.java --- tiles-2.2.1/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/AddListAttributeVModelTest.java 2009-10-14 13:08:10.000000000 +0200 +++ tiles-2.2.2/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/AddListAttributeVModelTest.java 1970-01-01 01:00:00.000000000 +0100 @@ -1,119 +0,0 @@ -/* - * $Id: AddListAttributeVModelTest.java 797765 2009-07-25 13:20:26Z apetrelli $ - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you 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.tiles.velocity.template; - -import static org.easymock.EasyMock.*; -import static org.easymock.classextension.EasyMock.*; -import static org.junit.Assert.*; - -import java.util.HashMap; -import java.util.Map; - -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; - -import org.apache.tiles.ArrayStack; -import org.apache.tiles.servlet.context.ServletUtil; -import org.apache.tiles.template.AddListAttributeModel; -import org.apache.tiles.velocity.context.VelocityUtil; -import org.apache.velocity.context.Context; -import org.junit.Before; -import org.junit.Test; - -/** - * Tests {@link AddListAttributeVModel}. - */ -public class AddListAttributeVModelTest { - - /** - * The model to test. - */ - private AddListAttributeVModel model; - - /** - * The template model. - */ - private AddListAttributeModel tModel; - - /** - * Sets up the model to test. - */ - @Before - public void setUp() { - tModel = createMock(AddListAttributeModel.class); - model = new AddListAttributeVModel(tModel); - } - - /** - * Test method for {@link org.apache.tiles.velocity.template.AddListAttributeVModel - * #start(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, - * org.apache.velocity.context.Context, java.util.Map)}. - */ - @Test - public void testStart() { - HttpServletRequest request = createMock(HttpServletRequest.class); - HttpServletResponse response = createMock(HttpServletResponse.class); - Context velocityContext = createMock(Context.class); - Map params = createParams(); - ArrayStack composeStack = new ArrayStack(); - - expect(request.getAttribute(ServletUtil.COMPOSE_STACK_ATTRIBUTE_NAME)) - .andReturn(composeStack); - tModel.start(composeStack, "myRole"); - - replay(tModel, request, response, velocityContext); - model.start(request, response, velocityContext, params); - verify(tModel, request, response, velocityContext); - } - - /** - * Test method for {@link org.apache.tiles.velocity.template.AddListAttributeVModel - * #end(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, - * org.apache.velocity.context.Context)}. - */ - @Test - public void testEnd() { - HttpServletRequest request = createMock(HttpServletRequest.class); - HttpServletResponse response = createMock(HttpServletResponse.class); - Context velocityContext = createMock(Context.class); - ArrayStack composeStack = new ArrayStack(); - - expect(request.getAttribute(ServletUtil.COMPOSE_STACK_ATTRIBUTE_NAME)) - .andReturn(composeStack); - tModel.end(composeStack); - - replay(tModel, request, response, velocityContext); - assertEquals(VelocityUtil.EMPTY_RENDERABLE, model.end(request, response, velocityContext)); - verify(tModel, request, response, velocityContext); - } - - /** - * Creates the parameters to work with the model. - * - * @return The parameters. - */ - private Map createParams() { - Map params = new HashMap(); - params.put("role", "myRole"); - return params; - } -} diff -Nru tiles-2.2.1/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/BlockDirectiveTest.java tiles-2.2.2/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/BlockDirectiveTest.java --- tiles-2.2.1/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/BlockDirectiveTest.java 1970-01-01 01:00:00.000000000 +0100 +++ tiles-2.2.2/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/BlockDirectiveTest.java 2010-06-17 20:31:47.000000000 +0200 @@ -0,0 +1,109 @@ +/* + * $Id: BlockDirectiveTest.java 902965 2010-01-25 20:12:46Z apetrelli $ + * + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you 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.tiles.velocity.template; + +import static org.junit.Assert.*; +import static org.easymock.classextension.EasyMock.*; + +import java.io.IOException; +import java.io.Writer; +import java.lang.reflect.Method; +import java.util.Map; + +import javax.servlet.ServletContext; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.apache.velocity.context.InternalContextAdapter; +import org.apache.velocity.runtime.directive.DirectiveConstants; +import org.apache.velocity.runtime.parser.node.ASTBlock; +import org.apache.velocity.runtime.parser.node.ASTMap; +import org.apache.velocity.runtime.parser.node.Node; +import org.apache.velocity.tools.view.ViewToolContext; +import org.junit.Before; +import org.junit.Test; + +/** + * Tests {@link BlockDirective}. + * + * @version $Rev: 902965 $ $Date: 2010-01-25 21:12:46 +0100 (lun, 25 gen 2010) $ + */ +public class BlockDirectiveTest { + + /** + * The directive to test. + */ + private BlockDirective directive; + + /** + * @throws java.lang.Exception + */ + @Before + public void setUp() { + directive = createMock(BlockDirective.class, new Method[0]); + } + + /** + * Test method for {@link org.apache.tiles.velocity.template.BlockDirective#getType()}. + */ + @Test + public void testGetType() { + replay(directive); + assertEquals(DirectiveConstants.BLOCK, directive.getType()); + verify(directive); + } + + /** + * Test method for {@link BlockDirective#render(InternalContextAdapter, Writer, Node)}. + * @throws IOException If something goes wrong. + */ + @SuppressWarnings("unchecked") + @Test + public void testRenderInternalContextAdapterWriterNode() throws IOException { + InternalContextAdapter context = createMock(InternalContextAdapter.class); + Writer writer = createMock(Writer.class); + Node node = createMock(Node.class); + ViewToolContext viewContext = createMock(ViewToolContext.class); + HttpServletRequest request = createMock(HttpServletRequest.class); + HttpServletResponse response = createMock(HttpServletResponse.class); + ServletContext servletContext = createMock(ServletContext.class); + ASTMap astMap = createMock(ASTMap.class); + ASTBlock block = createMock(ASTBlock.class); + Map params = createMock(Map.class); + + expect(context.getInternalUserContext()).andReturn(viewContext); + expect(viewContext.getRequest()).andReturn(request); + expect(viewContext.getResponse()).andReturn(response); + expect(viewContext.getServletContext()).andReturn(servletContext); + expect(node.jjtGetChild(0)).andReturn(astMap); + expect(astMap.value(context)).andReturn(params); + expect(node.jjtGetChild(1)).andReturn(block); + expect(block.render(context, writer)).andReturn(true); + + directive.start(context, writer, params, request, response, servletContext); + directive.end(context, writer, params, request, response, servletContext); + + replay(directive, context, writer, node, viewContext, servletContext, request, response, astMap, params, block); + directive.render(context, writer, node); + verify(directive, context, writer, node, viewContext, servletContext, request, response, astMap, params, block); + } +} diff -Nru tiles-2.2.1/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/BodyBlockDirectiveTest.java tiles-2.2.2/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/BodyBlockDirectiveTest.java --- tiles-2.2.1/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/BodyBlockDirectiveTest.java 1970-01-01 01:00:00.000000000 +0100 +++ tiles-2.2.2/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/BodyBlockDirectiveTest.java 2010-06-17 20:31:47.000000000 +0200 @@ -0,0 +1,111 @@ +/* + * $Id: BodyBlockDirectiveTest.java 902965 2010-01-25 20:12:46Z apetrelli $ + * + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you 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.tiles.velocity.template; + +import static org.easymock.EasyMock.*; +import static org.easymock.classextension.EasyMock.*; +import static org.junit.Assert.*; + +import java.io.IOException; +import java.io.StringWriter; +import java.io.Writer; +import java.lang.reflect.Method; +import java.util.Map; + +import javax.servlet.ServletContext; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.apache.velocity.context.InternalContextAdapter; +import org.apache.velocity.runtime.directive.DirectiveConstants; +import org.apache.velocity.runtime.parser.node.ASTBlock; +import org.apache.velocity.runtime.parser.node.ASTMap; +import org.apache.velocity.runtime.parser.node.Node; +import org.apache.velocity.tools.view.ViewToolContext; +import org.junit.Before; +import org.junit.Test; + +/** + * Tests {@link BodyBlockDirective}. + * + * @version $Rev: 902965 $ $Date: 2010-01-25 21:12:46 +0100 (lun, 25 gen 2010) $ + */ +public class BodyBlockDirectiveTest { + + /** + * The directive to test. + */ + private BodyBlockDirective directive; + + /** + * @throws java.lang.Exception + */ + @Before + public void setUp() { + directive = createMock(BodyBlockDirective.class, new Method[0]); + } + + /** + * Test method for {@link org.apache.tiles.velocity.template.BlockDirective#getType()}. + */ + @Test + public void testGetType() { + replay(directive); + assertEquals(DirectiveConstants.BLOCK, directive.getType()); + verify(directive); + } + + /** + * Test method for {@link BlockDirective#render(InternalContextAdapter, Writer, Node)}. + * @throws IOException If something goes wrong. + */ + @SuppressWarnings("unchecked") + @Test + public void testRenderInternalContextAdapterWriterNode() throws IOException { + InternalContextAdapter context = createMock(InternalContextAdapter.class); + Writer writer = createMock(Writer.class); + Node node = createMock(Node.class); + ViewToolContext viewContext = createMock(ViewToolContext.class); + HttpServletRequest request = createMock(HttpServletRequest.class); + HttpServletResponse response = createMock(HttpServletResponse.class); + ServletContext servletContext = createMock(ServletContext.class); + ASTMap astMap = createMock(ASTMap.class); + ASTBlock block = createMock(ASTBlock.class); + Map params = createMock(Map.class); + + expect(context.getInternalUserContext()).andReturn(viewContext); + expect(viewContext.getRequest()).andReturn(request); + expect(viewContext.getResponse()).andReturn(response); + expect(viewContext.getServletContext()).andReturn(servletContext); + expect(node.jjtGetChild(0)).andReturn(astMap); + expect(astMap.value(context)).andReturn(params); + expect(node.jjtGetChild(1)).andReturn(block); + expect(block.render(eq(context), isA(StringWriter.class))).andReturn(true); + + directive.start(context, writer, params, request, response, servletContext); + directive.end(context, writer, params, null, request, response, servletContext); + + replay(directive, context, writer, node, viewContext, servletContext, request, response, astMap, params, block); + directive.render(context, writer, node); + verify(directive, context, writer, node, viewContext, servletContext, request, response, astMap, params, block); + } +} diff -Nru tiles-2.2.1/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/DefinitionDirectiveTest.java tiles-2.2.2/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/DefinitionDirectiveTest.java --- tiles-2.2.1/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/DefinitionDirectiveTest.java 1970-01-01 01:00:00.000000000 +0100 +++ tiles-2.2.2/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/DefinitionDirectiveTest.java 2010-06-17 20:31:47.000000000 +0200 @@ -0,0 +1,137 @@ +/* + * $Id: DefinitionDirectiveTest.java 902403 2010-01-23 13:31:17Z apetrelli $ + * + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you 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.tiles.velocity.template; + +import static org.easymock.EasyMock.*; +import static org.easymock.classextension.EasyMock.*; + +import java.io.Writer; +import java.util.HashMap; +import java.util.Map; + +import javax.servlet.ServletContext; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.apache.tiles.ArrayStack; +import org.apache.tiles.mgmt.MutableTilesContainer; +import org.apache.tiles.servlet.context.ServletUtil; +import org.apache.tiles.template.DefinitionModel; +import org.apache.velocity.context.InternalContextAdapter; +import org.junit.Before; +import org.junit.Test; + +/** + * Tests {@link DefinitionDirective}. + */ +public class DefinitionDirectiveTest { + + /** + * The model to test. + */ + private DefinitionDirective model; + + /** + * The template model. + */ + private DefinitionModel tModel; + + /** + * Sets up the model to test. + */ + @Before + public void setUp() { + tModel = createMock(DefinitionModel.class); + } + + /** + * Test method for {@link DefinitionDirective#start(InternalContextAdapter, + * Writer, Map, HttpServletRequest, HttpServletResponse, ServletContext)}. + */ + @Test + public void testStart() { + HttpServletRequest request = createMock(HttpServletRequest.class); + HttpServletResponse response = createMock(HttpServletResponse.class); + InternalContextAdapter velocityContext = createMock(InternalContextAdapter.class); + Map params = createParams(); + ArrayStack composeStack = new ArrayStack(); + Writer writer = createMock(Writer.class); + ServletContext servletContext = createMock(ServletContext.class); + + expect(request.getAttribute(ServletUtil.COMPOSE_STACK_ATTRIBUTE_NAME)) + .andReturn(composeStack); + tModel.start(composeStack, "myName", "myTemplate", "myRole", "myExtends", "myPreparer"); + + replay(tModel, request, response, velocityContext, writer, servletContext); + initializeModel(); + model.start(velocityContext, writer, params, request, response, servletContext); + verify(tModel, request, response, velocityContext, writer, servletContext); + } + + /** + * Test method for {@link DefinitionDirective#end(InternalContextAdapter, + * Writer, Map, HttpServletRequest, HttpServletResponse, ServletContext)}. + */ + @Test + public void testEnd() { + HttpServletRequest request = createMock(HttpServletRequest.class); + HttpServletResponse response = createMock(HttpServletResponse.class); + InternalContextAdapter velocityContext = createMock(InternalContextAdapter.class); + Writer writer = createMock(Writer.class); + ServletContext servletContext = createMock(ServletContext.class); + Map params = createParams(); + MutableTilesContainer container = createMock(MutableTilesContainer.class); + ArrayStack composeStack = new ArrayStack(); + + expect(request.getAttribute(ServletUtil.CURRENT_CONTAINER_ATTRIBUTE_NAME)).andReturn(container); + expect(request.getAttribute(ServletUtil.COMPOSE_STACK_ATTRIBUTE_NAME)) + .andReturn(composeStack); + tModel.end(container, composeStack, velocityContext, request, response); + + replay(tModel, request, response, velocityContext, writer, servletContext, container); + initializeModel(); + model.end(velocityContext, writer, params, request, response, servletContext); + verify(tModel, request, response, velocityContext, writer, servletContext, container); + } + + /** + * Initializes the model. + */ + private void initializeModel() { + model = new DefinitionDirective(tModel); + } + + /** + * Creates the parameters to work with the model. + * + * @return The parameters. + */ + private Map createParams() { + Map params = new HashMap(); + params.put("name", "myName"); + params.put("template", "myTemplate"); + params.put("role", "myRole"); + params.put("extends", "myExtends"); + params.put("preparer", "myPreparer"); + return params; + } +} diff -Nru tiles-2.2.1/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/DefinitionVModelTest.java tiles-2.2.2/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/DefinitionVModelTest.java --- tiles-2.2.1/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/DefinitionVModelTest.java 2009-10-14 13:08:10.000000000 +0200 +++ tiles-2.2.2/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/DefinitionVModelTest.java 1970-01-01 01:00:00.000000000 +0100 @@ -1,170 +0,0 @@ -/* - * $Id: DefinitionVModelTest.java 797765 2009-07-25 13:20:26Z apetrelli $ - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you 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.tiles.velocity.template; - -import static org.easymock.EasyMock.*; -import static org.easymock.classextension.EasyMock.*; -import static org.junit.Assert.*; - -import java.io.IOException; -import java.util.HashMap; -import java.util.Map; - -import javax.servlet.ServletContext; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; - -import org.apache.tiles.ArrayStack; -import org.apache.tiles.mgmt.MutableTilesContainer; -import org.apache.tiles.servlet.context.ServletUtil; -import org.apache.tiles.template.DefinitionModel; -import org.apache.tiles.velocity.context.VelocityUtil; -import org.apache.velocity.context.Context; -import org.junit.Before; -import org.junit.Test; - -/** - * Tests {@link DefinitionVModel}. - */ -public class DefinitionVModelTest { - - /** - * The model to test. - */ - private DefinitionVModel model; - - /** - * The template model. - */ - private DefinitionModel tModel; - - /** - * The servlet context. - */ - private ServletContext servletContext; - - /** - * Sets up the model to test. - */ - @Before - public void setUp() { - tModel = createMock(DefinitionModel.class); - servletContext = createMock(ServletContext.class); - } - - /** - * Test method for {@link org.apache.tiles.velocity.template.DefinitionVModel - * #execute(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, - * org.apache.velocity.context.Context, java.util.Map)}. - * @throws IOException If something goes wrong. - */ - @Test - public void testExecute() throws IOException { - HttpServletRequest request = createMock(HttpServletRequest.class); - HttpServletResponse response = createMock(HttpServletResponse.class); - Context velocityContext = createMock(Context.class); - MutableTilesContainer container = createMock(MutableTilesContainer.class); - Map params = createParams(); - ArrayStack composeStack = new ArrayStack(); - - expect(request.getAttribute(ServletUtil.CURRENT_CONTAINER_ATTRIBUTE_NAME)).andReturn(container); - expect(request.getAttribute(ServletUtil.COMPOSE_STACK_ATTRIBUTE_NAME)) - .andReturn(composeStack); - tModel.execute(container, composeStack, "myName", "myTemplate", "myRole", "myExtends", "myPreparer", - velocityContext, request, response); - - replay(tModel, servletContext, request, response, velocityContext, container); - initializeModel(); - assertEquals(VelocityUtil.EMPTY_RENDERABLE, model.execute(request, response, velocityContext, params)); - verify(tModel, servletContext, request, response, velocityContext, container); - } - - /** - * Test method for {@link org.apache.tiles.velocity.template.DefinitionVModel - * #start(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, - * org.apache.velocity.context.Context, java.util.Map)}. - */ - @Test - public void testStart() { - HttpServletRequest request = createMock(HttpServletRequest.class); - HttpServletResponse response = createMock(HttpServletResponse.class); - Context velocityContext = createMock(Context.class); - Map params = createParams(); - ArrayStack composeStack = new ArrayStack(); - - expect(request.getAttribute(ServletUtil.COMPOSE_STACK_ATTRIBUTE_NAME)) - .andReturn(composeStack); - tModel.start(composeStack, "myName", "myTemplate", "myRole", "myExtends", "myPreparer"); - - replay(tModel, servletContext, request, response, velocityContext); - initializeModel(); - model.start(request, response, velocityContext, params); - verify(tModel, servletContext, request, response, velocityContext); - } - - /** - * Test method for {@link org.apache.tiles.velocity.template.DefinitionVModel - * #end(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, - * org.apache.velocity.context.Context)}. - * @throws IOException If something goes wrong. - */ - @Test - public void testEnd() throws IOException { - HttpServletRequest request = createMock(HttpServletRequest.class); - HttpServletResponse response = createMock(HttpServletResponse.class); - Context velocityContext = createMock(Context.class); - MutableTilesContainer container = createMock(MutableTilesContainer.class); - ArrayStack composeStack = new ArrayStack(); - - expect(request.getAttribute(ServletUtil.CURRENT_CONTAINER_ATTRIBUTE_NAME)).andReturn(container); - expect(request.getAttribute(ServletUtil.COMPOSE_STACK_ATTRIBUTE_NAME)) - .andReturn(composeStack); - tModel.end(container, composeStack, velocityContext, request, response); - - replay(tModel, servletContext, request, response, velocityContext, container); - initializeModel(); - assertEquals(VelocityUtil.EMPTY_RENDERABLE, model.end(request, response, velocityContext)); - verify(tModel, servletContext, request, response, velocityContext, container); - } - - /** - * Initializes the model. - */ - private void initializeModel() { - model = new DefinitionVModel(tModel, servletContext); - } - - /** - * Creates the parameters to work with the model. - * - * @return The parameters. - */ - private Map createParams() { - Map params = new HashMap(); - params.put("name", "myName"); - params.put("template", "myTemplate"); - params.put("role", "myRole"); - params.put("extends", "myExtends"); - params.put("preparer", "myPreparer"); - return params; - } -} diff -Nru tiles-2.2.1/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/GetAsStringDirectiveTest.java tiles-2.2.2/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/GetAsStringDirectiveTest.java --- tiles-2.2.1/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/GetAsStringDirectiveTest.java 1970-01-01 01:00:00.000000000 +0100 +++ tiles-2.2.2/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/GetAsStringDirectiveTest.java 2010-06-17 20:31:47.000000000 +0200 @@ -0,0 +1,158 @@ +/* + * $Id: GetAsStringDirectiveTest.java 902403 2010-01-23 13:31:17Z apetrelli $ + * + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you 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.tiles.velocity.template; + +import static org.easymock.EasyMock.*; +import static org.easymock.classextension.EasyMock.*; + +import java.io.IOException; +import java.io.Writer; +import java.util.HashMap; +import java.util.Map; + +import javax.servlet.ServletContext; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.apache.tiles.ArrayStack; +import org.apache.tiles.Attribute; +import org.apache.tiles.TilesContainer; +import org.apache.tiles.servlet.context.ServletUtil; +import org.apache.tiles.template.GetAsStringModel; +import org.apache.velocity.context.InternalContextAdapter; +import org.junit.Before; +import org.junit.Test; + +/** + * Tests {@link GetAsStringDirective}. + */ +public class GetAsStringDirectiveTest { + + /** + * The model to test. + */ + private GetAsStringDirective model; + + /** + * The template model. + */ + private GetAsStringModel tModel; + + /** + * The attribute value. + */ + private Attribute attribute; + + /** + * Sets up the model to test. + */ + @Before + public void setUp() { + tModel = createMock(GetAsStringModel.class); + attribute = new Attribute("myAttributeValue"); + } + + /** + * Test method for {@link GetAsStringDirective#start(InternalContextAdapter, + * Writer, Map, HttpServletRequest, HttpServletResponse, ServletContext)}. + */ + @Test + public void testStart() { + HttpServletRequest request = createMock(HttpServletRequest.class); + HttpServletResponse response = createMock(HttpServletResponse.class); + InternalContextAdapter velocityContext = createMock(InternalContextAdapter.class); + TilesContainer container = createMock(TilesContainer.class); + Map params = createParams(); + ArrayStack composeStack = new ArrayStack(); + Writer writer = createMock(Writer.class); + ServletContext servletContext = createMock(ServletContext.class); + + expect(request.getAttribute(ServletUtil.COMPOSE_STACK_ATTRIBUTE_NAME)) + .andReturn(composeStack); + expect(request.getAttribute(ServletUtil.CURRENT_CONTAINER_ATTRIBUTE_NAME)).andReturn(container); + tModel.start(composeStack, container, false, "myPreparer", "myRole", "myDefaultValue", + "myDefaultValueRole", "myDefaultValueType", "myName", attribute, + velocityContext, request, response, writer); + + replay(tModel, request, response, velocityContext, writer, servletContext); + initializeModel(); + model.start(velocityContext, writer, params, request, response, servletContext); + verify(tModel, request, response, velocityContext, writer, servletContext); + } + + /** + * Test method for {@link GetAsStringDirective#end(InternalContextAdapter, + * Writer, Map, HttpServletRequest, HttpServletResponse, ServletContext)}. + * + * @throws IOException If something goes wrong. + */ + @Test + public void testEnd() throws IOException { + HttpServletRequest request = createMock(HttpServletRequest.class); + HttpServletResponse response = createMock(HttpServletResponse.class); + InternalContextAdapter velocityContext = createMock(InternalContextAdapter.class); + Writer writer = createMock(Writer.class); + ServletContext servletContext = createMock(ServletContext.class); + TilesContainer container = createMock(TilesContainer.class); + ArrayStack composeStack = new ArrayStack(); + Map params = createParams(); + ArrayStack> paramStack = new ArrayStack>(); + paramStack.push(params); + + expect(request.getAttribute(ServletUtil.CURRENT_CONTAINER_ATTRIBUTE_NAME)).andReturn(container); + expect(request.getAttribute(ServletUtil.COMPOSE_STACK_ATTRIBUTE_NAME)) + .andReturn(composeStack); + tModel.end(composeStack, container, writer, false, velocityContext, request, response, writer); + + replay(tModel, request, response, velocityContext, writer, servletContext, container); + initializeModel(); + model.end(velocityContext, writer, params, request, response, servletContext); + verify(tModel, request, response, velocityContext, writer, servletContext, container); + } + + /** + * Initializes the model. + */ + private void initializeModel() { + model = new GetAsStringDirective(tModel); + } + + /** + * Creates the parameters to work with the model. + * + * @return The parameters. + */ + private Map createParams() { + Map params = new HashMap(); + params.put("ignore", false); + params.put("preparer", "myPreparer"); + params.put("role", "myRole"); + params.put("defaultValue", "myDefaultValue"); + params.put("defaultValueRole", "myDefaultValueRole"); + params.put("defaultValueType", "myDefaultValueType"); + params.put("name", "myName"); + params.put("value", attribute); + params.put("role", "myRole"); + params.put("extends", "myExtends"); + return params; + } +} diff -Nru tiles-2.2.1/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/GetAsStringVModelTest.java tiles-2.2.2/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/GetAsStringVModelTest.java --- tiles-2.2.1/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/GetAsStringVModelTest.java 2009-10-14 13:08:10.000000000 +0200 +++ tiles-2.2.2/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/GetAsStringVModelTest.java 1970-01-01 01:00:00.000000000 +0100 @@ -1,208 +0,0 @@ -/* - * $Id: GetAsStringVModelTest.java 797765 2009-07-25 13:20:26Z apetrelli $ - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you 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.tiles.velocity.template; - -import static org.easymock.EasyMock.*; -import static org.easymock.classextension.EasyMock.*; -import static org.junit.Assert.*; - -import java.io.IOException; -import java.io.StringWriter; -import java.io.Writer; -import java.util.HashMap; -import java.util.Map; - -import javax.servlet.ServletContext; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; - -import org.apache.tiles.ArrayStack; -import org.apache.tiles.Attribute; -import org.apache.tiles.TilesContainer; -import org.apache.tiles.servlet.context.ServletUtil; -import org.apache.tiles.template.GetAsStringModel; -import org.apache.velocity.context.Context; -import org.apache.velocity.context.InternalContextAdapter; -import org.apache.velocity.runtime.Renderable; -import org.junit.Before; -import org.junit.Test; - -/** - * Tests {@link GetAsStringVModel}. - */ -public class GetAsStringVModelTest { - - /** - * The attribute key that will be used to store the parameter map, to use across Velocity tool calls. - */ - private static final String PARAMETER_MAP_STACK_KEY = "org.apache.tiles.velocity.PARAMETER_MAP_STACK"; - - /** - * The model to test. - */ - private GetAsStringVModel model; - - /** - * The template model. - */ - private GetAsStringModel tModel; - - /** - * The servlet context. - */ - private ServletContext servletContext; - - /** - * The attribute value. - */ - private Attribute attribute; - - /** - * Sets up the model to test. - */ - @Before - public void setUp() { - tModel = createMock(GetAsStringModel.class); - servletContext = createMock(ServletContext.class); - attribute = new Attribute("myAttributeValue"); - } - - /** - * Test method for {@link org.apache.tiles.velocity.template.GetAsStringVModel - * #execute(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, - * org.apache.velocity.context.Context, java.util.Map)}. - * @throws IOException If something goes wrong. - */ - @Test - public void testExecute() throws IOException { - HttpServletRequest request = createMock(HttpServletRequest.class); - HttpServletResponse response = createMock(HttpServletResponse.class); - Context velocityContext = createMock(Context.class); - TilesContainer container = createMock(TilesContainer.class); - InternalContextAdapter internalContextAdapter = createMock(InternalContextAdapter.class); - Writer writer = new StringWriter(); - attribute = new Attribute("myAttributeValue"); - Map params = createParams(); - - expect(request.getAttribute(ServletUtil.CURRENT_CONTAINER_ATTRIBUTE_NAME)).andReturn(container); - tModel.execute(container, writer, false, "myPreparer", "myRole", "myDefaultValue", - "myDefaultValueRole", "myDefaultValueType", "myName", attribute, - velocityContext, request, response, writer); - - replay(tModel, servletContext, request, response, velocityContext, container, internalContextAdapter); - initializeModel(); - Renderable renderable = model.execute(request, response, velocityContext, params); - renderable.render(internalContextAdapter, writer); - verify(tModel, servletContext, request, response, velocityContext, container, internalContextAdapter); - } - - /** - * Test method for {@link org.apache.tiles.velocity.template.GetAsStringVModel - * #start(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, - * org.apache.velocity.context.Context, java.util.Map)}. - */ - @Test - public void testStart() { - HttpServletRequest request = createMock(HttpServletRequest.class); - HttpServletResponse response = createMock(HttpServletResponse.class); - Context velocityContext = createMock(Context.class); - TilesContainer container = createMock(TilesContainer.class); - Map params = createParams(); - ArrayStack composeStack = new ArrayStack(); - ArrayStack> paramStack = new ArrayStack>(); - - expect(request.getAttribute(ServletUtil.COMPOSE_STACK_ATTRIBUTE_NAME)) - .andReturn(composeStack); - expect(request.getAttribute(ServletUtil.CURRENT_CONTAINER_ATTRIBUTE_NAME)).andReturn(container); - expect(velocityContext.get(PARAMETER_MAP_STACK_KEY)).andReturn(paramStack); - tModel.start(composeStack, container, false, "myPreparer", "myRole", "myDefaultValue", - "myDefaultValueRole", "myDefaultValueType", "myName", attribute, - velocityContext, request, response); - - replay(tModel, servletContext, container, request, response, velocityContext); - initializeModel(); - model.start(request, response, velocityContext, params); - assertEquals(1, paramStack.size()); - assertEquals(params, paramStack.peek()); - verify(tModel, servletContext, container, request, response, velocityContext); - } - - /** - * Test method for {@link org.apache.tiles.velocity.template.GetAsStringVModel - * #end(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, - * org.apache.velocity.context.Context)}. - * @throws IOException If something goes wrong. - */ - @Test - public void testEnd() throws IOException { - HttpServletRequest request = createMock(HttpServletRequest.class); - HttpServletResponse response = createMock(HttpServletResponse.class); - Context velocityContext = createMock(Context.class); - TilesContainer container = createMock(TilesContainer.class); - InternalContextAdapter internalContextAdapter = createMock(InternalContextAdapter.class); - Writer writer = new StringWriter(); - ArrayStack composeStack = new ArrayStack(); - Map params = createParams(); - ArrayStack> paramStack = new ArrayStack>(); - paramStack.push(params); - - expect(request.getAttribute(ServletUtil.CURRENT_CONTAINER_ATTRIBUTE_NAME)).andReturn(container); - expect(request.getAttribute(ServletUtil.COMPOSE_STACK_ATTRIBUTE_NAME)) - .andReturn(composeStack); - expect(velocityContext.get(PARAMETER_MAP_STACK_KEY)).andReturn(paramStack); - tModel.end(composeStack, container, writer, false, velocityContext, request, response, writer); - - replay(tModel, servletContext, request, response, velocityContext, container, internalContextAdapter); - initializeModel(); - Renderable renderable = model.end(request, response, velocityContext); - renderable.render(internalContextAdapter, writer); - assertTrue(paramStack.isEmpty()); - verify(tModel, servletContext, request, response, velocityContext, container, internalContextAdapter); - } - - /** - * Initializes the model. - */ - private void initializeModel() { - model = new GetAsStringVModel(tModel, servletContext); - } - - /** - * Creates the parameters to work with the model. - * - * @return The parameters. - */ - private Map createParams() { - Map params = new HashMap(); - params.put("ignore", false); - params.put("preparer", "myPreparer"); - params.put("role", "myRole"); - params.put("defaultValue", "myDefaultValue"); - params.put("defaultValueRole", "myDefaultValueRole"); - params.put("defaultValueType", "myDefaultValueType"); - params.put("name", "myName"); - params.put("value", attribute); - params.put("role", "myRole"); - params.put("extends", "myExtends"); - return params; - } -} diff -Nru tiles-2.2.1/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/ImportAttributeDirectiveTest.java tiles-2.2.2/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/ImportAttributeDirectiveTest.java --- tiles-2.2.1/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/ImportAttributeDirectiveTest.java 1970-01-01 01:00:00.000000000 +0100 +++ tiles-2.2.2/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/ImportAttributeDirectiveTest.java 2010-06-17 20:31:47.000000000 +0200 @@ -0,0 +1,248 @@ +/* + * $Id: ImportAttributeDirectiveTest.java 902403 2010-01-23 13:31:17Z apetrelli $ + * + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you 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.tiles.velocity.template; + +import static org.easymock.EasyMock.*; +import static org.easymock.classextension.EasyMock.*; + +import java.io.StringWriter; +import java.io.Writer; +import java.util.HashMap; +import java.util.Map; + +import javax.servlet.ServletContext; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import javax.servlet.http.HttpSession; + +import org.apache.tiles.TilesContainer; +import org.apache.tiles.servlet.context.ServletUtil; +import org.apache.tiles.template.ImportAttributeModel; +import org.apache.velocity.context.InternalContextAdapter; +import org.apache.velocity.runtime.parser.node.ASTMap; +import org.apache.velocity.runtime.parser.node.Node; +import org.apache.velocity.tools.view.ViewToolContext; +import org.junit.Before; +import org.junit.Test; + +/** + * Tests {@link ImportAttributeDirective}. + */ +public class ImportAttributeDirectiveTest { + + /** + * The model to test. + */ + private ImportAttributeDirective model; + + /** + * The template model. + */ + private ImportAttributeModel tModel; + + /** + * Sets up the model to test. + */ + @Before + public void setUp() { + tModel = createMock(ImportAttributeModel.class); + } + + /** + * Test method for {@link ImportAttributeDirective#render(InternalContextAdapter, Writer, Node)}. + */ + @Test + public void testExecutePage() { + HttpServletRequest request = createMock(HttpServletRequest.class); + HttpServletResponse response = createMock(HttpServletResponse.class); + ServletContext servletContext = createMock(ServletContext.class); + InternalContextAdapter velocityContext = createMock(InternalContextAdapter.class); + ViewToolContext viewContext = createMock(ViewToolContext.class); + ASTMap astMap = createMock(ASTMap.class); + Node node = createMock(Node.class); + TilesContainer container = createMock(TilesContainer.class); + Writer writer = new StringWriter(); + Map params = createParams(); + Map attributes = new HashMap(); + attributes.put("one", "value1"); + attributes.put("two", "value2"); + + expect(velocityContext.getInternalUserContext()).andReturn(viewContext); + expect(viewContext.getRequest()).andReturn(request); + expect(viewContext.getResponse()).andReturn(response); + expect(viewContext.getServletContext()).andReturn(servletContext); + expect(node.jjtGetChild(0)).andReturn(astMap); + expect(astMap.value(velocityContext)).andReturn(params); + expect(request.getAttribute(ServletUtil.CURRENT_CONTAINER_ATTRIBUTE_NAME)).andReturn(container); + expect(tModel.getImportedAttributes(container, "myName", "myToName", false, + velocityContext, request, response)).andReturn(attributes); + expect(velocityContext.put("one", "value1")).andReturn("value1"); + expect(velocityContext.put("two", "value2")).andReturn("value2"); + + replay(tModel, servletContext, request, response, velocityContext, container, node, viewContext, astMap); + initializeModel(); + model.render(velocityContext, writer, node); + verify(tModel, servletContext, request, response, velocityContext, container, node, viewContext, astMap); + } + + /** + * Test method for {@link org.apache.tiles.velocity.template.ImportAttributeVModel + * #execute(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, + * org.apache.velocity.context.Context, java.util.Map)}. + */ + @Test + public void testExecuteRequest() { + HttpServletRequest request = createMock(HttpServletRequest.class); + HttpServletResponse response = createMock(HttpServletResponse.class); + ServletContext servletContext = createMock(ServletContext.class); + InternalContextAdapter velocityContext = createMock(InternalContextAdapter.class); + ViewToolContext viewContext = createMock(ViewToolContext.class); + ASTMap astMap = createMock(ASTMap.class); + Node node = createMock(Node.class); + TilesContainer container = createMock(TilesContainer.class); + Writer writer = new StringWriter(); + Map params = createParams(); + params.put("scope", "request"); + Map attributes = new HashMap(); + attributes.put("one", "value1"); + attributes.put("two", "value2"); + + expect(velocityContext.getInternalUserContext()).andReturn(viewContext); + expect(viewContext.getRequest()).andReturn(request); + expect(viewContext.getResponse()).andReturn(response); + expect(viewContext.getServletContext()).andReturn(servletContext); + expect(node.jjtGetChild(0)).andReturn(astMap); + expect(astMap.value(velocityContext)).andReturn(params); + expect(request.getAttribute(ServletUtil.CURRENT_CONTAINER_ATTRIBUTE_NAME)).andReturn(container); + expect(tModel.getImportedAttributes(container, "myName", "myToName", false, + velocityContext, request, response)).andReturn(attributes); + request.setAttribute("one", "value1"); + request.setAttribute("two", "value2"); + + replay(tModel, servletContext, request, response, velocityContext, container, node, viewContext, astMap); + initializeModel(); + model.render(velocityContext, writer, node); + verify(tModel, servletContext, request, response, velocityContext, container, node, viewContext, astMap); + } + + /** + * Test method for {@link org.apache.tiles.velocity.template.ImportAttributeVModel + * #execute(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, + * org.apache.velocity.context.Context, java.util.Map)}. + */ + @Test + public void testExecuteSession() { + HttpServletRequest request = createMock(HttpServletRequest.class); + HttpServletResponse response = createMock(HttpServletResponse.class); + HttpSession session = createMock(HttpSession.class); + ServletContext servletContext = createMock(ServletContext.class); + InternalContextAdapter velocityContext = createMock(InternalContextAdapter.class); + ViewToolContext viewContext = createMock(ViewToolContext.class); + ASTMap astMap = createMock(ASTMap.class); + Node node = createMock(Node.class); + TilesContainer container = createMock(TilesContainer.class); + Writer writer = new StringWriter(); + Map params = createParams(); + params.put("scope", "session"); + Map attributes = new HashMap(); + attributes.put("one", "value1"); + attributes.put("two", "value2"); + + expect(velocityContext.getInternalUserContext()).andReturn(viewContext); + expect(viewContext.getRequest()).andReturn(request); + expect(viewContext.getResponse()).andReturn(response); + expect(viewContext.getServletContext()).andReturn(servletContext); + expect(node.jjtGetChild(0)).andReturn(astMap); + expect(astMap.value(velocityContext)).andReturn(params); + expect(request.getAttribute(ServletUtil.CURRENT_CONTAINER_ATTRIBUTE_NAME)).andReturn(container); + expect(tModel.getImportedAttributes(container, "myName", "myToName", false, + velocityContext, request, response)).andReturn(attributes); + expect(request.getSession()).andReturn(session).times(2); + session.setAttribute("one", "value1"); + session.setAttribute("two", "value2"); + + replay(tModel, servletContext, request, response, velocityContext, container, node, viewContext, astMap); + initializeModel(); + model.render(velocityContext, writer, node); + verify(tModel, servletContext, request, response, velocityContext, container, node, viewContext, astMap); + } + + /** + * Test method for {@link org.apache.tiles.velocity.template.ImportAttributeVModel + * #execute(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, + * org.apache.velocity.context.Context, java.util.Map)}. + */ + @Test + public void testExecuteApplication() { + HttpServletRequest request = createMock(HttpServletRequest.class); + HttpServletResponse response = createMock(HttpServletResponse.class); + ServletContext servletContext = createMock(ServletContext.class); + InternalContextAdapter velocityContext = createMock(InternalContextAdapter.class); + ViewToolContext viewContext = createMock(ViewToolContext.class); + ASTMap astMap = createMock(ASTMap.class); + Node node = createMock(Node.class); + TilesContainer container = createMock(TilesContainer.class); + Writer writer = new StringWriter(); + Map params = createParams(); + params.put("scope", "application"); + Map attributes = new HashMap(); + attributes.put("one", "value1"); + attributes.put("two", "value2"); + + expect(velocityContext.getInternalUserContext()).andReturn(viewContext); + expect(viewContext.getRequest()).andReturn(request); + expect(viewContext.getResponse()).andReturn(response); + expect(viewContext.getServletContext()).andReturn(servletContext); + expect(node.jjtGetChild(0)).andReturn(astMap); + expect(astMap.value(velocityContext)).andReturn(params); + expect(request.getAttribute(ServletUtil.CURRENT_CONTAINER_ATTRIBUTE_NAME)).andReturn(container); + expect(tModel.getImportedAttributes(container, "myName", "myToName", false, + velocityContext, request, response)).andReturn(attributes); + servletContext.setAttribute("one", "value1"); + servletContext.setAttribute("two", "value2"); + + replay(tModel, servletContext, request, response, velocityContext, container, node, viewContext, astMap); + initializeModel(); + model.render(velocityContext, writer, node); + verify(tModel, servletContext, request, response, velocityContext, container, node, viewContext, astMap); + } + + /** + * Initializes the model. + */ + private void initializeModel() { + model = new ImportAttributeDirective(tModel); + } + + /** + * Creates the parameters to work with the model. + * + * @return The parameters. + */ + private Map createParams() { + Map params = new HashMap(); + params.put("ignore", false); + params.put("name", "myName"); + params.put("toName", "myToName"); + return params; + } +} diff -Nru tiles-2.2.1/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/ImportAttributeVModelTest.java tiles-2.2.2/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/ImportAttributeVModelTest.java --- tiles-2.2.1/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/ImportAttributeVModelTest.java 2009-10-14 13:08:10.000000000 +0200 +++ tiles-2.2.2/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/ImportAttributeVModelTest.java 1970-01-01 01:00:00.000000000 +0100 @@ -1,227 +0,0 @@ -/* - * $Id: ImportAttributeVModelTest.java 765774 2009-04-16 21:43:00Z apetrelli $ - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you 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.tiles.velocity.template; - -import static org.easymock.classextension.EasyMock.*; - -import java.io.IOException; -import java.io.StringWriter; -import java.io.Writer; -import java.util.HashMap; -import java.util.Map; - -import javax.servlet.ServletContext; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import javax.servlet.http.HttpSession; - -import org.apache.tiles.TilesContainer; -import org.apache.tiles.servlet.context.ServletUtil; -import org.apache.tiles.template.ImportAttributeModel; -import org.apache.velocity.context.Context; -import org.apache.velocity.context.InternalContextAdapter; -import org.apache.velocity.runtime.Renderable; -import org.junit.Before; -import org.junit.Test; - -/** - * Tests {@link ImportAttributeVModel}. - */ -public class ImportAttributeVModelTest { - - /** - * The model to test. - */ - private ImportAttributeVModel model; - - /** - * The template model. - */ - private ImportAttributeModel tModel; - - /** - * The servlet context. - */ - private ServletContext servletContext; - - /** - * Sets up the model to test. - */ - @Before - public void setUp() { - tModel = createMock(ImportAttributeModel.class); - servletContext = createMock(ServletContext.class); - } - - /** - * Test method for {@link org.apache.tiles.velocity.template.ImportAttributeVModel - * #execute(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, - * org.apache.velocity.context.Context, java.util.Map)}. - * @throws IOException If something goes wrong. - */ - @Test - public void testExecutePage() throws IOException { - HttpServletRequest request = createMock(HttpServletRequest.class); - HttpServletResponse response = createMock(HttpServletResponse.class); - Context velocityContext = createMock(Context.class); - TilesContainer container = createMock(TilesContainer.class); - InternalContextAdapter internalContextAdapter = createMock(InternalContextAdapter.class); - Writer writer = new StringWriter(); - Map params = createParams(); - Map attributes = new HashMap(); - attributes.put("one", "value1"); - attributes.put("two", "value2"); - - expect(request.getAttribute(ServletUtil.CURRENT_CONTAINER_ATTRIBUTE_NAME)).andReturn(container); - expect(tModel.getImportedAttributes(container, "myName", "myToName", false, - velocityContext, request, response)).andReturn(attributes); - expect(internalContextAdapter.put("one", "value1")).andReturn("value1"); - expect(internalContextAdapter.put("two", "value2")).andReturn("value2"); - - replay(tModel, servletContext, request, response, velocityContext, container, internalContextAdapter); - initializeModel(); - Renderable renderable = model.execute(request, response, velocityContext, params); - renderable.render(internalContextAdapter, writer); - verify(tModel, servletContext, request, response, velocityContext, container, internalContextAdapter); - } - - /** - * Test method for {@link org.apache.tiles.velocity.template.ImportAttributeVModel - * #execute(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, - * org.apache.velocity.context.Context, java.util.Map)}. - * @throws IOException If something goes wrong. - */ - @Test - public void testExecuteRequest() throws IOException { - HttpServletRequest request = createMock(HttpServletRequest.class); - HttpServletResponse response = createMock(HttpServletResponse.class); - Context velocityContext = createMock(Context.class); - TilesContainer container = createMock(TilesContainer.class); - InternalContextAdapter internalContextAdapter = createMock(InternalContextAdapter.class); - Writer writer = new StringWriter(); - Map params = createParams(); - params.put("scope", "request"); - Map attributes = new HashMap(); - attributes.put("one", "value1"); - attributes.put("two", "value2"); - - expect(request.getAttribute(ServletUtil.CURRENT_CONTAINER_ATTRIBUTE_NAME)).andReturn(container); - expect(tModel.getImportedAttributes(container, "myName", "myToName", false, - velocityContext, request, response)).andReturn(attributes); - request.setAttribute("one", "value1"); - request.setAttribute("two", "value2"); - - replay(tModel, servletContext, request, response, velocityContext, container, internalContextAdapter); - initializeModel(); - Renderable renderable = model.execute(request, response, velocityContext, params); - renderable.render(internalContextAdapter, writer); - verify(tModel, servletContext, request, response, velocityContext, container, internalContextAdapter); - } - - /** - * Test method for {@link org.apache.tiles.velocity.template.ImportAttributeVModel - * #execute(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, - * org.apache.velocity.context.Context, java.util.Map)}. - * @throws IOException If something goes wrong. - */ - @Test - public void testExecuteSession() throws IOException { - HttpServletRequest request = createMock(HttpServletRequest.class); - HttpServletResponse response = createMock(HttpServletResponse.class); - HttpSession session = createMock(HttpSession.class); - Context velocityContext = createMock(Context.class); - TilesContainer container = createMock(TilesContainer.class); - InternalContextAdapter internalContextAdapter = createMock(InternalContextAdapter.class); - Writer writer = new StringWriter(); - Map params = createParams(); - params.put("scope", "session"); - Map attributes = new HashMap(); - attributes.put("one", "value1"); - attributes.put("two", "value2"); - - expect(request.getAttribute(ServletUtil.CURRENT_CONTAINER_ATTRIBUTE_NAME)).andReturn(container); - expect(tModel.getImportedAttributes(container, "myName", "myToName", false, - velocityContext, request, response)).andReturn(attributes); - expect(request.getSession()).andReturn(session).times(2); - session.setAttribute("one", "value1"); - session.setAttribute("two", "value2"); - - replay(tModel, servletContext, request, response, session, velocityContext, container, internalContextAdapter); - initializeModel(); - Renderable renderable = model.execute(request, response, velocityContext, params); - renderable.render(internalContextAdapter, writer); - verify(tModel, servletContext, request, response, session, velocityContext, container, internalContextAdapter); - } - - /** - * Test method for {@link org.apache.tiles.velocity.template.ImportAttributeVModel - * #execute(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, - * org.apache.velocity.context.Context, java.util.Map)}. - * @throws IOException If something goes wrong. - */ - @Test - public void testExecuteApplication() throws IOException { - HttpServletRequest request = createMock(HttpServletRequest.class); - HttpServletResponse response = createMock(HttpServletResponse.class); - Context velocityContext = createMock(Context.class); - TilesContainer container = createMock(TilesContainer.class); - InternalContextAdapter internalContextAdapter = createMock(InternalContextAdapter.class); - Writer writer = new StringWriter(); - Map params = createParams(); - params.put("scope", "application"); - Map attributes = new HashMap(); - attributes.put("one", "value1"); - attributes.put("two", "value2"); - - expect(request.getAttribute(ServletUtil.CURRENT_CONTAINER_ATTRIBUTE_NAME)).andReturn(container); - expect(tModel.getImportedAttributes(container, "myName", "myToName", false, - velocityContext, request, response)).andReturn(attributes); - servletContext.setAttribute("one", "value1"); - servletContext.setAttribute("two", "value2"); - - replay(tModel, servletContext, request, response, velocityContext, container, internalContextAdapter); - initializeModel(); - Renderable renderable = model.execute(request, response, velocityContext, params); - renderable.render(internalContextAdapter, writer); - verify(tModel, servletContext, request, response, velocityContext, container, internalContextAdapter); - } - - /** - * Initializes the model. - */ - private void initializeModel() { - model = new ImportAttributeVModel(tModel, servletContext); - } - - /** - * Creates the parameters to work with the model. - * - * @return The parameters. - */ - private Map createParams() { - Map params = new HashMap(); - params.put("ignore", false); - params.put("name", "myName"); - params.put("toName", "myToName"); - return params; - } -} diff -Nru tiles-2.2.1/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/InsertAttributeDirectiveTest.java tiles-2.2.2/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/InsertAttributeDirectiveTest.java --- tiles-2.2.1/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/InsertAttributeDirectiveTest.java 1970-01-01 01:00:00.000000000 +0100 +++ tiles-2.2.2/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/InsertAttributeDirectiveTest.java 2010-06-17 20:31:47.000000000 +0200 @@ -0,0 +1,156 @@ +/* + * $Id: InsertAttributeDirectiveTest.java 902403 2010-01-23 13:31:17Z apetrelli $ + * + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you 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.tiles.velocity.template; + +import static org.easymock.EasyMock.*; +import static org.easymock.classextension.EasyMock.*; + +import java.io.IOException; +import java.io.Writer; +import java.util.HashMap; +import java.util.Map; + +import javax.servlet.ServletContext; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.apache.tiles.ArrayStack; +import org.apache.tiles.Attribute; +import org.apache.tiles.TilesContainer; +import org.apache.tiles.servlet.context.ServletUtil; +import org.apache.tiles.template.InsertAttributeModel; +import org.apache.velocity.context.InternalContextAdapter; +import org.junit.Before; +import org.junit.Test; + +/** + * Tests {@link InsertAttributeDirective}. + */ +public class InsertAttributeDirectiveTest { + + /** + * The model to test. + */ + private InsertAttributeDirective model; + + /** + * The template model. + */ + private InsertAttributeModel tModel; + + /** + * The attribute value. + */ + private Attribute attribute; + + /** + * Sets up the model to test. + */ + @Before + public void setUp() { + tModel = createMock(InsertAttributeModel.class); + attribute = new Attribute("myAttributeValue"); + } + + /** + * Test method for {@link InsertAttributeDirective#start(InternalContextAdapter, + * Writer, Map, HttpServletRequest, HttpServletResponse, ServletContext)}. + */ + @Test + public void testStart() { + HttpServletRequest request = createMock(HttpServletRequest.class); + HttpServletResponse response = createMock(HttpServletResponse.class); + InternalContextAdapter velocityContext = createMock(InternalContextAdapter.class); + Writer writer = createMock(Writer.class); + ServletContext servletContext = createMock(ServletContext.class); + TilesContainer container = createMock(TilesContainer.class); + Map params = createParams(); + ArrayStack composeStack = new ArrayStack(); + + expect(request.getAttribute(ServletUtil.COMPOSE_STACK_ATTRIBUTE_NAME)) + .andReturn(composeStack); + expect(request.getAttribute(ServletUtil.CURRENT_CONTAINER_ATTRIBUTE_NAME)).andReturn(container); + tModel.start(composeStack, container, false, "myPreparer", "myRole", "myDefaultValue", + "myDefaultValueRole", "myDefaultValueType", "myName", attribute, + velocityContext, request, response, writer); + + replay(tModel, request, response, velocityContext, writer, servletContext, container); + initializeModel(); + model.start(velocityContext, writer, params, request, response, servletContext); + verify(tModel, request, response, velocityContext, writer, servletContext, container); + } + + /** + * Test method for {@link InsertAttributeDirective#end(InternalContextAdapter, + * Writer, Map, HttpServletRequest, HttpServletResponse, ServletContext)}. + * + * @throws IOException If something goes wrong. + */ + @Test + public void testEnd() throws IOException { + HttpServletRequest request = createMock(HttpServletRequest.class); + HttpServletResponse response = createMock(HttpServletResponse.class); + InternalContextAdapter velocityContext = createMock(InternalContextAdapter.class); + Writer writer = createMock(Writer.class); + ServletContext servletContext = createMock(ServletContext.class); + TilesContainer container = createMock(TilesContainer.class); + ArrayStack composeStack = new ArrayStack(); + Map params = createParams(); + + expect(request.getAttribute(ServletUtil.CURRENT_CONTAINER_ATTRIBUTE_NAME)).andReturn(container); + expect(request.getAttribute(ServletUtil.COMPOSE_STACK_ATTRIBUTE_NAME)) + .andReturn(composeStack); + tModel.end(composeStack, container, false, velocityContext, request, response, writer); + + replay(tModel, request, response, velocityContext, writer, servletContext, container); + initializeModel(); + model.end(velocityContext, writer, params, request, response, servletContext); + verify(tModel, request, response, velocityContext, writer, servletContext, container); + } + + /** + * Initializes the model. + */ + private void initializeModel() { + model = new InsertAttributeDirective(tModel); + } + + /** + * Creates the parameters to work with the model. + * + * @return The parameters. + */ + private Map createParams() { + Map params = new HashMap(); + params.put("ignore", false); + params.put("preparer", "myPreparer"); + params.put("role", "myRole"); + params.put("defaultValue", "myDefaultValue"); + params.put("defaultValueRole", "myDefaultValueRole"); + params.put("defaultValueType", "myDefaultValueType"); + params.put("name", "myName"); + params.put("value", attribute); + params.put("role", "myRole"); + params.put("extends", "myExtends"); + return params; + } +} diff -Nru tiles-2.2.1/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/InsertAttributeVModelTest.java tiles-2.2.2/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/InsertAttributeVModelTest.java --- tiles-2.2.1/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/InsertAttributeVModelTest.java 2009-10-14 13:08:10.000000000 +0200 +++ tiles-2.2.2/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/InsertAttributeVModelTest.java 1970-01-01 01:00:00.000000000 +0100 @@ -1,208 +0,0 @@ -/* - * $Id: InsertAttributeVModelTest.java 797765 2009-07-25 13:20:26Z apetrelli $ - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you 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.tiles.velocity.template; - -import static org.easymock.EasyMock.*; -import static org.easymock.classextension.EasyMock.*; -import static org.junit.Assert.*; - -import java.io.IOException; -import java.io.StringWriter; -import java.io.Writer; -import java.util.HashMap; -import java.util.Map; - -import javax.servlet.ServletContext; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; - -import org.apache.tiles.ArrayStack; -import org.apache.tiles.Attribute; -import org.apache.tiles.TilesContainer; -import org.apache.tiles.servlet.context.ServletUtil; -import org.apache.tiles.template.InsertAttributeModel; -import org.apache.velocity.context.Context; -import org.apache.velocity.context.InternalContextAdapter; -import org.apache.velocity.runtime.Renderable; -import org.junit.Before; -import org.junit.Test; - -/** - * Tests {@link InsertAttributeVModel}. - */ -public class InsertAttributeVModelTest { - - /** - * The attribute key that will be used to store the parameter map, to use across Velocity tool calls. - */ - private static final String PARAMETER_MAP_STACK_KEY = "org.apache.tiles.velocity.PARAMETER_MAP_STACK"; - - /** - * The model to test. - */ - private InsertAttributeVModel model; - - /** - * The template model. - */ - private InsertAttributeModel tModel; - - /** - * The servlet context. - */ - private ServletContext servletContext; - - /** - * The attribute value. - */ - private Attribute attribute; - - /** - * Sets up the model to test. - */ - @Before - public void setUp() { - tModel = createMock(InsertAttributeModel.class); - servletContext = createMock(ServletContext.class); - attribute = new Attribute("myAttributeValue"); - } - - /** - * Test method for {@link org.apache.tiles.velocity.template.InsertAttributeVModel - * #execute(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, - * org.apache.velocity.context.Context, java.util.Map)}. - * @throws IOException If something goes wrong. - */ - @Test - public void testExecute() throws IOException { - HttpServletRequest request = createMock(HttpServletRequest.class); - HttpServletResponse response = createMock(HttpServletResponse.class); - Context velocityContext = createMock(Context.class); - TilesContainer container = createMock(TilesContainer.class); - InternalContextAdapter internalContextAdapter = createMock(InternalContextAdapter.class); - Writer writer = new StringWriter(); - attribute = new Attribute("myAttributeValue"); - Map params = createParams(); - - expect(request.getAttribute(ServletUtil.CURRENT_CONTAINER_ATTRIBUTE_NAME)).andReturn(container); - tModel.execute(container, false, "myPreparer", "myRole", "myDefaultValue", - "myDefaultValueRole", "myDefaultValueType", "myName", attribute, - velocityContext, request, response, writer); - - replay(tModel, servletContext, request, response, velocityContext, container, internalContextAdapter); - initializeModel(); - Renderable renderable = model.execute(request, response, velocityContext, params); - renderable.render(internalContextAdapter, writer); - verify(tModel, servletContext, request, response, velocityContext, container, internalContextAdapter); - } - - /** - * Test method for {@link org.apache.tiles.velocity.template.InsertAttributeVModel - * #start(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, - * org.apache.velocity.context.Context, java.util.Map)}. - */ - @Test - public void testStart() { - HttpServletRequest request = createMock(HttpServletRequest.class); - HttpServletResponse response = createMock(HttpServletResponse.class); - Context velocityContext = createMock(Context.class); - TilesContainer container = createMock(TilesContainer.class); - Map params = createParams(); - ArrayStack composeStack = new ArrayStack(); - ArrayStack> paramStack = new ArrayStack>(); - - expect(request.getAttribute(ServletUtil.COMPOSE_STACK_ATTRIBUTE_NAME)) - .andReturn(composeStack); - expect(request.getAttribute(ServletUtil.CURRENT_CONTAINER_ATTRIBUTE_NAME)).andReturn(container); - expect(velocityContext.get(PARAMETER_MAP_STACK_KEY)).andReturn(paramStack); - tModel.start(composeStack, container, false, "myPreparer", "myRole", "myDefaultValue", - "myDefaultValueRole", "myDefaultValueType", "myName", attribute, - velocityContext, request, response); - - replay(tModel, servletContext, container, request, response, velocityContext); - initializeModel(); - model.start(request, response, velocityContext, params); - assertEquals(1, paramStack.size()); - assertEquals(params, paramStack.peek()); - verify(tModel, servletContext, container, request, response, velocityContext); - } - - /** - * Test method for {@link org.apache.tiles.velocity.template.InsertAttributeVModel - * #end(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, - * org.apache.velocity.context.Context)}. - * @throws IOException If something goes wrong. - */ - @Test - public void testEnd() throws IOException { - HttpServletRequest request = createMock(HttpServletRequest.class); - HttpServletResponse response = createMock(HttpServletResponse.class); - Context velocityContext = createMock(Context.class); - TilesContainer container = createMock(TilesContainer.class); - InternalContextAdapter internalContextAdapter = createMock(InternalContextAdapter.class); - Writer writer = new StringWriter(); - ArrayStack composeStack = new ArrayStack(); - Map params = createParams(); - ArrayStack> paramStack = new ArrayStack>(); - paramStack.push(params); - - expect(request.getAttribute(ServletUtil.CURRENT_CONTAINER_ATTRIBUTE_NAME)).andReturn(container); - expect(request.getAttribute(ServletUtil.COMPOSE_STACK_ATTRIBUTE_NAME)) - .andReturn(composeStack); - expect(velocityContext.get(PARAMETER_MAP_STACK_KEY)).andReturn(paramStack); - tModel.end(composeStack, container, false, velocityContext, request, response, writer); - - replay(tModel, servletContext, request, response, velocityContext, container, internalContextAdapter); - initializeModel(); - Renderable renderable = model.end(request, response, velocityContext); - renderable.render(internalContextAdapter, writer); - assertTrue(paramStack.isEmpty()); - verify(tModel, servletContext, request, response, velocityContext, container, internalContextAdapter); - } - - /** - * Initializes the model. - */ - private void initializeModel() { - model = new InsertAttributeVModel(tModel, servletContext); - } - - /** - * Creates the parameters to work with the model. - * - * @return The parameters. - */ - private Map createParams() { - Map params = new HashMap(); - params.put("ignore", false); - params.put("preparer", "myPreparer"); - params.put("role", "myRole"); - params.put("defaultValue", "myDefaultValue"); - params.put("defaultValueRole", "myDefaultValueRole"); - params.put("defaultValueType", "myDefaultValueType"); - params.put("name", "myName"); - params.put("value", attribute); - params.put("role", "myRole"); - params.put("extends", "myExtends"); - return params; - } -} diff -Nru tiles-2.2.1/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/InsertDefinitionDirectiveTest.java tiles-2.2.2/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/InsertDefinitionDirectiveTest.java --- tiles-2.2.1/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/InsertDefinitionDirectiveTest.java 1970-01-01 01:00:00.000000000 +0100 +++ tiles-2.2.2/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/InsertDefinitionDirectiveTest.java 2010-06-17 20:31:47.000000000 +0200 @@ -0,0 +1,138 @@ +/* + * $Id: InsertDefinitionDirectiveTest.java 902403 2010-01-23 13:31:17Z apetrelli $ + * + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you 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.tiles.velocity.template; + +import static org.easymock.EasyMock.*; +import static org.easymock.classextension.EasyMock.*; + +import java.io.Writer; +import java.util.HashMap; +import java.util.Map; + +import javax.servlet.ServletContext; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.apache.tiles.ArrayStack; +import org.apache.tiles.TilesContainer; +import org.apache.tiles.servlet.context.ServletUtil; +import org.apache.tiles.template.InsertDefinitionModel; +import org.apache.velocity.context.InternalContextAdapter; +import org.junit.Before; +import org.junit.Test; + +/** + * Tests {@link InsertDefinitionDirective}. + */ +public class InsertDefinitionDirectiveTest { + + /** + * The model to test. + */ + private InsertDefinitionDirective model; + + /** + * The template model. + */ + private InsertDefinitionModel tModel; + + /** + * Sets up the model to test. + */ + @Before + public void setUp() { + tModel = createMock(InsertDefinitionModel.class); + } + + /** + * Test method for {@link InsertDefinitionDirective#start(InternalContextAdapter, + * Writer, Map, HttpServletRequest, HttpServletResponse, ServletContext)}. + */ + @Test + public void testStart() { + HttpServletRequest request = createMock(HttpServletRequest.class); + HttpServletResponse response = createMock(HttpServletResponse.class); + InternalContextAdapter velocityContext = createMock(InternalContextAdapter.class); + Writer writer = createMock(Writer.class); + ServletContext servletContext = createMock(ServletContext.class); + TilesContainer container = createMock(TilesContainer.class); + Map params = createParams(); + + expect(request.getAttribute(ServletUtil.CURRENT_CONTAINER_ATTRIBUTE_NAME)).andReturn(container); + tModel.start(container, velocityContext, request, response); + + replay(tModel, request, response, velocityContext, writer, servletContext, container); + initializeModel(); + model.start(velocityContext, writer, params, request, response, servletContext); + verify(tModel, request, response, velocityContext, writer, servletContext, container); + } + + /** + * Test method for {@link InsertDefinitionDirective#end(InternalContextAdapter, + * Writer, Map, HttpServletRequest, HttpServletResponse, ServletContext)}. + */ + @Test + public void testEnd() { + HttpServletRequest request = createMock(HttpServletRequest.class); + HttpServletResponse response = createMock(HttpServletResponse.class); + InternalContextAdapter velocityContext = createMock(InternalContextAdapter.class); + Writer writer = createMock(Writer.class); + ServletContext servletContext = createMock(ServletContext.class); + TilesContainer container = createMock(TilesContainer.class); + Map params = createParams(); + ArrayStack> paramStack = new ArrayStack>(); + paramStack.push(params); + + expect(request.getAttribute(ServletUtil.CURRENT_CONTAINER_ATTRIBUTE_NAME)).andReturn(container); + tModel.end(container, "myDefinitionName", "myTemplate", + "myTemplateType", "myTemplateExpression", "myRole", + "myPreparer", velocityContext, request, response, writer); + + replay(tModel, request, response, velocityContext, writer, servletContext, container); + initializeModel(); + model.end(velocityContext, writer, params, request, response, servletContext); + verify(tModel, request, response, velocityContext, writer, servletContext, container); + } + + /** + * Initializes the model. + */ + private void initializeModel() { + model = new InsertDefinitionDirective(tModel); + } + + /** + * Creates the parameters to work with the model. + * + * @return The parameters. + */ + private Map createParams() { + Map params = new HashMap(); + params.put("name", "myDefinitionName"); + params.put("template", "myTemplate"); + params.put("templateType", "myTemplateType"); + params.put("templateExpression", "myTemplateExpression"); + params.put("role", "myRole"); + params.put("preparer", "myPreparer"); + return params; + } +} diff -Nru tiles-2.2.1/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/InsertDefinitionVModelTest.java tiles-2.2.2/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/InsertDefinitionVModelTest.java --- tiles-2.2.1/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/InsertDefinitionVModelTest.java 2009-10-14 13:08:10.000000000 +0200 +++ tiles-2.2.2/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/InsertDefinitionVModelTest.java 1970-01-01 01:00:00.000000000 +0100 @@ -1,190 +0,0 @@ -/* - * $Id: InsertDefinitionVModelTest.java 797765 2009-07-25 13:20:26Z apetrelli $ - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you 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.tiles.velocity.template; - -import static org.easymock.EasyMock.*; -import static org.easymock.classextension.EasyMock.*; -import static org.junit.Assert.*; - -import java.io.IOException; -import java.io.StringWriter; -import java.io.Writer; -import java.util.HashMap; -import java.util.Map; - -import javax.servlet.ServletContext; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; - -import org.apache.tiles.ArrayStack; -import org.apache.tiles.TilesContainer; -import org.apache.tiles.servlet.context.ServletUtil; -import org.apache.tiles.template.InsertDefinitionModel; -import org.apache.velocity.context.Context; -import org.apache.velocity.context.InternalContextAdapter; -import org.apache.velocity.runtime.Renderable; -import org.junit.Before; -import org.junit.Test; - -/** - * Tests {@link InsertDefinitionVModel}. - */ -public class InsertDefinitionVModelTest { - - /** - * The attribute key that will be used to store the parameter map, to use across Velocity tool calls. - */ - private static final String PARAMETER_MAP_STACK_KEY = "org.apache.tiles.velocity.PARAMETER_MAP_STACK"; - - /** - * The model to test. - */ - private InsertDefinitionVModel model; - - /** - * The template model. - */ - private InsertDefinitionModel tModel; - - /** - * The servlet context. - */ - private ServletContext servletContext; - - /** - * Sets up the model to test. - */ - @Before - public void setUp() { - tModel = createMock(InsertDefinitionModel.class); - servletContext = createMock(ServletContext.class); - } - - /** - * Test method for {@link org.apache.tiles.velocity.template.InsertDefinitionVModel - * #execute(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, - * org.apache.velocity.context.Context, java.util.Map)}. - * @throws IOException If something goes wrong. - */ - @Test - public void testExecute() throws IOException { - HttpServletRequest request = createMock(HttpServletRequest.class); - HttpServletResponse response = createMock(HttpServletResponse.class); - Context velocityContext = createMock(Context.class); - TilesContainer container = createMock(TilesContainer.class); - InternalContextAdapter internalContextAdapter = createMock(InternalContextAdapter.class); - Writer writer = new StringWriter(); - Map params = createParams(); - - expect(request.getAttribute(ServletUtil.CURRENT_CONTAINER_ATTRIBUTE_NAME)).andReturn(container); - tModel.execute(container, "myDefinitionName", "myTemplate", - "myTemplateType", "myTemplateExpression", "myRole", - "myPreparer", velocityContext, request, response, writer); - - replay(tModel, servletContext, request, response, velocityContext, container, internalContextAdapter); - initializeModel(); - Renderable renderable = model.execute(request, response, velocityContext, params); - renderable.render(internalContextAdapter, writer); - verify(tModel, servletContext, request, response, velocityContext, container, internalContextAdapter); - } - - /** - * Test method for {@link org.apache.tiles.velocity.template.InsertDefinitionVModel - * #start(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, - * org.apache.velocity.context.Context, java.util.Map)}. - */ - @Test - public void testStart() { - HttpServletRequest request = createMock(HttpServletRequest.class); - HttpServletResponse response = createMock(HttpServletResponse.class); - Context velocityContext = createMock(Context.class); - TilesContainer container = createMock(TilesContainer.class); - Map params = createParams(); - ArrayStack> paramStack = new ArrayStack>(); - - expect(request.getAttribute(ServletUtil.CURRENT_CONTAINER_ATTRIBUTE_NAME)).andReturn(container); - expect(velocityContext.get(PARAMETER_MAP_STACK_KEY)).andReturn(paramStack); - tModel.start(container, velocityContext, request, response); - - replay(tModel, servletContext, container, request, response, velocityContext); - initializeModel(); - model.start(request, response, velocityContext, params); - assertEquals(1, paramStack.size()); - assertEquals(params, paramStack.peek()); - verify(tModel, servletContext, container, request, response, velocityContext); - } - - /** - * Test method for {@link org.apache.tiles.velocity.template.InsertDefinitionVModel - * #end(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, - * org.apache.velocity.context.Context)}. - * @throws IOException If something goes wrong. - */ - @Test - public void testEnd() throws IOException { - HttpServletRequest request = createMock(HttpServletRequest.class); - HttpServletResponse response = createMock(HttpServletResponse.class); - Context velocityContext = createMock(Context.class); - TilesContainer container = createMock(TilesContainer.class); - InternalContextAdapter internalContextAdapter = createMock(InternalContextAdapter.class); - Writer writer = new StringWriter(); - Map params = createParams(); - ArrayStack> paramStack = new ArrayStack>(); - paramStack.push(params); - - expect(request.getAttribute(ServletUtil.CURRENT_CONTAINER_ATTRIBUTE_NAME)).andReturn(container); - expect(velocityContext.get(PARAMETER_MAP_STACK_KEY)).andReturn(paramStack); - tModel.end(container, "myDefinitionName", "myTemplate", - "myTemplateType", "myTemplateExpression", "myRole", - "myPreparer", velocityContext, request, response, writer); - - replay(tModel, servletContext, request, response, velocityContext, container, internalContextAdapter); - initializeModel(); - Renderable renderable = model.end(request, response, velocityContext); - renderable.render(internalContextAdapter, writer); - assertTrue(paramStack.isEmpty()); - verify(tModel, servletContext, request, response, velocityContext, container, internalContextAdapter); - } - - /** - * Initializes the model. - */ - private void initializeModel() { - model = new InsertDefinitionVModel(tModel, servletContext); - } - - /** - * Creates the parameters to work with the model. - * - * @return The parameters. - */ - private Map createParams() { - Map params = new HashMap(); - params.put("name", "myDefinitionName"); - params.put("template", "myTemplate"); - params.put("templateType", "myTemplateType"); - params.put("templateExpression", "myTemplateExpression"); - params.put("role", "myRole"); - params.put("preparer", "myPreparer"); - return params; - } -} diff -Nru tiles-2.2.1/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/InsertTemplateDirectiveTest.java tiles-2.2.2/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/InsertTemplateDirectiveTest.java --- tiles-2.2.1/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/InsertTemplateDirectiveTest.java 1970-01-01 01:00:00.000000000 +0100 +++ tiles-2.2.2/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/InsertTemplateDirectiveTest.java 2010-06-17 20:31:47.000000000 +0200 @@ -0,0 +1,134 @@ +/* + * $Id: InsertTemplateDirectiveTest.java 902403 2010-01-23 13:31:17Z apetrelli $ + * + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you 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.tiles.velocity.template; + +import static org.easymock.EasyMock.*; +import static org.easymock.classextension.EasyMock.*; + +import java.io.Writer; +import java.util.HashMap; +import java.util.Map; + +import javax.servlet.ServletContext; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.apache.tiles.TilesContainer; +import org.apache.tiles.servlet.context.ServletUtil; +import org.apache.tiles.template.InsertTemplateModel; +import org.apache.velocity.context.InternalContextAdapter; +import org.junit.Before; +import org.junit.Test; + +/** + * Tests {@link InsertTemplateDirective}. + */ +public class InsertTemplateDirectiveTest { + + /** + * The model to test. + */ + private InsertTemplateDirective model; + + /** + * The template model. + */ + private InsertTemplateModel tModel; + + /** + * Sets up the model to test. + */ + @Before + public void setUp() { + tModel = createMock(InsertTemplateModel.class); + } + + /** + * Test method for {@link InsertTemplateDirective#start(InternalContextAdapter, + * Writer, Map, HttpServletRequest, HttpServletResponse, ServletContext)}. + */ + @Test + public void testStart() { + HttpServletRequest request = createMock(HttpServletRequest.class); + HttpServletResponse response = createMock(HttpServletResponse.class); + InternalContextAdapter velocityContext = createMock(InternalContextAdapter.class); + Writer writer = createMock(Writer.class); + ServletContext servletContext = createMock(ServletContext.class); + TilesContainer container = createMock(TilesContainer.class); + Map params = createParams(); + + expect(request.getAttribute(ServletUtil.CURRENT_CONTAINER_ATTRIBUTE_NAME)).andReturn(container); + tModel.start(container, velocityContext, request, response); + + replay(tModel, request, response, velocityContext, writer, servletContext, container); + initializeModel(); + model.start(velocityContext, writer, params, request, response, servletContext); + verify(tModel, request, response, velocityContext, writer, servletContext, container); + } + + /** + * Test method for {@link InsertTemplateDirective#end(InternalContextAdapter, + * Writer, Map, HttpServletRequest, HttpServletResponse, ServletContext)}. + */ + @Test + public void testEnd() { + HttpServletRequest request = createMock(HttpServletRequest.class); + HttpServletResponse response = createMock(HttpServletResponse.class); + InternalContextAdapter velocityContext = createMock(InternalContextAdapter.class); + Writer writer = createMock(Writer.class); + ServletContext servletContext = createMock(ServletContext.class); + TilesContainer container = createMock(TilesContainer.class); + Map params = createParams(); + + expect(request.getAttribute(ServletUtil.CURRENT_CONTAINER_ATTRIBUTE_NAME)).andReturn(container); + tModel.end(container, "myTemplate", "myTemplateType", + "myTemplateExpression", "myRole", + "myPreparer", velocityContext, request, response, writer); + + replay(tModel, request, response, velocityContext, writer, servletContext, container); + initializeModel(); + model.end(velocityContext, writer, params, request, response, servletContext); + verify(tModel, request, response, velocityContext, writer, servletContext, container); + } + + /** + * Initializes the model. + */ + private void initializeModel() { + model = new InsertTemplateDirective(tModel); + } + + /** + * Creates the parameters to work with the model. + * + * @return The parameters. + */ + private Map createParams() { + Map params = new HashMap(); + params.put("template", "myTemplate"); + params.put("templateType", "myTemplateType"); + params.put("templateExpression", "myTemplateExpression"); + params.put("role", "myRole"); + params.put("preparer", "myPreparer"); + return params; + } +} diff -Nru tiles-2.2.1/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/InsertTemplateVModelTest.java tiles-2.2.2/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/InsertTemplateVModelTest.java --- tiles-2.2.1/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/InsertTemplateVModelTest.java 2009-10-14 13:08:10.000000000 +0200 +++ tiles-2.2.2/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/InsertTemplateVModelTest.java 1970-01-01 01:00:00.000000000 +0100 @@ -1,189 +0,0 @@ -/* - * $Id: InsertTemplateVModelTest.java 797765 2009-07-25 13:20:26Z apetrelli $ - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you 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.tiles.velocity.template; - -import static org.easymock.EasyMock.*; -import static org.easymock.classextension.EasyMock.*; -import static org.junit.Assert.*; - -import java.io.IOException; -import java.io.StringWriter; -import java.io.Writer; -import java.util.HashMap; -import java.util.Map; - -import javax.servlet.ServletContext; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; - -import org.apache.tiles.ArrayStack; -import org.apache.tiles.TilesContainer; -import org.apache.tiles.servlet.context.ServletUtil; -import org.apache.tiles.template.InsertTemplateModel; -import org.apache.velocity.context.Context; -import org.apache.velocity.context.InternalContextAdapter; -import org.apache.velocity.runtime.Renderable; -import org.junit.Before; -import org.junit.Test; - -/** - * Tests {@link InsertTemplateVModel}. - */ -public class InsertTemplateVModelTest { - - /** - * The attribute key that will be used to store the parameter map, to use across Velocity tool calls. - */ - private static final String PARAMETER_MAP_STACK_KEY = "org.apache.tiles.velocity.PARAMETER_MAP_STACK"; - - /** - * The model to test. - */ - private InsertTemplateVModel model; - - /** - * The template model. - */ - private InsertTemplateModel tModel; - - /** - * The servlet context. - */ - private ServletContext servletContext; - - /** - * Sets up the model to test. - */ - @Before - public void setUp() { - tModel = createMock(InsertTemplateModel.class); - servletContext = createMock(ServletContext.class); - } - - /** - * Test method for {@link org.apache.tiles.velocity.template.InsertTemplateVModel - * #execute(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, - * org.apache.velocity.context.Context, java.util.Map)}. - * @throws IOException If something goes wrong. - */ - @Test - public void testExecute() throws IOException { - HttpServletRequest request = createMock(HttpServletRequest.class); - HttpServletResponse response = createMock(HttpServletResponse.class); - Context velocityContext = createMock(Context.class); - TilesContainer container = createMock(TilesContainer.class); - InternalContextAdapter internalContextAdapter = createMock(InternalContextAdapter.class); - Writer writer = new StringWriter(); - Map params = createParams(); - - expect(request.getAttribute(ServletUtil.CURRENT_CONTAINER_ATTRIBUTE_NAME)).andReturn(container); - tModel.execute(container, "myTemplate", "myTemplateType", - "myTemplateExpression", "myRole", "myPreparer", - velocityContext, request, response, writer); - - replay(tModel, servletContext, request, response, velocityContext, container, internalContextAdapter); - initializeModel(); - Renderable renderable = model.execute(request, response, velocityContext, params); - renderable.render(internalContextAdapter, writer); - verify(tModel, servletContext, request, response, velocityContext, container, internalContextAdapter); - } - - /** - * Test method for {@link org.apache.tiles.velocity.template.InsertTemplateVModel - * #start(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, - * org.apache.velocity.context.Context, java.util.Map)}. - */ - @Test - public void testStart() { - HttpServletRequest request = createMock(HttpServletRequest.class); - HttpServletResponse response = createMock(HttpServletResponse.class); - Context velocityContext = createMock(Context.class); - TilesContainer container = createMock(TilesContainer.class); - Map params = createParams(); - ArrayStack> paramStack = new ArrayStack>(); - - expect(request.getAttribute(ServletUtil.CURRENT_CONTAINER_ATTRIBUTE_NAME)).andReturn(container); - expect(velocityContext.get(PARAMETER_MAP_STACK_KEY)).andReturn(paramStack); - tModel.start(container, velocityContext, request, response); - - replay(tModel, servletContext, container, request, response, velocityContext); - initializeModel(); - model.start(request, response, velocityContext, params); - assertEquals(1, paramStack.size()); - assertEquals(params, paramStack.peek()); - verify(tModel, servletContext, container, request, response, velocityContext); - } - - /** - * Test method for {@link org.apache.tiles.velocity.template.InsertTemplateVModel - * #end(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, - * org.apache.velocity.context.Context)}. - * @throws IOException If something goes wrong. - */ - @Test - public void testEnd() throws IOException { - HttpServletRequest request = createMock(HttpServletRequest.class); - HttpServletResponse response = createMock(HttpServletResponse.class); - Context velocityContext = createMock(Context.class); - TilesContainer container = createMock(TilesContainer.class); - InternalContextAdapter internalContextAdapter = createMock(InternalContextAdapter.class); - Writer writer = new StringWriter(); - Map params = createParams(); - ArrayStack> paramStack = new ArrayStack>(); - paramStack.push(params); - - expect(request.getAttribute(ServletUtil.CURRENT_CONTAINER_ATTRIBUTE_NAME)).andReturn(container); - expect(velocityContext.get(PARAMETER_MAP_STACK_KEY)).andReturn(paramStack); - tModel.end(container, "myTemplate", "myTemplateType", - "myTemplateExpression", "myRole", - "myPreparer", velocityContext, request, response, writer); - - replay(tModel, servletContext, request, response, velocityContext, container, internalContextAdapter); - initializeModel(); - Renderable renderable = model.end(request, response, velocityContext); - renderable.render(internalContextAdapter, writer); - assertTrue(paramStack.isEmpty()); - verify(tModel, servletContext, request, response, velocityContext, container, internalContextAdapter); - } - - /** - * Initializes the model. - */ - private void initializeModel() { - model = new InsertTemplateVModel(tModel, servletContext); - } - - /** - * Creates the parameters to work with the model. - * - * @return The parameters. - */ - private Map createParams() { - Map params = new HashMap(); - params.put("template", "myTemplate"); - params.put("templateType", "myTemplateType"); - params.put("templateExpression", "myTemplateExpression"); - params.put("role", "myRole"); - params.put("preparer", "myPreparer"); - return params; - } -} diff -Nru tiles-2.2.1/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/PutAttributeDirectiveTest.java tiles-2.2.2/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/PutAttributeDirectiveTest.java --- tiles-2.2.1/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/PutAttributeDirectiveTest.java 1970-01-01 01:00:00.000000000 +0100 +++ tiles-2.2.2/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/PutAttributeDirectiveTest.java 2010-06-17 20:31:47.000000000 +0200 @@ -0,0 +1,142 @@ +/* + * $Id: PutAttributeDirectiveTest.java 902403 2010-01-23 13:31:17Z apetrelli $ + * + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you 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.tiles.velocity.template; + +import static org.easymock.EasyMock.*; +import static org.easymock.classextension.EasyMock.*; + +import java.io.Writer; +import java.util.HashMap; +import java.util.Map; + +import javax.servlet.ServletContext; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.apache.tiles.ArrayStack; +import org.apache.tiles.TilesContainer; +import org.apache.tiles.servlet.context.ServletUtil; +import org.apache.tiles.template.PutAttributeModel; +import org.apache.velocity.context.InternalContextAdapter; +import org.junit.Before; +import org.junit.Test; + +/** + * Tests {@link PutAttributeDirective}. + */ +public class PutAttributeDirectiveTest { + + /** + * The model to test. + */ + private PutAttributeDirective model; + + /** + * The template model. + */ + private PutAttributeModel tModel; + + /** + * Sets up the model to test. + */ + @Before + public void setUp() { + tModel = createMock(PutAttributeModel.class); + } + + /** + * Test method for {@link PutAttributeDirective#start(InternalContextAdapter, + * Writer, Map, HttpServletRequest, HttpServletResponse, ServletContext)}. + */ + @Test + public void testStart() { + HttpServletRequest request = createMock(HttpServletRequest.class); + HttpServletResponse response = createMock(HttpServletResponse.class); + InternalContextAdapter velocityContext = createMock(InternalContextAdapter.class); + Writer writer = createMock(Writer.class); + ServletContext servletContext = createMock(ServletContext.class); + Map params = createParams(); + ArrayStack composeStack = new ArrayStack(); + + expect(request.getAttribute(ServletUtil.COMPOSE_STACK_ATTRIBUTE_NAME)) + .andReturn(composeStack); + tModel.start(composeStack); + + replay(tModel, request, response, velocityContext, writer, servletContext); + initializeModel(); + model.start(velocityContext, writer, params, request, response, servletContext); + verify(tModel, request, response, velocityContext, writer, servletContext); + } + + /** + * Test method for {@link PutAttributeDirective#end(InternalContextAdapter, + * Writer, Map, String, HttpServletRequest, HttpServletResponse, ServletContext)}. + */ + @Test + public void testEnd() { + HttpServletRequest request = createMock(HttpServletRequest.class); + HttpServletResponse response = createMock(HttpServletResponse.class); + InternalContextAdapter velocityContext = createMock(InternalContextAdapter.class); + Writer writer = createMock(Writer.class); + ServletContext servletContext = createMock(ServletContext.class); + TilesContainer container = createMock(TilesContainer.class); + Map params = createParams(); + ArrayStack composeStack = new ArrayStack(); + ArrayStack> parameterMapStack = new ArrayStack>(); + parameterMapStack.push(params); + + expect(request.getAttribute(ServletUtil.CURRENT_CONTAINER_ATTRIBUTE_NAME)).andReturn(container); + expect(request.getAttribute(ServletUtil.COMPOSE_STACK_ATTRIBUTE_NAME)) + .andReturn(composeStack); + tModel.end(container, composeStack, "myName", "myValue", + "myExpression", "myBody", "myRole", "myType", + false, velocityContext, request, response, writer); + + replay(tModel, request, response, velocityContext, writer, servletContext, container); + initializeModel(); + model.end(velocityContext, writer, params, "myBody", request, response, servletContext); + verify(tModel, request, response, velocityContext, writer, servletContext, container); + } + + /** + * Creates the parameters to work with the model. + * + * @return The parameters. + */ + private Map createParams() { + Map params = new HashMap(); + params.put("name", "myName"); + params.put("value", "myValue"); + params.put("expression", "myExpression"); + params.put("role", "myRole"); + params.put("type", "myType"); + params.put("cascade", false); + return params; + } + + /** + * Initializes the model. + */ + private void initializeModel() { + model = new PutAttributeDirective(tModel); + } +} diff -Nru tiles-2.2.1/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/PutAttributeVModelTest.java tiles-2.2.2/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/PutAttributeVModelTest.java --- tiles-2.2.1/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/PutAttributeVModelTest.java 2009-10-14 13:08:10.000000000 +0200 +++ tiles-2.2.2/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/PutAttributeVModelTest.java 1970-01-01 01:00:00.000000000 +0100 @@ -1,185 +0,0 @@ -/* - * $Id: PutAttributeVModelTest.java 797765 2009-07-25 13:20:26Z apetrelli $ - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you 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.tiles.velocity.template; - -import static org.easymock.EasyMock.*; -import static org.easymock.classextension.EasyMock.*; -import static org.junit.Assert.*; - -import java.util.HashMap; -import java.util.Map; - -import javax.servlet.ServletContext; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; - -import org.apache.tiles.ArrayStack; -import org.apache.tiles.TilesContainer; -import org.apache.tiles.servlet.context.ServletUtil; -import org.apache.tiles.template.PutAttributeModel; -import org.apache.tiles.velocity.context.VelocityUtil; -import org.apache.velocity.context.Context; -import org.junit.Before; -import org.junit.Test; - -/** - * Tests {@link PutAttributeVModel}. - */ -public class PutAttributeVModelTest { - - /** - * The attribute key that will be used to store the parameter map, to use across Velocity tool calls. - */ - private static final String PARAMETER_MAP_STACK_KEY = "org.apache.tiles.velocity.PARAMETER_MAP_STACK"; - - /** - * The model to test. - */ - private PutAttributeVModel model; - - /** - * The template model. - */ - private PutAttributeModel tModel; - - /** - * The servlet context. - */ - private ServletContext servletContext; - - /** - * Sets up the model to test. - */ - @Before - public void setUp() { - tModel = createMock(PutAttributeModel.class); - servletContext = createMock(ServletContext.class); - } - - /** - * Test method for {@link org.apache.tiles.velocity.template.PutAttributeVModel - * #execute(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, - * org.apache.velocity.context.Context, java.util.Map)}. - */ - @Test - public void testExecute() { - HttpServletRequest request = createMock(HttpServletRequest.class); - HttpServletResponse response = createMock(HttpServletResponse.class); - Context velocityContext = createMock(Context.class); - TilesContainer container = createMock(TilesContainer.class); - Map params = createParams(); - ArrayStack composeStack = new ArrayStack(); - - expect(request.getAttribute(ServletUtil.CURRENT_CONTAINER_ATTRIBUTE_NAME)).andReturn(container); - expect(request.getAttribute(ServletUtil.COMPOSE_STACK_ATTRIBUTE_NAME)) - .andReturn(composeStack); - tModel.execute(container, composeStack, "myName", "myValue", - "myExpression", null, "myRole", "myType", - false, velocityContext, request, response); - - replay(tModel, container, servletContext, request, response, velocityContext); - initializeModel(); - assertEquals(VelocityUtil.EMPTY_RENDERABLE, model.execute(request, response, velocityContext, params)); - verify(tModel, container, servletContext, request, response, velocityContext); - } - - /** - * Test method for {@link org.apache.tiles.velocity.template.PutAttributeVModel - * #start(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, - * org.apache.velocity.context.Context, java.util.Map)}. - */ - @Test - public void testStart() { - HttpServletRequest request = createMock(HttpServletRequest.class); - HttpServletResponse response = createMock(HttpServletResponse.class); - Context velocityContext = createMock(Context.class); - Map params = createParams(); - ArrayStack composeStack = new ArrayStack(); - ArrayStack> parameterMapStack = new ArrayStack>(); - - expect(request.getAttribute(ServletUtil.COMPOSE_STACK_ATTRIBUTE_NAME)) - .andReturn(composeStack); - expect(velocityContext.get(PARAMETER_MAP_STACK_KEY)).andReturn(parameterMapStack); - tModel.start(composeStack); - - replay(tModel, servletContext, request, response, velocityContext); - initializeModel(); - model.start(request, response, velocityContext, params); - assertEquals(1, parameterMapStack.size()); - assertEquals(params, parameterMapStack.peek()); - verify(tModel, servletContext, request, response, velocityContext); - } - - /** - * Test method for {@link org.apache.tiles.velocity.template.PutAttributeVModel - * #end(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, - * org.apache.velocity.context.Context)}. - */ - @Test - public void testEnd() { - HttpServletRequest request = createMock(HttpServletRequest.class); - HttpServletResponse response = createMock(HttpServletResponse.class); - Context velocityContext = createMock(Context.class); - TilesContainer container = createMock(TilesContainer.class); - Map params = createParams(); - ArrayStack composeStack = new ArrayStack(); - ArrayStack> parameterMapStack = new ArrayStack>(); - parameterMapStack.push(params); - - expect(request.getAttribute(ServletUtil.CURRENT_CONTAINER_ATTRIBUTE_NAME)).andReturn(container); - expect(request.getAttribute(ServletUtil.COMPOSE_STACK_ATTRIBUTE_NAME)) - .andReturn(composeStack); - expect(velocityContext.get(PARAMETER_MAP_STACK_KEY)).andReturn(parameterMapStack); - tModel.end(container, composeStack, "myName", "myValue", - "myExpression", null, "myRole", "myType", - false, velocityContext, request, response); - - replay(tModel, container, servletContext, request, response, velocityContext); - initializeModel(); - assertEquals(VelocityUtil.EMPTY_RENDERABLE, model.end(request, response, velocityContext)); - assertTrue(parameterMapStack.isEmpty()); - verify(tModel, container, servletContext, request, response, velocityContext); - } - - /** - * Creates the parameters to work with the model. - * - * @return The parameters. - */ - private Map createParams() { - Map params = new HashMap(); - params.put("name", "myName"); - params.put("value", "myValue"); - params.put("expression", "myExpression"); - params.put("role", "myRole"); - params.put("type", "myType"); - params.put("cascade", false); - return params; - } - - /** - * Initializes the model. - */ - private void initializeModel() { - model = new PutAttributeVModel(tModel, servletContext); - } -} diff -Nru tiles-2.2.1/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/PutListAttributeDirectiveTest.java tiles-2.2.2/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/PutListAttributeDirectiveTest.java --- tiles-2.2.1/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/PutListAttributeDirectiveTest.java 1970-01-01 01:00:00.000000000 +0100 +++ tiles-2.2.2/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/PutListAttributeDirectiveTest.java 2010-06-17 20:31:47.000000000 +0200 @@ -0,0 +1,136 @@ +/* + * $Id: PutListAttributeDirectiveTest.java 902403 2010-01-23 13:31:17Z apetrelli $ + * + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you 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.tiles.velocity.template; + +import static org.easymock.EasyMock.*; +import static org.easymock.classextension.EasyMock.*; + +import java.io.Writer; +import java.util.HashMap; +import java.util.Map; + +import javax.servlet.ServletContext; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.apache.tiles.ArrayStack; +import org.apache.tiles.TilesContainer; +import org.apache.tiles.servlet.context.ServletUtil; +import org.apache.tiles.template.PutListAttributeModel; +import org.apache.velocity.context.InternalContextAdapter; +import org.junit.Before; +import org.junit.Test; + +/** + * Tests {@link PutListAttributeDirective}. + */ +public class PutListAttributeDirectiveTest { + + /** + * The model to test. + */ + private PutListAttributeDirective model; + + /** + * The template model. + */ + private PutListAttributeModel tModel; + + /** + * Sets up the model to test. + */ + @Before + public void setUp() { + tModel = createMock(PutListAttributeModel.class); + } + + /** + * Test method for {@link PutListAttributeDirective#start(InternalContextAdapter, + * Writer, Map, HttpServletRequest, HttpServletResponse, ServletContext)}. + */ + @Test + public void testStart() { + HttpServletRequest request = createMock(HttpServletRequest.class); + HttpServletResponse response = createMock(HttpServletResponse.class); + InternalContextAdapter velocityContext = createMock(InternalContextAdapter.class); + Writer writer = createMock(Writer.class); + ServletContext servletContext = createMock(ServletContext.class); + Map params = createParams(); + ArrayStack composeStack = new ArrayStack(); + + expect(request.getAttribute(ServletUtil.COMPOSE_STACK_ATTRIBUTE_NAME)) + .andReturn(composeStack); + tModel.start(composeStack, "myRole", false); + + replay(tModel, request, response, velocityContext, writer, servletContext); + initializeModel(); + model.start(velocityContext, writer, params, request, response, servletContext); + verify(tModel, request, response, velocityContext, writer, servletContext); + } + + /** + * Test method for {@link Directive#end(InternalContextAdapter, + * Writer, Map, HttpServletRequest, HttpServletResponse, ServletContext)}. + */ + @Test + public void testEnd() { + HttpServletRequest request = createMock(HttpServletRequest.class); + HttpServletResponse response = createMock(HttpServletResponse.class); + InternalContextAdapter velocityContext = createMock(InternalContextAdapter.class); + Writer writer = createMock(Writer.class); + ServletContext servletContext = createMock(ServletContext.class); + TilesContainer container = createMock(TilesContainer.class); + ArrayStack composeStack = new ArrayStack(); + Map params = createParams(); + + expect(request.getAttribute(ServletUtil.COMPOSE_STACK_ATTRIBUTE_NAME)) + .andReturn(composeStack); + expect(request.getAttribute(ServletUtil.CURRENT_CONTAINER_ATTRIBUTE_NAME)).andReturn(container); + tModel.end(container, composeStack, "myName", false, velocityContext, request, response); + + replay(tModel, request, response, velocityContext, writer, servletContext, container); + initializeModel(); + model.end(velocityContext, writer, params, request, response, servletContext); + verify(tModel, request, response, velocityContext, writer, servletContext, container); + } + + /** + * Creates the parameters to work with the model. + * + * @return The parameters. + */ + private Map createParams() { + Map params = new HashMap(); + params.put("name", "myName"); + params.put("role", "myRole"); + params.put("inherit", false); + params.put("cascade", false); + return params; + } + + /** + * Initializes the model. + */ + private void initializeModel() { + model = new PutListAttributeDirective(tModel); + } +} diff -Nru tiles-2.2.1/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/PutListAttributeVModelTest.java tiles-2.2.2/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/PutListAttributeVModelTest.java --- tiles-2.2.1/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/PutListAttributeVModelTest.java 2009-10-14 13:08:10.000000000 +0200 +++ tiles-2.2.2/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/PutListAttributeVModelTest.java 1970-01-01 01:00:00.000000000 +0100 @@ -1,154 +0,0 @@ -/* - * $Id: PutListAttributeVModelTest.java 797765 2009-07-25 13:20:26Z apetrelli $ - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you 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.tiles.velocity.template; - -import static org.easymock.EasyMock.*; -import static org.easymock.classextension.EasyMock.*; -import static org.junit.Assert.*; - -import java.util.HashMap; -import java.util.Map; - -import javax.servlet.ServletContext; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; - -import org.apache.tiles.ArrayStack; -import org.apache.tiles.TilesContainer; -import org.apache.tiles.servlet.context.ServletUtil; -import org.apache.tiles.template.PutListAttributeModel; -import org.apache.tiles.velocity.context.VelocityUtil; -import org.apache.velocity.context.Context; -import org.junit.Before; -import org.junit.Test; - -/** - * Tests {@link PutListAttributeVModel}. - */ -public class PutListAttributeVModelTest { - - /** - * The attribute key that will be used to store the parameter map, to use across Velocity tool calls. - */ - private static final String PARAMETER_MAP_STACK_KEY = "org.apache.tiles.velocity.PARAMETER_MAP_STACK"; - - /** - * The model to test. - */ - private PutListAttributeVModel model; - - /** - * The template model. - */ - private PutListAttributeModel tModel; - - /** - * The servlet context. - */ - private ServletContext servletContext; - - /** - * Sets up the model to test. - */ - @Before - public void setUp() { - tModel = createMock(PutListAttributeModel.class); - servletContext = createMock(ServletContext.class); - } - - /** - * Test method for {@link org.apache.tiles.velocity.template.PutListAttributeVModel - * #start(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, - * org.apache.velocity.context.Context, java.util.Map)}. - */ - @Test - public void testStart() { - HttpServletRequest request = createMock(HttpServletRequest.class); - HttpServletResponse response = createMock(HttpServletResponse.class); - Context velocityContext = createMock(Context.class); - Map params = createParams(); - ArrayStack composeStack = new ArrayStack(); - ArrayStack> parameterMapStack = new ArrayStack>(); - - expect(request.getAttribute(ServletUtil.COMPOSE_STACK_ATTRIBUTE_NAME)) - .andReturn(composeStack); - expect(velocityContext.get(PARAMETER_MAP_STACK_KEY)).andReturn(parameterMapStack); - tModel.start(composeStack, "myRole", false); - - replay(tModel, servletContext, request, response, velocityContext); - initializeModel(); - model.start(request, response, velocityContext, params); - assertEquals(1, parameterMapStack.size()); - assertEquals(params, parameterMapStack.peek()); - verify(tModel, servletContext, request, response, velocityContext); - } - - /** - * Test method for {@link org.apache.tiles.velocity.template.PutListAttributeVModel - * #end(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, - * org.apache.velocity.context.Context)}. - */ - @Test - public void testEnd() { - HttpServletRequest request = createMock(HttpServletRequest.class); - HttpServletResponse response = createMock(HttpServletResponse.class); - Context velocityContext = createMock(Context.class); - TilesContainer container = createMock(TilesContainer.class); - ArrayStack composeStack = new ArrayStack(); - Map params = createParams(); - ArrayStack> parameterMapStack = new ArrayStack>(); - parameterMapStack.push(params); - - expect(request.getAttribute(ServletUtil.COMPOSE_STACK_ATTRIBUTE_NAME)) - .andReturn(composeStack); - expect(velocityContext.get(PARAMETER_MAP_STACK_KEY)).andReturn(parameterMapStack); - expect(request.getAttribute(ServletUtil.CURRENT_CONTAINER_ATTRIBUTE_NAME)).andReturn(container); - tModel.end(container, composeStack, "myName", false, velocityContext, request, response); - - replay(tModel, servletContext, container, request, response, velocityContext); - initializeModel(); - assertEquals(VelocityUtil.EMPTY_RENDERABLE, model.end(request, response, velocityContext)); - assertTrue(parameterMapStack.isEmpty()); - verify(tModel, servletContext, container, request, response, velocityContext); - } - - /** - * Creates the parameters to work with the model. - * - * @return The parameters. - */ - private Map createParams() { - Map params = new HashMap(); - params.put("name", "myName"); - params.put("role", "myRole"); - params.put("inherit", false); - params.put("cascade", false); - return params; - } - - /** - * Initializes the model. - */ - private void initializeModel() { - model = new PutListAttributeVModel(tModel, servletContext); - } -} diff -Nru tiles-2.2.1/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/Tiles2ToolTest.java tiles-2.2.2/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/Tiles2ToolTest.java --- tiles-2.2.1/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/Tiles2ToolTest.java 2009-10-14 13:08:10.000000000 +0200 +++ tiles-2.2.2/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/Tiles2ToolTest.java 2010-06-17 20:31:47.000000000 +0200 @@ -1,5 +1,5 @@ /* - * $Id: Tiles2ToolTest.java 765774 2009-04-16 21:43:00Z apetrelli $ + * $Id: Tiles2ToolTest.java 904552 2010-01-29 16:41:26Z apetrelli $ * * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements. See the NOTICE file @@ -455,7 +455,7 @@ } /** - * Test method for {@link org.apache.tiles.velocity.template.Tiles2Tool#getAttribute(java.lang.String)}. + * Test method for {@link org.apache.tiles.velocity.template.Tiles2Tool#get(java.lang.String)}. */ @Test public void testGetAttribute() { @@ -469,7 +469,7 @@ replay(velocityContext, request, response, servletContext, container, attributeContext); initializeTool(); - assertEquals(attribute, tool.getAttribute("myAttribute")); + assertEquals(attribute, tool.get("myAttribute")); verify(velocityContext, request, response, servletContext, container, attributeContext); } diff -Nru tiles-2.2.1/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/VelocityStyleTilesToolTest.java tiles-2.2.2/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/VelocityStyleTilesToolTest.java --- tiles-2.2.1/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/VelocityStyleTilesToolTest.java 2009-10-14 13:08:10.000000000 +0200 +++ tiles-2.2.2/src/tiles-velocity/src/test/java/org/apache/tiles/velocity/template/VelocityStyleTilesToolTest.java 2010-06-17 20:31:47.000000000 +0200 @@ -1,5 +1,5 @@ /* - * $Id: VelocityStyleTilesToolTest.java 787736 2009-06-23 15:52:08Z apetrelli $ + * $Id: VelocityStyleTilesToolTest.java 904552 2010-01-29 16:41:26Z apetrelli $ * * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements. See the NOTICE file @@ -45,7 +45,7 @@ /** * Tests {@link VelocityStyleTilesTool}. * - * @version $Rev: 787736 $ $Date: 2009-06-23 17:52:08 +0200 (mar, 23 giu 2009) $ + * @version $Rev: 904552 $ $Date: 2010-01-29 17:41:26 +0100 (ven, 29 gen 2010) $ * @since 2.2.0 */ public class VelocityStyleTilesToolTest { @@ -90,7 +90,7 @@ } /** - * Test method for {@link org.apache.tiles.velocity.template.VelocityStyleTilesTool#getAttribute(java.lang.String)}. + * Test method for {@link org.apache.tiles.velocity.template.VelocityStyleTilesTool#get(java.lang.String)}. */ @Test public void testGetAttribute() { @@ -106,7 +106,7 @@ replay(velocityContext, request, response, servletContext, container, attributeContext); initializeTool(); - assertEquals(attribute, tool.getAttribute("myAttribute")); + assertEquals(attribute, tool.get("myAttribute")); verify(velocityContext, request, response, servletContext, container, attributeContext); } @@ -126,7 +126,7 @@ /** * Test method for {@link org.apache.tiles.velocity.template.VelocityStyleTilesTool - * #cloneAttribute(org.apache.tiles.Attribute)}. + * #clone(org.apache.tiles.Attribute)}. */ @Test public void testCloneAttribute() { @@ -136,7 +136,7 @@ replay(velocityContext, request, response, servletContext); initializeTool(); - assertEquals(attribute, tool.cloneAttribute(attribute)); + assertEquals(attribute, tool.clone(attribute)); verify(velocityContext, request, response, servletContext); } @@ -156,7 +156,7 @@ /** * Test method for {@link org.apache.tiles.velocity.template.VelocityStyleTilesTool - * #renderAttribute(org.apache.tiles.Attribute)}. + * #render(org.apache.tiles.Attribute)}. * @throws IOException If something goes wrong. */ @Test @@ -172,7 +172,7 @@ replay(velocityContext, request, response, servletContext, container, internalContextAdapter); initializeTool(); - Renderable renderable = tool.renderAttribute(attribute); + Renderable renderable = tool.render(attribute); renderable.render(internalContextAdapter, writer); verify(velocityContext, request, response, servletContext, container, internalContextAdapter); }