You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tiles.apache.org by ap...@apache.org on 2010/11/20 22:17:32 UTC
svn commit: r1037330 - in
/tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src:
main/java/org/apache/tiles/autotag/generate/
main/java/org/apache/tiles/autotag/model/
test/java/org/apache/tiles/autotag/generate/
test/java/org/apache/tiles/autotag/...
Author: apetrelli
Date: Sat Nov 20 21:17:31 2010
New Revision: 1037330
URL: http://svn.apache.org/viewvc?rev=1037330&view=rev
Log:
TILESSB-11
Completed tests for tiles-autotag-core.
Added:
tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/generate/AbstractTemplateSuiteGeneratorTest.java (with props)
tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/model/
tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/model/TemplateClassTest.java (with props)
tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/model/TemplateMethodTest.java (with props)
tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/model/TemplateParameterTest.java (with props)
tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/model/TemplateSuiteTest.java (with props)
tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/tool/
tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/tool/StringToolTest.java (with props)
Modified:
tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/main/java/org/apache/tiles/autotag/generate/AbstractTemplateClassGenerator.java
tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/main/java/org/apache/tiles/autotag/generate/AbstractTemplateSuiteGenerator.java
tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/main/java/org/apache/tiles/autotag/model/TemplateClass.java
tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/main/java/org/apache/tiles/autotag/model/TemplateMethod.java
tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/main/java/org/apache/tiles/autotag/model/TemplateParameter.java
tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/main/java/org/apache/tiles/autotag/model/TemplateSuite.java
tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/generate/AbstractTemplateClassGeneratorTest.java
Modified: tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/main/java/org/apache/tiles/autotag/generate/AbstractTemplateClassGenerator.java
URL: http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/main/java/org/apache/tiles/autotag/generate/AbstractTemplateClassGenerator.java?rev=1037330&r1=1037329&r2=1037330&view=diff
==============================================================================
--- tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/main/java/org/apache/tiles/autotag/generate/AbstractTemplateClassGenerator.java (original)
+++ tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/main/java/org/apache/tiles/autotag/generate/AbstractTemplateClassGenerator.java Sat Nov 20 21:17:31 2010
@@ -2,6 +2,7 @@ package org.apache.tiles.autotag.generat
import java.io.File;
import java.io.FileWriter;
+import java.io.IOException;
import java.io.Writer;
import org.apache.tiles.autotag.core.AutotagRuntimeException;
@@ -51,6 +52,9 @@ public abstract class AbstractTemplateCl
} catch (ParseErrorException e) {
throw new AutotagRuntimeException(
"The template resource is not parseable", e);
+ } catch (IOException e) {
+ throw new AutotagRuntimeException(
+ "I/O Exception when generating file", e);
} catch (RuntimeException e) {
throw e;
} catch (Exception e) {
Modified: tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/main/java/org/apache/tiles/autotag/generate/AbstractTemplateSuiteGenerator.java
URL: http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/main/java/org/apache/tiles/autotag/generate/AbstractTemplateSuiteGenerator.java?rev=1037330&r1=1037329&r2=1037330&view=diff
==============================================================================
--- tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/main/java/org/apache/tiles/autotag/generate/AbstractTemplateSuiteGenerator.java (original)
+++ tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/main/java/org/apache/tiles/autotag/generate/AbstractTemplateSuiteGenerator.java Sat Nov 20 21:17:31 2010
@@ -2,6 +2,7 @@ package org.apache.tiles.autotag.generat
import java.io.File;
import java.io.FileWriter;
+import java.io.IOException;
import java.io.Writer;
import org.apache.tiles.autotag.core.AutotagRuntimeException;
@@ -44,6 +45,9 @@ public abstract class AbstractTemplateSu
throw new AutotagRuntimeException("Cannot find template resource", e);
} catch (ParseErrorException e) {
throw new AutotagRuntimeException("The template resource is not parseable", e);
+ } catch (IOException e) {
+ throw new AutotagRuntimeException(
+ "I/O Exception when generating file", e);
} catch (RuntimeException e) {
throw e;
} catch (Exception e) {
Modified: tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/main/java/org/apache/tiles/autotag/model/TemplateClass.java
URL: http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/main/java/org/apache/tiles/autotag/model/TemplateClass.java?rev=1037330&r1=1037329&r2=1037330&view=diff
==============================================================================
--- tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/main/java/org/apache/tiles/autotag/model/TemplateClass.java (original)
+++ tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/main/java/org/apache/tiles/autotag/model/TemplateClass.java Sat Nov 20 21:17:31 2010
@@ -58,6 +58,17 @@ public class TemplateClass {
return params.values();
}
+ public boolean hasBody() {
+ return executeMethod.hasBody();
+ }
+
+ @Override
+ public String toString() {
+ return "TemplateClass [name=" + name + ", tagName=" + tagName
+ + ", tagClassPrefix=" + tagClassPrefix + ", documentation="
+ + documentation + ", executeMethod=" + executeMethod + "]";
+ }
+
private void fillRegularParameters(Map<String, TemplateParameter> params,
TemplateMethod method) {
if (method != null) {
@@ -68,15 +79,4 @@ public class TemplateClass {
}
}
}
-
- public boolean hasBody() {
- return executeMethod.hasBody();
- }
-
- @Override
- public String toString() {
- return "TemplateClass\n[documentation=" + documentation
- + ",\nexecuteMethod=" + executeMethod + ",\nname=" + name + "]";
- }
-
}
Modified: tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/main/java/org/apache/tiles/autotag/model/TemplateMethod.java
URL: http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/main/java/org/apache/tiles/autotag/model/TemplateMethod.java?rev=1037330&r1=1037329&r2=1037330&view=diff
==============================================================================
--- tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/main/java/org/apache/tiles/autotag/model/TemplateMethod.java (original)
+++ tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/main/java/org/apache/tiles/autotag/model/TemplateMethod.java Sat Nov 20 21:17:31 2010
@@ -54,8 +54,7 @@ public class TemplateMethod {
@Override
public String toString() {
- return "TemplateMethod\n[documentation=" + documentation + ", name="
- + name + ", parameters=\n" + parameters + "]";
+ return "TemplateMethod [name=" + name + ", documentation="
+ + documentation + ", parameters=" + parameters + "]";
}
-
}
Modified: tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/main/java/org/apache/tiles/autotag/model/TemplateParameter.java
URL: http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/main/java/org/apache/tiles/autotag/model/TemplateParameter.java?rev=1037330&r1=1037329&r2=1037330&view=diff
==============================================================================
--- tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/main/java/org/apache/tiles/autotag/model/TemplateParameter.java (original)
+++ tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/main/java/org/apache/tiles/autotag/model/TemplateParameter.java Sat Nov 20 21:17:31 2010
@@ -67,9 +67,9 @@ public class TemplateParameter {
@Override
public String toString() {
- return "TemplateParameter\n[documentation=" + documentation
- + ",\nname=" + name + ",\nexportedName=" + exportedName
- + ", required=" + required + ", type=" + type + "]";
+ return "TemplateParameter [name=" + name + ", exportedName="
+ + exportedName + ", documentation=" + documentation + ", type="
+ + type + ", defaultValue=" + defaultValue + ", required="
+ + required + "]";
}
-
}
Modified: tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/main/java/org/apache/tiles/autotag/model/TemplateSuite.java
URL: http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/main/java/org/apache/tiles/autotag/model/TemplateSuite.java?rev=1037330&r1=1037329&r2=1037330&view=diff
==============================================================================
--- tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/main/java/org/apache/tiles/autotag/model/TemplateSuite.java (original)
+++ tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/main/java/org/apache/tiles/autotag/model/TemplateSuite.java Sat Nov 20 21:17:31 2010
@@ -54,8 +54,9 @@ public class TemplateSuite {
@Override
public String toString() {
- return "TemplateSuite\n[documentation=" + documentation + ", name="
- + name + ", templateClasses=\n" + templateClasses + "]";
+ return "TemplateSuite [name=" + name + ", documentation="
+ + documentation + ", customVariables=" + customVariables
+ + ", templateClasses=" + templateClasses + "]";
}
public Map<String, String> getCustomVariables() {
Modified: tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/generate/AbstractTemplateClassGeneratorTest.java
URL: http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/generate/AbstractTemplateClassGeneratorTest.java?rev=1037330&r1=1037329&r2=1037330&view=diff
==============================================================================
--- tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/generate/AbstractTemplateClassGeneratorTest.java (original)
+++ tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/generate/AbstractTemplateClassGeneratorTest.java Sat Nov 20 21:17:31 2010
@@ -8,8 +8,11 @@ import static org.easymock.classextensio
import java.io.File;
import java.io.FileWriter;
+import java.io.IOException;
import org.apache.commons.io.FileUtils;
+import org.apache.tiles.autotag.core.AutotagRuntimeException;
+import org.apache.tiles.autotag.core.ClassParseException;
import org.apache.tiles.autotag.model.TemplateClass;
import org.apache.tiles.autotag.model.TemplateSuite;
import org.apache.velocity.Template;
@@ -17,6 +20,7 @@ import org.apache.velocity.VelocityConte
import org.apache.velocity.app.VelocityEngine;
import org.apache.velocity.exception.ParseErrorException;
import org.apache.velocity.exception.ResourceNotFoundException;
+import org.junit.Before;
import org.junit.Test;
/**
@@ -27,6 +31,42 @@ import org.junit.Test;
public class AbstractTemplateClassGeneratorTest {
/**
+ * The velocity engine.
+ */
+ private VelocityEngine velocityEngine;
+
+ /**
+ * The temporary directory.
+ */
+ private File directory;
+
+ /**
+ * The generator to test.
+ */
+ private AbstractTemplateClassGenerator generator;
+
+ /**
+ * Sets up the test.
+ *
+ * @throws IOException If something goes wrong.
+ */
+ @Before
+ public void setUp() throws IOException {
+ velocityEngine = createMock(VelocityEngine.class);
+ generator = createMockBuilder(AbstractTemplateClassGenerator.class).withConstructor(velocityEngine).createMock();
+ directory = File.createTempFile("autotag", null);
+ }
+
+ /**
+ * Tears down the test.
+ *
+ * @throws IOException If something goes wrong.
+ */
+ public void tearDown() throws IOException {
+ FileUtils.deleteDirectory(directory);
+ }
+
+ /**
* Test method for {@link org.apache.tiles.autotag.generate.AbstractTemplateClassGenerator#generate(java.io.File, java.lang.String, org.apache.tiles.autotag.model.TemplateSuite, org.apache.tiles.autotag.model.TemplateClass)}.
* @throws Exception If something goes wrong.
* @throws ParseErrorException If something goes wrong.
@@ -34,9 +74,6 @@ public class AbstractTemplateClassGenera
*/
@Test
public void testGenerate() throws ResourceNotFoundException, ParseErrorException, Exception {
- VelocityEngine velocityEngine = createMock(VelocityEngine.class);
- AbstractTemplateClassGenerator generator = createMockBuilder(AbstractTemplateClassGenerator.class).withConstructor(velocityEngine).createMock();
- File directory = File.createTempFile("autotag", null);
directory.delete();
directory.mkdir();
TemplateSuite suite = createMock(TemplateSuite.class);
@@ -55,7 +92,145 @@ public class AbstractTemplateClassGenera
replay(velocityEngine, generator, suite, clazz, template);
generator.generate(directory, packageName, suite, clazz);
verify(velocityEngine, generator, suite, clazz, template);
- FileUtils.deleteDirectory(directory);
+ }
+
+ /**
+ * Test method for {@link org.apache.tiles.autotag.generate.AbstractTemplateClassGenerator#generate(java.io.File, java.lang.String, org.apache.tiles.autotag.model.TemplateSuite, org.apache.tiles.autotag.model.TemplateClass)}.
+ * @throws Exception If something goes wrong.
+ * @throws ParseErrorException If something goes wrong.
+ * @throws ResourceNotFoundException If something goes wrong.
+ */
+ @Test(expected=AutotagRuntimeException.class)
+ public void testGenerateException1() throws ResourceNotFoundException, ParseErrorException, Exception {
+ directory.delete();
+ directory.mkdir();
+ TemplateSuite suite = createMock(TemplateSuite.class);
+ TemplateClass clazz = createMock(TemplateClass.class);
+ Template template = createMock(Template.class);
+ String packageName = "org.apache.tiles.autotag.test";
+
+ expect(generator.getDirectoryName(directory, packageName, suite, clazz)).andReturn("mydir");
+ File mydir = new File(directory, "mydir");
+ expect(generator.getFilename(mydir , packageName, suite, clazz)).andReturn("myfile.txt");
+ String sampleVmPath = "/sample.vm";
+ expect(generator.getTemplatePath(mydir, packageName, suite, clazz)).andReturn(sampleVmPath);
+ expect(velocityEngine.getTemplate("/sample.vm")).andThrow(new ResourceNotFoundException("hello"));
+
+ replay(velocityEngine, generator, suite, clazz, template);
+ generator.generate(directory, packageName, suite, clazz);
+ verify(velocityEngine, generator, suite, clazz, template);
+ }
+
+ /**
+ * Test method for {@link org.apache.tiles.autotag.generate.AbstractTemplateClassGenerator#generate(java.io.File, java.lang.String, org.apache.tiles.autotag.model.TemplateSuite, org.apache.tiles.autotag.model.TemplateClass)}.
+ * @throws Exception If something goes wrong.
+ * @throws ParseErrorException If something goes wrong.
+ * @throws ResourceNotFoundException If something goes wrong.
+ */
+ @Test(expected=AutotagRuntimeException.class)
+ public void testGenerateException2() throws ResourceNotFoundException, ParseErrorException, Exception {
+ directory.delete();
+ directory.mkdir();
+ TemplateSuite suite = createMock(TemplateSuite.class);
+ TemplateClass clazz = createMock(TemplateClass.class);
+ Template template = createMock(Template.class);
+ String packageName = "org.apache.tiles.autotag.test";
+
+ expect(generator.getDirectoryName(directory, packageName, suite, clazz)).andReturn("mydir");
+ File mydir = new File(directory, "mydir");
+ expect(generator.getFilename(mydir , packageName, suite, clazz)).andReturn("myfile.txt");
+ String sampleVmPath = "/sample.vm";
+ expect(generator.getTemplatePath(mydir, packageName, suite, clazz)).andReturn(sampleVmPath);
+ expect(velocityEngine.getTemplate("/sample.vm")).andThrow(new ParseErrorException("hello"));
+
+ replay(velocityEngine, generator, suite, clazz, template);
+ generator.generate(directory, packageName, suite, clazz);
+ verify(velocityEngine, generator, suite, clazz, template);
+ }
+
+ /**
+ * Test method for {@link org.apache.tiles.autotag.generate.AbstractTemplateClassGenerator#generate(java.io.File, java.lang.String, org.apache.tiles.autotag.model.TemplateSuite, org.apache.tiles.autotag.model.TemplateClass)}.
+ * @throws Exception If something goes wrong.
+ * @throws ParseErrorException If something goes wrong.
+ * @throws ResourceNotFoundException If something goes wrong.
+ */
+ @Test(expected=AutotagRuntimeException.class)
+ public void testGenerateException3() throws ResourceNotFoundException, ParseErrorException, Exception {
+ directory.delete();
+ directory.mkdir();
+ TemplateSuite suite = createMock(TemplateSuite.class);
+ TemplateClass clazz = createMock(TemplateClass.class);
+ Template template = createMock(Template.class);
+ String packageName = "org.apache.tiles.autotag.test";
+
+ expect(generator.getDirectoryName(directory, packageName, suite, clazz)).andReturn("mydir");
+ File mydir = new File(directory, "mydir");
+ expect(generator.getFilename(mydir , packageName, suite, clazz)).andReturn("myfile.txt");
+ String sampleVmPath = "/sample.vm";
+ expect(generator.getTemplatePath(mydir, packageName, suite, clazz)).andReturn(sampleVmPath);
+ expect(velocityEngine.getTemplate("/sample.vm")).andThrow(new Exception());
+
+ replay(velocityEngine, generator, suite, clazz, template);
+ generator.generate(directory, packageName, suite, clazz);
+ verify(velocityEngine, generator, suite, clazz, template);
+ }
+
+ /**
+ * Test method for {@link org.apache.tiles.autotag.generate.AbstractTemplateClassGenerator#generate(java.io.File, java.lang.String, org.apache.tiles.autotag.model.TemplateSuite, org.apache.tiles.autotag.model.TemplateClass)}.
+ * @throws Exception If something goes wrong.
+ * @throws ParseErrorException If something goes wrong.
+ * @throws ResourceNotFoundException If something goes wrong.
+ */
+ @Test(expected=AutotagRuntimeException.class)
+ public void testGenerateException4() throws ResourceNotFoundException, ParseErrorException, Exception {
+ directory.delete();
+ directory.mkdir();
+ TemplateSuite suite = createMock(TemplateSuite.class);
+ TemplateClass clazz = createMock(TemplateClass.class);
+ Template template = createMock(Template.class);
+ String packageName = "org.apache.tiles.autotag.test";
+
+ expect(generator.getDirectoryName(directory, packageName, suite, clazz)).andReturn("mydir");
+ File mydir = new File(directory, "mydir");
+ expect(generator.getFilename(mydir , packageName, suite, clazz)).andReturn("myfile.txt");
+ String sampleVmPath = "/sample.vm";
+ expect(generator.getTemplatePath(mydir, packageName, suite, clazz)).andReturn(sampleVmPath);
+ expect(velocityEngine.getTemplate("/sample.vm")).andReturn(template);
+ template.merge(isA(VelocityContext.class), isA(FileWriter.class));
+ expectLastCall().andThrow(new IOException());
+
+ replay(velocityEngine, generator, suite, clazz, template);
+ generator.generate(directory, packageName, suite, clazz);
+ verify(velocityEngine, generator, suite, clazz, template);
+ }
+
+ /**
+ * Test method for {@link org.apache.tiles.autotag.generate.AbstractTemplateClassGenerator#generate(java.io.File, java.lang.String, org.apache.tiles.autotag.model.TemplateSuite, org.apache.tiles.autotag.model.TemplateClass)}.
+ * @throws Exception If something goes wrong.
+ * @throws ParseErrorException If something goes wrong.
+ * @throws ResourceNotFoundException If something goes wrong.
+ */
+ @Test(expected=ClassParseException.class)
+ public void testGenerateException5() throws ResourceNotFoundException, ParseErrorException, Exception {
+ directory.delete();
+ directory.mkdir();
+ TemplateSuite suite = createMock(TemplateSuite.class);
+ TemplateClass clazz = createMock(TemplateClass.class);
+ Template template = createMock(Template.class);
+ String packageName = "org.apache.tiles.autotag.test";
+
+ expect(generator.getDirectoryName(directory, packageName, suite, clazz)).andReturn("mydir");
+ File mydir = new File(directory, "mydir");
+ expect(generator.getFilename(mydir , packageName, suite, clazz)).andReturn("myfile.txt");
+ String sampleVmPath = "/sample.vm";
+ expect(generator.getTemplatePath(mydir, packageName, suite, clazz)).andReturn(sampleVmPath);
+ expect(velocityEngine.getTemplate("/sample.vm")).andReturn(template);
+ template.merge(isA(VelocityContext.class), isA(FileWriter.class));
+ expectLastCall().andThrow(new ClassParseException());
+
+ replay(velocityEngine, generator, suite, clazz, template);
+ generator.generate(directory, packageName, suite, clazz);
+ verify(velocityEngine, generator, suite, clazz, template);
}
}
Added: tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/generate/AbstractTemplateSuiteGeneratorTest.java
URL: http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/generate/AbstractTemplateSuiteGeneratorTest.java?rev=1037330&view=auto
==============================================================================
--- tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/generate/AbstractTemplateSuiteGeneratorTest.java (added)
+++ tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/generate/AbstractTemplateSuiteGeneratorTest.java Sat Nov 20 21:17:31 2010
@@ -0,0 +1,229 @@
+/**
+ *
+ */
+package org.apache.tiles.autotag.generate;
+
+import static org.easymock.EasyMock.*;
+import static org.easymock.classextension.EasyMock.*;
+
+import java.io.File;
+import java.io.FileWriter;
+import java.io.IOException;
+
+import org.apache.commons.io.FileUtils;
+import org.apache.tiles.autotag.core.AutotagRuntimeException;
+import org.apache.tiles.autotag.core.ClassParseException;
+import org.apache.tiles.autotag.model.TemplateSuite;
+import org.apache.velocity.Template;
+import org.apache.velocity.VelocityContext;
+import org.apache.velocity.app.VelocityEngine;
+import org.apache.velocity.exception.ParseErrorException;
+import org.apache.velocity.exception.ResourceNotFoundException;
+import org.junit.Before;
+import org.junit.Test;
+
+/**
+ * Tests {@link AbstractTemplateSuiteGenerator}.
+ *
+ * @version $Rev$ $Date$
+ */
+public class AbstractTemplateSuiteGeneratorTest {
+
+ /**
+ * The velocity engine.
+ */
+ private VelocityEngine velocityEngine;
+
+ /**
+ * The temporary directory.
+ */
+ private File directory;
+
+ /**
+ * The generator to test.
+ */
+ private AbstractTemplateSuiteGenerator generator;
+
+ /**
+ * Sets up the test.
+ *
+ * @throws IOException If something goes wrong.
+ */
+ @Before
+ public void setUp() throws IOException {
+ velocityEngine = createMock(VelocityEngine.class);
+ generator = createMockBuilder(AbstractTemplateSuiteGenerator.class).withConstructor(velocityEngine).createMock();
+ directory = File.createTempFile("autotag", null);
+ }
+
+ /**
+ * Tears down the test.
+ *
+ * @throws IOException If something goes wrong.
+ */
+ public void tearDown() throws IOException {
+ FileUtils.deleteDirectory(directory);
+ }
+
+ /**
+ * Test method for {@link org.apache.tiles.autotag.generate.AbstractTemplateSuiteGenerator#generate(java.io.File, java.lang.String, org.apache.tiles.autotag.model.TemplateSuite, org.apache.tiles.autotag.model.TemplateClass)}.
+ * @throws Exception If something goes wrong.
+ * @throws ParseErrorException If something goes wrong.
+ * @throws ResourceNotFoundException If something goes wrong.
+ */
+ @Test
+ public void testGenerate() throws ResourceNotFoundException, ParseErrorException, Exception {
+ directory.delete();
+ directory.mkdir();
+ TemplateSuite suite = createMock(TemplateSuite.class);
+ Template template = createMock(Template.class);
+ String packageName = "org.apache.tiles.autotag.test";
+
+ expect(generator.getDirectoryName(directory, packageName, suite)).andReturn("mydir");
+ File mydir = new File(directory, "mydir");
+ expect(generator.getFilename(mydir , packageName, suite)).andReturn("myfile.txt");
+ String sampleVmPath = "/sample.vm";
+ expect(generator.getTemplatePath(mydir, packageName, suite)).andReturn(sampleVmPath);
+ expect(velocityEngine.getTemplate("/sample.vm")).andReturn(template);
+ template.merge(isA(VelocityContext.class), isA(FileWriter.class));
+
+ replay(velocityEngine, generator, suite, template);
+ generator.generate(directory, packageName, suite);
+ verify(velocityEngine, generator, suite, template);
+ }
+
+ /**
+ * Test method for {@link org.apache.tiles.autotag.generate.AbstractTemplateSuiteGenerator#generate(java.io.File, java.lang.String, org.apache.tiles.autotag.model.TemplateSuite, org.apache.tiles.autotag.model.TemplateClass)}.
+ * @throws Exception If something goes wrong.
+ * @throws ParseErrorException If something goes wrong.
+ * @throws ResourceNotFoundException If something goes wrong.
+ */
+ @Test(expected=AutotagRuntimeException.class)
+ public void testGenerateException1() throws ResourceNotFoundException, ParseErrorException, Exception {
+ directory.delete();
+ directory.mkdir();
+ TemplateSuite suite = createMock(TemplateSuite.class);
+ Template template = createMock(Template.class);
+ String packageName = "org.apache.tiles.autotag.test";
+
+ expect(generator.getDirectoryName(directory, packageName, suite)).andReturn("mydir");
+ File mydir = new File(directory, "mydir");
+ expect(generator.getFilename(mydir , packageName, suite)).andReturn("myfile.txt");
+ String sampleVmPath = "/sample.vm";
+ expect(generator.getTemplatePath(mydir, packageName, suite)).andReturn(sampleVmPath);
+ expect(velocityEngine.getTemplate("/sample.vm")).andThrow(new ResourceNotFoundException("hello"));
+
+ replay(velocityEngine, generator, suite, template);
+ generator.generate(directory, packageName, suite);
+ verify(velocityEngine, generator, suite, template);
+ }
+
+ /**
+ * Test method for {@link org.apache.tiles.autotag.generate.AbstractTemplateSuiteGenerator#generate(java.io.File, java.lang.String, org.apache.tiles.autotag.model.TemplateSuite, org.apache.tiles.autotag.model.TemplateClass)}.
+ * @throws Exception If something goes wrong.
+ * @throws ParseErrorException If something goes wrong.
+ * @throws ResourceNotFoundException If something goes wrong.
+ */
+ @Test(expected=AutotagRuntimeException.class)
+ public void testGenerateException2() throws ResourceNotFoundException, ParseErrorException, Exception {
+ directory.delete();
+ directory.mkdir();
+ TemplateSuite suite = createMock(TemplateSuite.class);
+ Template template = createMock(Template.class);
+ String packageName = "org.apache.tiles.autotag.test";
+
+ expect(generator.getDirectoryName(directory, packageName, suite)).andReturn("mydir");
+ File mydir = new File(directory, "mydir");
+ expect(generator.getFilename(mydir , packageName, suite)).andReturn("myfile.txt");
+ String sampleVmPath = "/sample.vm";
+ expect(generator.getTemplatePath(mydir, packageName, suite)).andReturn(sampleVmPath);
+ expect(velocityEngine.getTemplate("/sample.vm")).andThrow(new ParseErrorException("hello"));
+
+ replay(velocityEngine, generator, suite, template);
+ generator.generate(directory, packageName, suite);
+ verify(velocityEngine, generator, suite, template);
+ }
+
+ /**
+ * Test method for {@link org.apache.tiles.autotag.generate.AbstractTemplateSuiteGenerator#generate(java.io.File, java.lang.String, org.apache.tiles.autotag.model.TemplateSuite, org.apache.tiles.autotag.model.TemplateClass)}.
+ * @throws Exception If something goes wrong.
+ * @throws ParseErrorException If something goes wrong.
+ * @throws ResourceNotFoundException If something goes wrong.
+ */
+ @Test(expected=AutotagRuntimeException.class)
+ public void testGenerateException3() throws ResourceNotFoundException, ParseErrorException, Exception {
+ directory.delete();
+ directory.mkdir();
+ TemplateSuite suite = createMock(TemplateSuite.class);
+ Template template = createMock(Template.class);
+ String packageName = "org.apache.tiles.autotag.test";
+
+ expect(generator.getDirectoryName(directory, packageName, suite)).andReturn("mydir");
+ File mydir = new File(directory, "mydir");
+ expect(generator.getFilename(mydir , packageName, suite)).andReturn("myfile.txt");
+ String sampleVmPath = "/sample.vm";
+ expect(generator.getTemplatePath(mydir, packageName, suite)).andReturn(sampleVmPath);
+ expect(velocityEngine.getTemplate("/sample.vm")).andThrow(new Exception());
+
+ replay(velocityEngine, generator, suite, template);
+ generator.generate(directory, packageName, suite);
+ verify(velocityEngine, generator, suite, template);
+ }
+
+ /**
+ * Test method for {@link org.apache.tiles.autotag.generate.AbstractTemplateSuiteGenerator#generate(java.io.File, java.lang.String, org.apache.tiles.autotag.model.TemplateSuite, org.apache.tiles.autotag.model.TemplateClass)}.
+ * @throws Exception If something goes wrong.
+ * @throws ParseErrorException If something goes wrong.
+ * @throws ResourceNotFoundException If something goes wrong.
+ */
+ @Test(expected=AutotagRuntimeException.class)
+ public void testGenerateException4() throws ResourceNotFoundException, ParseErrorException, Exception {
+ directory.delete();
+ directory.mkdir();
+ TemplateSuite suite = createMock(TemplateSuite.class);
+ Template template = createMock(Template.class);
+ String packageName = "org.apache.tiles.autotag.test";
+
+ expect(generator.getDirectoryName(directory, packageName, suite)).andReturn("mydir");
+ File mydir = new File(directory, "mydir");
+ expect(generator.getFilename(mydir , packageName, suite)).andReturn("myfile.txt");
+ String sampleVmPath = "/sample.vm";
+ expect(generator.getTemplatePath(mydir, packageName, suite)).andReturn(sampleVmPath);
+ expect(velocityEngine.getTemplate("/sample.vm")).andReturn(template);
+ template.merge(isA(VelocityContext.class), isA(FileWriter.class));
+ expectLastCall().andThrow(new IOException());
+
+ replay(velocityEngine, generator, suite, template);
+ generator.generate(directory, packageName, suite);
+ verify(velocityEngine, generator, suite, template);
+ }
+
+ /**
+ * Test method for {@link org.apache.tiles.autotag.generate.AbstractTemplateSuiteGenerator#generate(java.io.File, java.lang.String, org.apache.tiles.autotag.model.TemplateSuite, org.apache.tiles.autotag.model.TemplateClass)}.
+ * @throws Exception If something goes wrong.
+ * @throws ParseErrorException If something goes wrong.
+ * @throws ResourceNotFoundException If something goes wrong.
+ */
+ @Test(expected=ClassParseException.class)
+ public void testGenerateException5() throws ResourceNotFoundException, ParseErrorException, Exception {
+ directory.delete();
+ directory.mkdir();
+ TemplateSuite suite = createMock(TemplateSuite.class);
+ Template template = createMock(Template.class);
+ String packageName = "org.apache.tiles.autotag.test";
+
+ expect(generator.getDirectoryName(directory, packageName, suite)).andReturn("mydir");
+ File mydir = new File(directory, "mydir");
+ expect(generator.getFilename(mydir , packageName, suite)).andReturn("myfile.txt");
+ String sampleVmPath = "/sample.vm";
+ expect(generator.getTemplatePath(mydir, packageName, suite)).andReturn(sampleVmPath);
+ expect(velocityEngine.getTemplate("/sample.vm")).andReturn(template);
+ template.merge(isA(VelocityContext.class), isA(FileWriter.class));
+ expectLastCall().andThrow(new ClassParseException());
+
+ replay(velocityEngine, generator, suite, template);
+ generator.generate(directory, packageName, suite);
+ verify(velocityEngine, generator, suite, template);
+ }
+
+}
Propchange: tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/generate/AbstractTemplateSuiteGeneratorTest.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/generate/AbstractTemplateSuiteGeneratorTest.java
------------------------------------------------------------------------------
svn:keywords = Date Author Id Revision HeadURL
Added: tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/model/TemplateClassTest.java
URL: http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/model/TemplateClassTest.java?rev=1037330&view=auto
==============================================================================
--- tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/model/TemplateClassTest.java (added)
+++ tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/model/TemplateClassTest.java Sat Nov 20 21:17:31 2010
@@ -0,0 +1,128 @@
+/**
+ *
+ */
+package org.apache.tiles.autotag.model;
+
+import static org.easymock.classextension.EasyMock.*;
+import static org.junit.Assert.*;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Iterator;
+import java.util.List;
+
+import org.junit.Test;
+
+/**
+ * @author antonio
+ *
+ * @version $Rev$ $Date$
+ */
+public class TemplateClassTest {
+
+ /**
+ * Test method for {@link org.apache.tiles.autotag.model.TemplateClass#TemplateClass(java.lang.String)}.
+ */
+ @Test
+ public void testTemplateConstructor1() {
+ TemplateClass templateClass = new TemplateClass("name");
+ assertEquals("name", templateClass.getName());
+ assertNull(templateClass.getTagName());
+ assertNull(templateClass.getTagClassPrefix());
+ assertNull(templateClass.getExecuteMethod());
+ Collection<TemplateParameter> params = templateClass.getParameters();
+ assertTrue(params.isEmpty());
+ }
+
+ /**
+ * Test method for {@link org.apache.tiles.autotag.model.TemplateClass#TemplateClass(java.lang.String, java.lang.String, java.lang.String, org.apache.tiles.autotag.model.TemplateMethod)}.
+ */
+ @Test
+ public void testTemplateConstructor2() {
+ TemplateMethod method = createMock(TemplateMethod.class);
+
+ replay(method);
+ TemplateClass templateClass = new TemplateClass("name", "tagName", "tagClassPrefix", method);
+ assertEquals("name", templateClass.getName());
+ assertEquals("tagName", templateClass.getTagName());
+ assertEquals("tagClassPrefix", templateClass.getTagClassPrefix());
+ assertEquals(method, templateClass.getExecuteMethod());
+ verify(method);
+ }
+
+ /**
+ * Test method for {@link org.apache.tiles.autotag.model.TemplateClass#setDocumentation(java.lang.String)}.
+ */
+ @Test
+ public void testSetDocumentation() {
+ TemplateClass templateClass = new TemplateClass("name");
+ templateClass.setDocumentation("docs");
+ assertEquals("docs", templateClass.getDocumentation());
+ }
+
+ /**
+ * Test method for {@link org.apache.tiles.autotag.model.TemplateClass#getParameters()}.
+ */
+ @Test
+ public void testGetParameters() {
+ TemplateParameter param1 = createMock(TemplateParameter.class);
+ TemplateParameter param2 = createMock(TemplateParameter.class);
+ TemplateParameter param3 = createMock(TemplateParameter.class);
+ TemplateParameter param4 = createMock(TemplateParameter.class);
+ TemplateMethod method = createMock(TemplateMethod.class);
+ List<TemplateParameter> params = new ArrayList<TemplateParameter>();
+
+ expect(method.getParameters()).andReturn(params);
+ expect(param1.isRequest()).andReturn(true);
+ expect(param2.isRequest()).andReturn(false);
+ expect(param2.isBody()).andReturn(true);
+ expect(param3.isRequest()).andReturn(false);
+ expect(param3.isBody()).andReturn(false);
+ expect(param4.isRequest()).andReturn(false);
+ expect(param4.isBody()).andReturn(false);
+ expect(param3.getName()).andReturn("param1");
+ expect(param4.getName()).andReturn("param2");
+
+ replay(param1, param2, param3, param4, method);
+ params.add(param1);
+ params.add(param2);
+ params.add(param3);
+ params.add(param4);
+
+ TemplateClass templateClass = new TemplateClass("name", "tagName", "tagClassPrefix", method);
+ Collection<TemplateParameter> returnedParams = templateClass.getParameters();
+ Iterator<TemplateParameter> paramIt = returnedParams.iterator();
+ assertSame(param3, paramIt.next());
+ assertSame(param4, paramIt.next());
+ assertFalse(paramIt.hasNext());
+ verify(param1, param2, param3, param4, method);
+ }
+
+ /**
+ * Test method for {@link org.apache.tiles.autotag.model.TemplateClass#hasBody()}.
+ */
+ @Test
+ public void testHasBody() {
+ TemplateMethod method = createMock(TemplateMethod.class);
+ expect(method.hasBody()).andReturn(true);
+
+ replay(method);
+ TemplateClass templateClass = new TemplateClass("name", "tagName", "tagClassPrefix", method);
+ assertTrue(templateClass.hasBody());
+ verify(method);
+ }
+
+ /**
+ * Test method for {@link org.apache.tiles.autotag.model.TemplateClass#toString()}.
+ */
+ @Test
+ public void testToString() {
+ TemplateMethod method = new TemplateMethod("method", new ArrayList<TemplateParameter>());
+ TemplateClass templateClass = new TemplateClass("name", "tagName", "tagClassPrefix", method);
+ assertEquals("TemplateClass [name=name, tagName=tagName, tagClassPrefix=tagClassPrefix, " +
+ "documentation=null, executeMethod=TemplateMethod " +
+ "[name=method, documentation=null, parameters={}]]",
+ templateClass.toString());
+ }
+
+}
Propchange: tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/model/TemplateClassTest.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/model/TemplateClassTest.java
------------------------------------------------------------------------------
svn:keywords = Date Author Id Revision HeadURL
Added: tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/model/TemplateMethodTest.java
URL: http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/model/TemplateMethodTest.java?rev=1037330&view=auto
==============================================================================
--- tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/model/TemplateMethodTest.java (added)
+++ tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/model/TemplateMethodTest.java Sat Nov 20 21:17:31 2010
@@ -0,0 +1,106 @@
+package org.apache.tiles.autotag.model;
+
+import static org.easymock.EasyMock.*;
+import static org.easymock.classextension.EasyMock.*;
+import static org.junit.Assert.*;
+
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
+
+import org.junit.Test;
+
+public class TemplateMethodTest {
+
+ /**
+ * Tests {@link TemplateMethod#TemplateMethod(String, Iterable)}.
+ */
+ @Test
+ public void testTemplateMethod() {
+ TemplateParameter param1 = createMock(TemplateParameter.class);
+ TemplateParameter param2 = createMock(TemplateParameter.class);
+
+ expect(param1.getName()).andReturn("param1");
+ expect(param2.getName()).andReturn("param2");
+
+ replay(param1, param2);
+ List<TemplateParameter> parameters = new ArrayList<TemplateParameter>();
+ parameters.add(param1);
+ parameters.add(param2);
+
+ TemplateMethod method = new TemplateMethod("method", parameters);
+ assertEquals("method", method.getName());
+ Iterator<TemplateParameter> params = method.getParameters().iterator();
+ assertSame(param1, params.next());
+ assertSame(param2, params.next());
+ assertFalse(params.hasNext());
+ assertSame(param1, method.getParameterByName("param1"));
+ assertSame(param2, method.getParameterByName("param2"));
+ verify(param1, param2);
+ }
+
+ /**
+ * Tests {@link TemplateMethod#setDocumentation(String)}.
+ */
+ @Test
+ public void testSetDocumentation() {
+ TemplateMethod method = new TemplateMethod("method", new ArrayList<TemplateParameter>());
+ method.setDocumentation("docs");
+ assertEquals("docs", method.getDocumentation());
+ }
+
+ /**
+ * Tests {@link TemplateMethod#hasBody()}.
+ */
+ @Test
+ public void testHasBody() {
+ TemplateParameter param1 = createMock(TemplateParameter.class);
+ TemplateParameter param2 = createMock(TemplateParameter.class);
+
+ expect(param1.getName()).andReturn("param1");
+ expect(param2.getName()).andReturn("param2");
+ expect(param1.isBody()).andReturn(true);
+
+ replay(param1, param2);
+ List<TemplateParameter> parameters = new ArrayList<TemplateParameter>();
+ parameters.add(param1);
+ parameters.add(param2);
+
+ TemplateMethod method = new TemplateMethod("method", parameters);
+ assertTrue(method.hasBody());
+ verify(param1, param2);
+ }
+
+ /**
+ * Tests {@link TemplateMethod#hasBody()}.
+ */
+ @Test
+ public void testHasBody2() {
+ TemplateParameter param1 = createMock(TemplateParameter.class);
+ TemplateParameter param2 = createMock(TemplateParameter.class);
+
+ expect(param1.getName()).andReturn("param1");
+ expect(param2.getName()).andReturn("param2");
+ expect(param1.isBody()).andReturn(false);
+ expect(param2.isBody()).andReturn(false);
+
+ replay(param1, param2);
+ List<TemplateParameter> parameters = new ArrayList<TemplateParameter>();
+ parameters.add(param1);
+ parameters.add(param2);
+
+ TemplateMethod method = new TemplateMethod("method", parameters);
+ assertFalse(method.hasBody());
+ verify(param1, param2);
+ }
+
+ /**
+ * Tests {@link TemplateMethod#toString()}.
+ */
+ @Test
+ public void testToString() {
+ TemplateMethod method = new TemplateMethod("method", new ArrayList<TemplateParameter>());
+ assertEquals("TemplateMethod [name=method, documentation=null, parameters={}]", method.toString());
+ }
+
+}
Propchange: tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/model/TemplateMethodTest.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/model/TemplateMethodTest.java
------------------------------------------------------------------------------
svn:keywords = Date Author Id Revision HeadURL
Added: tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/model/TemplateParameterTest.java
URL: http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/model/TemplateParameterTest.java?rev=1037330&view=auto
==============================================================================
--- tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/model/TemplateParameterTest.java (added)
+++ tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/model/TemplateParameterTest.java Sat Nov 20 21:17:31 2010
@@ -0,0 +1,72 @@
+package org.apache.tiles.autotag.model;
+
+import static org.junit.Assert.*;
+
+import org.apache.tiles.autotag.core.runtime.ModelBody;
+import org.apache.tiles.request.Request;
+import org.junit.Test;
+
+/**
+ * Tests {@link TemplateParameter}.
+ *
+ * @version $Rev$ $Date$
+ */
+public class TemplateParameterTest {
+
+ /**
+ * Tests {@link TemplateParameter#TemplateParameter(String, String, String, String, boolean)}.
+ */
+ @Test
+ public void testTemplateParameter() {
+ TemplateParameter parameter = new TemplateParameter("name", "exportedName", "type", "defaultValue", true);
+ assertEquals("name", parameter.getName());
+ assertEquals("exportedName", parameter.getExportedName());
+ assertEquals("type", parameter.getType());
+ assertEquals("defaultValue", parameter.getDefaultValue());
+ assertTrue(parameter.isRequired());
+ assertEquals("ExportedName", parameter.getGetterSetterSuffix());
+ assertFalse(parameter.isBody());
+ assertFalse(parameter.isRequest());
+
+ parameter = new TemplateParameter("name", "exportedName", Request.class.getName(), "defaultValue", false);
+ assertEquals("name", parameter.getName());
+ assertEquals("exportedName", parameter.getExportedName());
+ assertEquals(Request.class.getName(), parameter.getType());
+ assertEquals("defaultValue", parameter.getDefaultValue());
+ assertFalse(parameter.isRequired());
+ assertEquals("ExportedName", parameter.getGetterSetterSuffix());
+ assertFalse(parameter.isBody());
+ assertTrue(parameter.isRequest());
+
+ parameter = new TemplateParameter("name", "exportedName", ModelBody.class.getName(), "defaultValue", false);
+ assertEquals("name", parameter.getName());
+ assertEquals("exportedName", parameter.getExportedName());
+ assertEquals(ModelBody.class.getName(), parameter.getType());
+ assertEquals("defaultValue", parameter.getDefaultValue());
+ assertFalse(parameter.isRequired());
+ assertEquals("ExportedName", parameter.getGetterSetterSuffix());
+ assertTrue(parameter.isBody());
+ assertFalse(parameter.isRequest());
+ }
+
+ /**
+ * Tests {@link TemplateParameter#setDocumentation(String)}.
+ */
+ @Test
+ public void testSetDocumentation() {
+ TemplateParameter parameter = new TemplateParameter("name", "exportedName", "type", "defaultValue", true);
+ parameter.setDocumentation("docs");
+ assertEquals("docs", parameter.getDocumentation());
+ }
+
+ /**
+ * Tests {@link TemplateParameter#toString()}.
+ */
+ @Test
+ public void testToString() {
+ TemplateParameter parameter = new TemplateParameter("name", "exportedName", "type", "defaultValue", true);
+ assertEquals("TemplateParameter [name=name, exportedName=exportedName, " +
+ "documentation=null, type=type, defaultValue=defaultValue, required=true]", parameter.toString());
+ }
+
+}
Propchange: tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/model/TemplateParameterTest.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/model/TemplateParameterTest.java
------------------------------------------------------------------------------
svn:keywords = Date Author Id Revision HeadURL
Added: tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/model/TemplateSuiteTest.java
URL: http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/model/TemplateSuiteTest.java?rev=1037330&view=auto
==============================================================================
--- tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/model/TemplateSuiteTest.java (added)
+++ tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/model/TemplateSuiteTest.java Sat Nov 20 21:17:31 2010
@@ -0,0 +1,97 @@
+/**
+ *
+ */
+package org.apache.tiles.autotag.model;
+
+import static org.easymock.classextension.EasyMock.*;
+import static org.junit.Assert.*;
+
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
+
+import org.junit.Test;
+
+/**
+ * Tests {@link TemplateSuite}.
+ *
+ * @version $Rev$ $Date$
+ */
+public class TemplateSuiteTest {
+
+ /**
+ * Test method for {@link org.apache.tiles.autotag.model.TemplateSuite#TemplateSuite(java.lang.String, java.lang.String)}.
+ */
+ @Test
+ public void testTemplateSuiteCostructor1() {
+ TemplateSuite suite = new TemplateSuite("name", "docs");
+ assertEquals("name", suite.getName());
+ assertEquals("docs", suite.getDocumentation());
+ assertTrue(suite.getTemplateClasses().isEmpty());
+ assertNotNull(suite.getCustomVariables());
+ }
+
+ /**
+ * Test method for {@link org.apache.tiles.autotag.model.TemplateSuite#TemplateSuite(java.lang.String, java.lang.String, java.lang.Iterable)}.
+ */
+ @Test
+ public void testTemplateSuiteConstructor2() {
+ TemplateClass class1 = createMock(TemplateClass.class);
+ TemplateClass class2 = createMock(TemplateClass.class);
+ expect(class1.getName()).andReturn("class1");
+ expect(class2.getName()).andReturn("class2");
+
+ replay(class1, class2);
+ List<TemplateClass> classes = new ArrayList<TemplateClass>();
+ classes.add(class1);
+ classes.add(class2);
+ TemplateSuite suite = new TemplateSuite("name", "docs", classes);
+ assertEquals("name", suite.getName());
+ assertEquals("docs", suite.getDocumentation());
+ Iterator<TemplateClass> clazzes = suite.getTemplateClasses().iterator();
+ assertSame(class1, clazzes.next());
+ assertSame(class2, clazzes.next());
+ assertFalse(clazzes.hasNext());
+ assertSame(class1, suite.getTemplateClassByName("class1"));
+ assertSame(class2, suite.getTemplateClassByName("class2"));
+ verify(class1, class2);
+ }
+
+ /**
+ * Test method for {@link org.apache.tiles.autotag.model.TemplateSuite#addTemplateClass(org.apache.tiles.autotag.model.TemplateClass)}.
+ */
+ @Test
+ public void testAddTemplateClass() {
+ TemplateClass class1 = createMock(TemplateClass.class);
+ TemplateClass class2 = createMock(TemplateClass.class);
+ expect(class1.getName()).andReturn("class1");
+ expect(class2.getName()).andReturn("class2");
+
+ replay(class1, class2);
+ List<TemplateClass> classes = new ArrayList<TemplateClass>();
+ classes.add(class1);
+ classes.add(class2);
+ TemplateSuite suite = new TemplateSuite("name", "docs");
+ assertEquals("name", suite.getName());
+ assertEquals("docs", suite.getDocumentation());
+ assertTrue(suite.getTemplateClasses().isEmpty());
+ suite.addTemplateClass(class1);
+ suite.addTemplateClass(class2);
+ Iterator<TemplateClass> clazzes = suite.getTemplateClasses().iterator();
+ assertSame(class1, clazzes.next());
+ assertSame(class2, clazzes.next());
+ assertFalse(clazzes.hasNext());
+ assertSame(class1, suite.getTemplateClassByName("class1"));
+ assertSame(class2, suite.getTemplateClassByName("class2"));
+ verify(class1, class2);
+ }
+
+ /**
+ * Test method for {@link org.apache.tiles.autotag.model.TemplateSuite#toString()}.
+ */
+ @Test
+ public void testToString() {
+ TemplateSuite suite = new TemplateSuite("name", "docs");
+ assertEquals("TemplateSuite [name=name, documentation=docs, customVariables={}, templateClasses={}]", suite.toString());
+ }
+}
Propchange: tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/model/TemplateSuiteTest.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/model/TemplateSuiteTest.java
------------------------------------------------------------------------------
svn:keywords = Date Author Id Revision HeadURL
Added: tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/tool/StringToolTest.java
URL: http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/tool/StringToolTest.java?rev=1037330&view=auto
==============================================================================
--- tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/tool/StringToolTest.java (added)
+++ tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/tool/StringToolTest.java Sat Nov 20 21:17:31 2010
@@ -0,0 +1,65 @@
+/**
+ *
+ */
+package org.apache.tiles.autotag.tool;
+
+import static org.junit.Assert.*;
+
+import java.util.List;
+
+import org.junit.Test;
+
+/**
+ * Tests {@link StringTool}.
+ *
+ * @version $Rev$ $Date$
+ */
+public class StringToolTest {
+
+ /**
+ * Test method for {@link org.apache.tiles.autotag.tool.StringTool#splitOnNewlines(java.lang.String)}.
+ */
+ @Test
+ public void testSplitOnNewlines() {
+ StringTool tool = new StringTool();
+ List<String> splitted = tool.splitOnNewlines("time\nto\nsplit");
+ assertEquals(3, splitted.size());
+ assertEquals("time", splitted.get(0));
+ assertEquals("to", splitted.get(1));
+ assertEquals("split", splitted.get(2));
+ splitted = tool.splitOnNewlines(null);
+ assertTrue(splitted.isEmpty());
+ }
+
+ /**
+ * Test method for {@link org.apache.tiles.autotag.tool.StringTool#capitalizeFirstLetter(java.lang.String)}.
+ */
+ @Test
+ public void testCapitalizeFirstLetter() {
+ StringTool tool = new StringTool();
+ assertEquals("Whatever", tool.capitalizeFirstLetter("whatever"));
+ }
+
+ /**
+ * Test method for {@link org.apache.tiles.autotag.tool.StringTool#getDefaultValue(java.lang.String, java.lang.String)}.
+ */
+ @Test
+ public void testGetDefaultValue() {
+ StringTool tool = new StringTool();
+ assertEquals("0", tool.getDefaultValue("byte", null));
+ assertEquals("1", tool.getDefaultValue("byte", "1"));
+ assertEquals("null", tool.getDefaultValue("Whatever", null));
+ assertEquals("thatsit", tool.getDefaultValue("Whatever", "thatsit"));
+ }
+
+ /**
+ * Test method for {@link org.apache.tiles.autotag.tool.StringTool#getClassToCast(java.lang.String)}.
+ */
+ @Test
+ public void testGetClassToCast() {
+ StringTool tool = new StringTool();
+ assertEquals(Byte.class.getName(), tool.getClassToCast("byte"));
+ assertEquals("Whatever", tool.getClassToCast("Whatever"));
+ }
+
+}
Propchange: tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/tool/StringToolTest.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: tiles/sandbox/trunk/tiles-autotag/tiles-autotag-core/src/test/java/org/apache/tiles/autotag/tool/StringToolTest.java
------------------------------------------------------------------------------
svn:keywords = Date Author Id Revision HeadURL