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 2009/04/05 23:40:15 UTC
svn commit: r762165 - in
/tiles/framework/trunk/tiles-velocity/src/test/java/org: ./ apache/
apache/tiles/ apache/tiles/velocity/ apache/tiles/velocity/context/
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