Author: apetrelli
Date: Sun Apr 5 21:40:14 2009
New Revision: 762165
URL: http://svn.apache.org/viewvc?rev=762165&view=rev
Log:
TILES-382
First bunch of tiles-velocity tests.
Added:
tiles/framework/trunk/tiles-velocity/src/test/java/org/
tiles/framework/trunk/tiles-velocity/src/test/java/org/apache/
tiles/framework/trunk/tiles-velocity/src/test/java/org/apache/tiles/
tiles/framework/trunk/tiles-velocity/src/test/java/org/apache/tiles/velocity/
tiles/framework/trunk/tiles-velocity/src/test/java/org/apache/tiles/velocity/context/
tiles/framework/trunk/tiles-velocity/src/test/java/org/apache/tiles/velocity/context/ExternalWriterHttpServletResponseTest.java
(with props)
tiles/framework/trunk/tiles-velocity/src/test/java/org/apache/tiles/velocity/context/VelocityTilesRequestContextFactoryTest.java
(with props)
tiles/framework/trunk/tiles-velocity/src/test/java/org/apache/tiles/velocity/context/VelocityTilesRequestContextTest.java
(with props)
Added:
tiles/framework/trunk/tiles-velocity/src/test/java/org/apache/tiles/velocity/context/ExternalWriterHttpServletResponseTest.java
URL:
http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-velocity/src/test/java/org/apache/tiles/velocity/context/ExternalWriterHttpServletResponseTest.java?rev=762165&view=auto
==============================================================================
---
tiles/framework/trunk/tiles-velocity/src/test/java/org/apache/tiles/velocity/context/ExternalWriterHttpServletResponseTest.java
(added)
+++
tiles/framework/trunk/tiles-velocity/src/test/java/org/apache/tiles/velocity/context/ExternalWriterHttpServletResponseTest.java
Sun Apr 5 21:40:14 2009
@@ -0,0 +1,40 @@
+/**
+ *
+ */
+package org.apache.tiles.velocity.context;
+
+import static org.junit.Assert.*;
+import static org.easymock.EasyMock.*;
+
+import java.io.IOException;
+import java.io.PrintWriter;
+import java.io.StringWriter;
+import java.io.Writer;
+
+import javax.servlet.http.HttpServletResponse;
+
+import org.junit.Test;
+
+/**
+ * @author antonio
+ *
+ */
+public class ExternalWriterHttpServletResponseTest {
+
+ /**
+ * Test method for {...@link
org.apache.tiles.velocity.context.ExternalWriterHttpServletResponse#getWriter()}.
+ * @throws IOException If something goes wrong.
+ */
+ @Test
+ public void testGetWriter() throws IOException {
+ HttpServletResponse wrappedResponse =
createMock(HttpServletResponse.class);
+ Writer writer = new StringWriter();
+ PrintWriter printWriter = new PrintWriter(writer);
+ replay(wrappedResponse);
+ ExternalWriterHttpServletResponse response = new
ExternalWriterHttpServletResponse(
+ wrappedResponse, printWriter);
+ assertEquals(printWriter, response.getWriter());
+ verify(wrappedResponse);
+ }
+
+}
Propchange:
tiles/framework/trunk/tiles-velocity/src/test/java/org/apache/tiles/velocity/context/ExternalWriterHttpServletResponseTest.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange:
tiles/framework/trunk/tiles-velocity/src/test/java/org/apache/tiles/velocity/context/ExternalWriterHttpServletResponseTest.java
------------------------------------------------------------------------------
svn:keywords = Date Author Id Revision HeadURL
Added:
tiles/framework/trunk/tiles-velocity/src/test/java/org/apache/tiles/velocity/context/VelocityTilesRequestContextFactoryTest.java
URL:
http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-velocity/src/test/java/org/apache/tiles/velocity/context/VelocityTilesRequestContextFactoryTest.java?rev=762165&view=auto
==============================================================================
---
tiles/framework/trunk/tiles-velocity/src/test/java/org/apache/tiles/velocity/context/VelocityTilesRequestContextFactoryTest.java
(added)
+++
tiles/framework/trunk/tiles-velocity/src/test/java/org/apache/tiles/velocity/context/VelocityTilesRequestContextFactoryTest.java
Sun Apr 5 21:40:14 2009
@@ -0,0 +1,57 @@
+package org.apache.tiles.velocity.context;
+
+import static org.junit.Assert.*;
+import static org.easymock.classextension.EasyMock.*;
+
+import java.io.StringWriter;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+import org.apache.tiles.TilesApplicationContext;
+import org.apache.tiles.context.TilesRequestContext;
+import org.apache.tiles.context.TilesRequestContextFactory;
+import org.apache.velocity.context.Context;
+import org.junit.Test;
+
+/**
+ * @author antonio
+ *
+ */
+public class VelocityTilesRequestContextFactoryTest {
+
+ /**
+ * The object to test.
+ */
+ private VelocityTilesRequestContextFactory factory;
+
+ /**
+ * Tests {...@link
VelocityTilesRequestContextFactory#createRequestContext(TilesApplicationContext,
Object...)}.
+ */
+ @Test
+ public void testCreateRequestContext() {
+ StringWriter writer = new StringWriter();
+ TilesRequestContextFactory parentFactory =
createMock(TilesRequestContextFactory.class);
+ TilesApplicationContext applicationContext =
createMock(TilesApplicationContext.class);
+ Context velocityContext = createMock(Context.class);
+ HttpServletRequest request = createMock(HttpServletRequest.class);
+ HttpServletResponse response = createMock(HttpServletResponse.class);
+ TilesRequestContext enclosedRequest =
createMock(TilesRequestContext.class);
+ expect(enclosedRequest.getRequestObjects()).andReturn(new Object[]
{request, response});
+ expect(parentFactory.createRequestContext(applicationContext, request,
response)).andReturn(enclosedRequest);
+ replay(parentFactory, enclosedRequest, applicationContext,
velocityContext, request, response);
+ factory = new VelocityTilesRequestContextFactory();
+ factory.setRequestContextFactory(parentFactory);
+ VelocityTilesRequestContext context = (VelocityTilesRequestContext)
factory
+ .createRequestContext(applicationContext, velocityContext,
+ request, response, writer);
+ assertEquals(enclosedRequest, context.getWrappedRequest());
+ Object[] requestItems = context.getRequestObjects();
+ assertEquals(4, requestItems.length);
+ assertEquals(velocityContext, requestItems[0]);
+ assertEquals(request, requestItems[1]);
+ assertEquals(response, requestItems[2]);
+ assertEquals(writer, requestItems[3]);
+ verify(parentFactory, enclosedRequest, applicationContext,
velocityContext, request, response);
+ }
+}
Propchange:
tiles/framework/trunk/tiles-velocity/src/test/java/org/apache/tiles/velocity/context/VelocityTilesRequestContextFactoryTest.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange:
tiles/framework/trunk/tiles-velocity/src/test/java/org/apache/tiles/velocity/context/VelocityTilesRequestContextFactoryTest.java
------------------------------------------------------------------------------
svn:keywords = Date Author Id Revision HeadURL
Added:
tiles/framework/trunk/tiles-velocity/src/test/java/org/apache/tiles/velocity/context/VelocityTilesRequestContextTest.java
URL:
http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-velocity/src/test/java/org/apache/tiles/velocity/context/VelocityTilesRequestContextTest.java?rev=762165&view=auto
==============================================================================
---
tiles/framework/trunk/tiles-velocity/src/test/java/org/apache/tiles/velocity/context/VelocityTilesRequestContextTest.java
(added)
+++
tiles/framework/trunk/tiles-velocity/src/test/java/org/apache/tiles/velocity/context/VelocityTilesRequestContextTest.java
Sun Apr 5 21:40:14 2009
@@ -0,0 +1,157 @@
+package org.apache.tiles.velocity.context;
+
+import static org.junit.Assert.*;
+import static org.easymock.classextension.EasyMock.*;
+
+import java.io.IOException;
+import java.io.StringWriter;
+
+import javax.servlet.RequestDispatcher;
+import javax.servlet.ServletException;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+import org.apache.tiles.context.TilesRequestContext;
+import org.apache.tiles.servlet.context.ServletUtil;
+import org.apache.velocity.context.Context;
+import org.junit.Before;
+import org.junit.Test;
+
+/**
+ * @author antonio
+ *
+ */
+public class VelocityTilesRequestContextTest {
+
+ /**
+ * The request context to test.
+ */
+ private VelocityTilesRequestContext context;
+
+ /**
+ * The Velocity context.
+ */
+ private Context velocityContext;
+
+ /**
+ * A string writer.
+ */
+ private StringWriter writer;
+
+ /**
+ * @throws java.lang.Exception If something goes wrong.
+ */
+ @Before
+ public void setUp() throws Exception {
+ velocityContext = createMock(Context.class);
+ writer = new StringWriter();
+ }
+
+ /**
+ * Tests {...@link VelocityTilesRequestContext#dispatch(String)}.
+ *
+ * @throws IOException If something goes wrong.
+ * @throws ServletException If something goes wrong.
+ */
+ @Test
+ public void testDispatch() throws IOException, ServletException {
+ String path = "this way";
+ TilesRequestContext enclosedRequest =
createMock(TilesRequestContext.class);
+ HttpServletRequest servletRequest =
createMock(HttpServletRequest.class);
+ HttpServletResponse response = createMock(HttpServletResponse.class);
+ RequestDispatcher dispatcher = createMock(RequestDispatcher.class);
+
+ servletRequest.setAttribute(ServletUtil.FORCE_INCLUDE_ATTRIBUTE_NAME,
true);
+ expect(servletRequest.getRequestDispatcher("this
way")).andReturn(dispatcher);
+ dispatcher.include(eq(servletRequest),
isA(ExternalWriterHttpServletResponse.class));
+ replay(servletRequest, response, dispatcher);
+ Object[] requestItems = new Object[] {servletRequest, response};
+
+ expect(enclosedRequest.getRequestObjects()).andReturn(requestItems);
+
+ replay(velocityContext, enclosedRequest);
+ context = new VelocityTilesRequestContext(enclosedRequest,
velocityContext, writer);
+ context.dispatch(path);
+ verify(velocityContext, enclosedRequest, servletRequest, response,
dispatcher);
+ }
+
+ /**
+ * Tests {...@link VelocityTilesRequestContext#include(String)}.
+ *
+ * @throws IOException If something goes wrong.
+ * @throws ServletException If something goes wrong.
+ */
+ @Test
+ public void testInclude() throws IOException, ServletException {
+ String path = "this way";
+ TilesRequestContext enclosedRequest =
createMock(TilesRequestContext.class);
+ HttpServletRequest servletRequest =
createMock(HttpServletRequest.class);
+ HttpServletResponse response = createMock(HttpServletResponse.class);
+ RequestDispatcher dispatcher = createMock(RequestDispatcher.class);
+
+ servletRequest.setAttribute(ServletUtil.FORCE_INCLUDE_ATTRIBUTE_NAME,
true);
+ expect(servletRequest.getRequestDispatcher("this
way")).andReturn(dispatcher);
+ dispatcher.include(eq(servletRequest),
isA(ExternalWriterHttpServletResponse.class));
+ replay(servletRequest, response, dispatcher);
+ Object[] requestItems = new Object[] {servletRequest, response};
+
+ expect(enclosedRequest.getRequestObjects()).andReturn(requestItems);
+
+ replay(velocityContext, enclosedRequest);
+ context = new VelocityTilesRequestContext(enclosedRequest,
velocityContext, writer);
+ context.include(path);
+ verify(velocityContext, enclosedRequest, servletRequest, response,
dispatcher);
+ }
+
+ /**
+ * Tests {...@link VelocityTilesRequestContext#getPrintWriter()}.
+ *
+ * @throws IOException If something goes wrong.
+ */
+ @Test
+ public void testGetPrintWriter() throws IOException {
+ TilesRequestContext enclosedRequest =
createMock(TilesRequestContext.class);
+
+ replay(velocityContext, enclosedRequest);
+ context = new VelocityTilesRequestContext(enclosedRequest,
velocityContext, writer);
+ assertNotNull(context.getPrintWriter());
+ verify(velocityContext, enclosedRequest);
+ }
+
+ /**
+ * Tests {...@link VelocityTilesRequestContext#getWriter()}.
+ *
+ * @throws IOException If something goes wrong.
+ */
+ @Test
+ public void testGetWriter() throws IOException {
+ TilesRequestContext enclosedRequest =
createMock(TilesRequestContext.class);
+
+ replay(velocityContext, enclosedRequest);
+ context = new VelocityTilesRequestContext(enclosedRequest,
velocityContext, writer);
+ assertEquals(writer, context.getWriter());
+ verify(velocityContext, enclosedRequest);
+ }
+
+ /**
+ * Tests {...@link VelocityTilesRequestContext#getRequestObjects()}.
+ * @throws IOException If something goes wrong.
+ * @throws ServletException If something goes wrong.
+ */
+ @Test
+ public void testGetRequestObjects() throws ServletException, IOException {
+ TilesRequestContext enclosedRequest =
createMock(TilesRequestContext.class);
+ HttpServletRequest servletRequest =
createMock(HttpServletRequest.class);
+ HttpServletResponse response = createMock(HttpServletResponse.class);
+
+ replay(servletRequest, response);
+ Object[] requestItems = new Object[] {servletRequest, response};
+
+ expect(enclosedRequest.getRequestObjects()).andReturn(requestItems);
+
+ replay(velocityContext, enclosedRequest);
+ context = new VelocityTilesRequestContext(enclosedRequest,
velocityContext, writer);
+ assertArrayEquals(new Object[] {velocityContext, servletRequest,
response, writer}, context.getRequestObjects());
+ verify(velocityContext, enclosedRequest, servletRequest, response);
+ }
+}
Propchange:
tiles/framework/trunk/tiles-velocity/src/test/java/org/apache/tiles/velocity/context/VelocityTilesRequestContextTest.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange:
tiles/framework/trunk/tiles-velocity/src/test/java/org/apache/tiles/velocity/context/VelocityTilesRequestContextTest.java
------------------------------------------------------------------------------
svn:keywords = Date Author Id Revision HeadURL