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/05/08 20:05:20 UTC
svn commit: r942431 - in
/tiles/sandbox/trunk/tiles-request/tiles-request-velocity/src:
main/java/org/apache/tiles/request/velocity/
main/java/org/apache/tiles/request/velocity/extractor/
test/java/org/apache/tiles/request/velocity/ test/java/org/apach...
Author: apetrelli
Date: Sat May 8 18:05:19 2010
New Revision: 942431
URL: http://svn.apache.org/viewvc?rev=942431&view=rev
Log:
TILESSB-31
Refactored Velocity request support.
Added:
tiles/sandbox/trunk/tiles-request/tiles-request-velocity/src/main/java/org/apache/tiles/request/velocity/extractor/
tiles/sandbox/trunk/tiles-request/tiles-request-velocity/src/main/java/org/apache/tiles/request/velocity/extractor/VelocityScopeExtractor.java (with props)
tiles/sandbox/trunk/tiles-request/tiles-request-velocity/src/test/java/org/apache/tiles/request/velocity/VelocityScopeMapTest.java (with props)
tiles/sandbox/trunk/tiles-request/tiles-request-velocity/src/test/java/org/apache/tiles/request/velocity/extractor/
tiles/sandbox/trunk/tiles-request/tiles-request-velocity/src/test/java/org/apache/tiles/request/velocity/extractor/VelocityScopeExtractorTest.java (with props)
Modified:
tiles/sandbox/trunk/tiles-request/tiles-request-velocity/src/main/java/org/apache/tiles/request/velocity/VelocityRequest.java
tiles/sandbox/trunk/tiles-request/tiles-request-velocity/src/main/java/org/apache/tiles/request/velocity/VelocityScopeMap.java
tiles/sandbox/trunk/tiles-request/tiles-request-velocity/src/test/java/org/apache/tiles/request/velocity/VelocityRequestTest.java
Modified: tiles/sandbox/trunk/tiles-request/tiles-request-velocity/src/main/java/org/apache/tiles/request/velocity/VelocityRequest.java
URL: http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles-request/tiles-request-velocity/src/main/java/org/apache/tiles/request/velocity/VelocityRequest.java?rev=942431&r1=942430&r2=942431&view=diff
==============================================================================
--- tiles/sandbox/trunk/tiles-request/tiles-request-velocity/src/main/java/org/apache/tiles/request/velocity/VelocityRequest.java (original)
+++ tiles/sandbox/trunk/tiles-request/tiles-request-velocity/src/main/java/org/apache/tiles/request/velocity/VelocityRequest.java Sat May 8 18:05:19 2010
@@ -66,6 +66,16 @@ public class VelocityRequest extends Abs
private Map<String, Object> pageScope;
+ public static VelocityRequest createVelocityRequest(
+ ApplicationContext applicationContext, HttpServletRequest request,
+ HttpServletResponse response, Context velocityContext, Writer writer) {
+ Request servletRequest = new ServletRequest(
+ applicationContext, request, response);
+ VelocityRequest velocityRequest = new VelocityRequest(
+ servletRequest, velocityContext, writer);
+ return velocityRequest;
+ }
+
/**
* Constructor.
*
@@ -159,14 +169,4 @@ public class VelocityRequest extends Abs
}
return pageScope;
}
-
- public static Request createVelocityRequest(ApplicationContext applicationContext,
- HttpServletRequest request, HttpServletResponse response,
- Context velocityContext, Writer writer) {
- Request servletRequest = new ServletRequest(
- applicationContext, request, response);
- Request velocityRequest = new VelocityRequest(
- servletRequest, velocityContext, writer);
- return velocityRequest;
- }
}
Modified: tiles/sandbox/trunk/tiles-request/tiles-request-velocity/src/main/java/org/apache/tiles/request/velocity/VelocityScopeMap.java
URL: http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles-request/tiles-request-velocity/src/main/java/org/apache/tiles/request/velocity/VelocityScopeMap.java?rev=942431&r1=942430&r2=942431&view=diff
==============================================================================
--- tiles/sandbox/trunk/tiles-request/tiles-request-velocity/src/main/java/org/apache/tiles/request/velocity/VelocityScopeMap.java (original)
+++ tiles/sandbox/trunk/tiles-request/tiles-request-velocity/src/main/java/org/apache/tiles/request/velocity/VelocityScopeMap.java Sat May 8 18:05:19 2010
@@ -20,15 +20,11 @@
*/
package org.apache.tiles.request.velocity;
-import java.util.ArrayList;
-import java.util.Collection;
import java.util.HashSet;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
import java.util.Set;
-import org.apache.tiles.request.util.MapEntry;
+import org.apache.tiles.request.collection.ScopeMap;
+import org.apache.tiles.request.velocity.extractor.VelocityScopeExtractor;
import org.apache.velocity.context.Context;
/**
@@ -38,101 +34,42 @@ import org.apache.velocity.context.Conte
* @version $Rev$ $Date$
*/
-final class VelocityScopeMap implements Map<String, Object> {
-
+final class VelocityScopeMap extends ScopeMap {
/**
* The request object to use.
*/
private Context request = null;
-
/**
* Constructor.
*
* @param request The request object to use.
*/
public VelocityScopeMap(Context request) {
+ super(new VelocityScopeExtractor(request));
this.request = request;
}
-
- /** {@inheritDoc} */
- public void clear() {
- Object[] keys = request.getKeys();
- for (Object key: keys) {
- request.remove(key);
- }
- }
-
-
- /** {@inheritDoc} */
- public boolean containsKey(Object key) {
- return request.containsKey(key);
- }
-
-
- /** {@inheritDoc} */
- public boolean containsValue(Object value) {
- if (value == null) {
- return (false);
- }
- Object[] keys = request.getKeys();
- for (Object key : keys) {
- Object next = request.get((String) key);
- if (next == value) {
- return (true);
- }
- }
- return (false);
- }
-
-
- /** {@inheritDoc} */
- public Set<Map.Entry<String, Object>> entrySet() {
- Set<Map.Entry<String, Object>> set = new HashSet<Map.Entry<String, Object>>();
- Object[] keys = request.getKeys();
- for (Object key : keys) {
- set.add(new MapEntry<String, Object>((String) key,
- request.get((String) key), true));
- }
- return (set);
- }
-
-
- /** {@inheritDoc} */
@Override
- public boolean equals(Object o) {
- Context otherRequest = ((VelocityScopeMap) o).request;
- boolean retValue = true;
- synchronized (request) {
- for (Object key : request.getKeys()) {
- String attributeName = (String) key;
- retValue = request.get(attributeName).equals(
- otherRequest.get(attributeName));
- }
- }
-
- return retValue;
+ public Object remove(Object key) {
+ return request.remove(key);
}
-
- /** {@inheritDoc} */
- public Object get(Object key) {
- return (request.get(key(key)));
+ @Override
+ public Object put(String key, Object value) {
+ return request.put(key, value);
}
-
/** {@inheritDoc} */
- @Override
- public int hashCode() {
- return (request.hashCode());
+ public boolean containsKey(Object key) {
+ return request.containsKey(key);
}
/** {@inheritDoc} */
public boolean isEmpty() {
- return (size() < 1);
+ return size() < 1;
}
@@ -145,70 +82,8 @@ final class VelocityScopeMap implements
return (set);
}
-
- /** {@inheritDoc} */
- public Object put(String key, Object value) {
- if (value == null) {
- return (remove(key));
- }
- String skey = key(key);
- Object previous = request.get(skey);
- request.put(skey, value);
- return (previous);
- }
-
-
- /** {@inheritDoc} */
- public void putAll(Map<? extends String, ? extends Object> map) {
- Iterator<? extends String> keys = map.keySet().iterator();
- while (keys.hasNext()) {
- String key = keys.next();
- request.put(key, map.get(key));
- }
- }
-
-
- /** {@inheritDoc} */
- public Object remove(Object key) {
- String skey = key(key);
- Object previous = request.get(skey);
- request.remove(skey);
- return (previous);
- }
-
-
/** {@inheritDoc} */
public int size() {
return request.getKeys().length;
}
-
-
- /** {@inheritDoc} */
- public Collection<Object> values() {
- List<Object> list = new ArrayList<Object>();
- for (Object key : request.getKeys()) {
- list.add(request.get((String) key));
- }
- return (list);
- }
-
-
- /**
- * Returns the string representation of the key.
- *
- * @param key The key.
- * @return The string representation of the key.
- * @throws IllegalArgumentException If the key is <code>null</code>.
- */
- private String key(Object key) {
- if (key == null) {
- throw new IllegalArgumentException();
- } else if (key instanceof String) {
- return ((String) key);
- } else {
- return (key.toString());
- }
- }
-
-
}
Added: tiles/sandbox/trunk/tiles-request/tiles-request-velocity/src/main/java/org/apache/tiles/request/velocity/extractor/VelocityScopeExtractor.java
URL: http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles-request/tiles-request-velocity/src/main/java/org/apache/tiles/request/velocity/extractor/VelocityScopeExtractor.java?rev=942431&view=auto
==============================================================================
--- tiles/sandbox/trunk/tiles-request/tiles-request-velocity/src/main/java/org/apache/tiles/request/velocity/extractor/VelocityScopeExtractor.java (added)
+++ tiles/sandbox/trunk/tiles-request/tiles-request-velocity/src/main/java/org/apache/tiles/request/velocity/extractor/VelocityScopeExtractor.java Sat May 8 18:05:19 2010
@@ -0,0 +1,56 @@
+package org.apache.tiles.request.velocity.extractor;
+
+import java.util.Enumeration;
+
+import org.apache.tiles.request.collection.extractor.AttributeExtractor;
+import org.apache.velocity.context.Context;
+
+public class VelocityScopeExtractor implements AttributeExtractor {
+
+ private Context context;
+
+ public VelocityScopeExtractor(Context context) {
+ this.context = context;
+ }
+
+ @Override
+ public void removeValue(String name) {
+ context.remove(name);
+ }
+
+ @Override
+ public Enumeration<String> getKeys() {
+ return new KeyEnumeration(context.getKeys());
+ }
+
+ @Override
+ public Object getValue(String key) {
+ return context.get(key);
+ }
+
+ @Override
+ public void setValue(String key, Object value) {
+ context.put(key, value);
+ }
+
+ private static class KeyEnumeration implements Enumeration<String> {
+
+ private int index = 0;
+
+ private Object[] keys;
+
+ public KeyEnumeration(Object[] keys) {
+ this.keys = keys;
+ }
+
+ @Override
+ public boolean hasMoreElements() {
+ return index < keys.length;
+ }
+
+ @Override
+ public String nextElement() {
+ return (String) keys[index++];
+ }
+ }
+}
Propchange: tiles/sandbox/trunk/tiles-request/tiles-request-velocity/src/main/java/org/apache/tiles/request/velocity/extractor/VelocityScopeExtractor.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: tiles/sandbox/trunk/tiles-request/tiles-request-velocity/src/main/java/org/apache/tiles/request/velocity/extractor/VelocityScopeExtractor.java
------------------------------------------------------------------------------
svn:keywords = Date Author Id Revision HeadURL
Modified: tiles/sandbox/trunk/tiles-request/tiles-request-velocity/src/test/java/org/apache/tiles/request/velocity/VelocityRequestTest.java
URL: http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles-request/tiles-request-velocity/src/test/java/org/apache/tiles/request/velocity/VelocityRequestTest.java?rev=942431&r1=942430&r2=942431&view=diff
==============================================================================
--- tiles/sandbox/trunk/tiles-request/tiles-request-velocity/src/test/java/org/apache/tiles/request/velocity/VelocityRequestTest.java (original)
+++ tiles/sandbox/trunk/tiles-request/tiles-request-velocity/src/test/java/org/apache/tiles/request/velocity/VelocityRequestTest.java Sat May 8 18:05:19 2010
@@ -21,10 +21,12 @@
package org.apache.tiles.request.velocity;
-import static org.junit.Assert.*;
+import static org.easymock.EasyMock.*;
import static org.easymock.classextension.EasyMock.*;
+import static org.junit.Assert.*;
import java.io.IOException;
+import java.io.PrintWriter;
import java.io.StringWriter;
import javax.servlet.RequestDispatcher;
@@ -32,10 +34,10 @@ import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
-import org.apache.tiles.request.AbstractRequest;
+import org.apache.tiles.request.ApplicationContext;
import org.apache.tiles.request.Request;
import org.apache.tiles.request.servlet.ExternalWriterHttpServletResponse;
-import org.apache.tiles.request.velocity.VelocityRequest;
+import org.apache.tiles.request.servlet.ServletRequest;
import org.apache.velocity.context.Context;
import org.junit.Before;
import org.junit.Test;
@@ -70,6 +72,38 @@ public class VelocityRequestTest {
}
/**
+ * Tests {@link VelocityRequest
+ * #createVelocityRequest(org.apache.tiles.request.ApplicationContext, HttpServletRequest, HttpServletResponse, Context, java.io.Writer)}.
+ * @throws IOException If something goes wrong.
+ * @throws ServletException If something goes wrong.
+ */
+ @Test
+ public void testCreateVelocityRequest() {
+ HttpServletRequest httpRequest = createMock(HttpServletRequest.class);
+ HttpServletResponse response = createMock(HttpServletResponse.class);
+ ApplicationContext applicationContext = createMock(ApplicationContext.class);
+
+ replay(velocityContext, httpRequest, response, applicationContext);
+ context = VelocityRequest.createVelocityRequest(applicationContext, httpRequest, response, velocityContext, writer);
+ ServletRequest servletRequest = (ServletRequest) context.getWrappedRequest();
+ assertEquals(httpRequest, servletRequest.getRequest());
+ assertEquals(response, servletRequest.getResponse());
+ verify(velocityContext, httpRequest, response, applicationContext);
+ }
+
+ /**
+ * Tests {@link FreemarkerRequest#getNativeScopes()}.
+ */
+ @Test
+ public void testGetNativeScopes() {
+ Request enclosedRequest = createMock(Request.class);
+ replay(enclosedRequest);
+ context = new VelocityRequest(enclosedRequest, velocityContext, writer);
+ assertArrayEquals(new String[] {"page"}, context.getNativeScopes());
+ verify(enclosedRequest);
+ }
+
+ /**
* Tests {@link VelocityRequest#doInclude(String)}.
*
* @throws IOException If something goes wrong.
@@ -97,6 +131,59 @@ public class VelocityRequestTest {
}
/**
+ * Tests {@link VelocityRequest#doInclude(String)}.
+ *
+ * @throws IOException If something goes wrong.
+ * @throws ServletException If something goes wrong.
+ */
+ @Test(expected=IOException.class)
+ public void testDoIncludeNoRequestDispatcher() throws IOException {
+ String path = "this way";
+ Request enclosedRequest = createMock(Request.class);
+ HttpServletRequest servletRequest = createMock(HttpServletRequest.class);
+ HttpServletResponse response = createMock(HttpServletResponse.class);
+
+ expect(servletRequest.getRequestDispatcher("this way")).andReturn(null);
+ replay(servletRequest, response);
+ Object[] requestItems = new Object[] {servletRequest, response};
+
+ expect(enclosedRequest.getRequestObjects()).andReturn(requestItems);
+
+ replay(velocityContext, enclosedRequest);
+ context = new VelocityRequest(enclosedRequest, velocityContext, writer);
+ context.doInclude(path);
+ verify(velocityContext, enclosedRequest, servletRequest, response);
+ }
+
+ /**
+ * Tests {@link VelocityRequest#doInclude(String)}.
+ *
+ * @throws IOException If something goes wrong.
+ * @throws ServletException If something goes wrong.
+ */
+ @Test(expected=IOException.class)
+ public void testDoIncludeServletException() throws IOException, ServletException {
+ String path = "this way";
+ Request enclosedRequest = createMock(Request.class);
+ HttpServletRequest servletRequest = createMock(HttpServletRequest.class);
+ HttpServletResponse response = createMock(HttpServletResponse.class);
+ RequestDispatcher dispatcher = createMock(RequestDispatcher.class);
+
+ expect(servletRequest.getRequestDispatcher("this way")).andReturn(dispatcher);
+ dispatcher.include(eq(servletRequest), isA(ExternalWriterHttpServletResponse.class));
+ expectLastCall().andThrow(new ServletException());
+ replay(servletRequest, response, dispatcher);
+ Object[] requestItems = new Object[] {servletRequest, response};
+
+ expect(enclosedRequest.getRequestObjects()).andReturn(requestItems);
+
+ replay(velocityContext, enclosedRequest);
+ context = new VelocityRequest(enclosedRequest, velocityContext, writer);
+ context.doInclude(path);
+ verify(velocityContext, enclosedRequest, servletRequest, response, dispatcher);
+ }
+
+ /**
* Tests {@link VelocityRequest#getPrintWriter()}.
*
* @throws IOException If something goes wrong.
@@ -112,6 +199,37 @@ public class VelocityRequestTest {
}
/**
+ * Tests {@link VelocityRequest#getPrintWriter()}.
+ *
+ * @throws IOException If something goes wrong.
+ */
+ @Test
+ public void testGetPrintWriterPrintWriter() {
+ Request enclosedRequest = createMock(Request.class);
+
+ PrintWriter printWriter = new PrintWriter(writer);
+ replay(velocityContext, enclosedRequest);
+ context = new VelocityRequest(enclosedRequest, velocityContext, printWriter);
+ assertEquals(printWriter, context.getPrintWriter());
+ verify(velocityContext, enclosedRequest);
+ }
+
+ /**
+ * Tests {@link VelocityRequest#getPrintWriter()}.
+ *
+ * @throws IOException If something goes wrong.
+ */
+ @Test(expected=IllegalStateException.class)
+ public void testGetPrintWriterNoWriter() {
+ Request enclosedRequest = createMock(Request.class);
+
+ replay(velocityContext, enclosedRequest);
+ context = new VelocityRequest(enclosedRequest, velocityContext, null);
+ context.getPrintWriter();
+ verify(velocityContext, enclosedRequest);
+ }
+
+ /**
* Tests {@link VelocityRequest#getWriter()}.
*
* @throws IOException If something goes wrong.
@@ -127,6 +245,21 @@ public class VelocityRequestTest {
}
/**
+ * Tests {@link VelocityRequest#getWriter()}.
+ *
+ * @throws IOException If something goes wrong.
+ */
+ @Test(expected=IllegalStateException.class)
+ public void testGetWriterNoWriter() {
+ Request enclosedRequest = createMock(Request.class);
+
+ replay(velocityContext, enclosedRequest);
+ context = new VelocityRequest(enclosedRequest, velocityContext, null);
+ context.getWriter();
+ verify(velocityContext, enclosedRequest);
+ }
+
+ /**
* Tests {@link VelocityRequest#getRequestObjects()}.
* @throws IOException If something goes wrong.
* @throws ServletException If something goes wrong.
@@ -148,4 +281,40 @@ public class VelocityRequestTest {
response, writer }, context.getRequestObjects());
verify(velocityContext, enclosedRequest, servletRequest, response);
}
+
+ /**
+ * Tests {@link VelocityRequest#getRequestObjects()}.
+ * @throws IOException If something goes wrong.
+ * @throws ServletException If something goes wrong.
+ */
+ @Test
+ public void testGetRequestObjectsNoWriter() {
+ Request enclosedRequest = createMock(Request.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 VelocityRequest(enclosedRequest, velocityContext, null);
+ assertArrayEquals(new Object[] { velocityContext, servletRequest,
+ response}, context.getRequestObjects());
+ verify(velocityContext, enclosedRequest, servletRequest, response);
+ }
+
+ /**
+ * Tests {@link VelocityRequest#getPageScope()}.
+ */
+ @Test
+ public void testGetPageScope() {
+ Request enclosedRequest = createMock(Request.class);
+
+ replay(velocityContext, enclosedRequest);
+ context = new VelocityRequest(enclosedRequest, velocityContext, writer);
+ assertTrue(context.getPageScope() instanceof VelocityScopeMap);
+ verify(velocityContext, enclosedRequest);
+ }
}
Added: tiles/sandbox/trunk/tiles-request/tiles-request-velocity/src/test/java/org/apache/tiles/request/velocity/VelocityScopeMapTest.java
URL: http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles-request/tiles-request-velocity/src/test/java/org/apache/tiles/request/velocity/VelocityScopeMapTest.java?rev=942431&view=auto
==============================================================================
--- tiles/sandbox/trunk/tiles-request/tiles-request-velocity/src/test/java/org/apache/tiles/request/velocity/VelocityScopeMapTest.java (added)
+++ tiles/sandbox/trunk/tiles-request/tiles-request-velocity/src/test/java/org/apache/tiles/request/velocity/VelocityScopeMapTest.java Sat May 8 18:05:19 2010
@@ -0,0 +1,121 @@
+/**
+ *
+ */
+package org.apache.tiles.request.velocity;
+
+import static org.easymock.classextension.EasyMock.*;
+import static org.junit.Assert.*;
+
+import java.util.Set;
+
+import org.apache.velocity.context.Context;
+import org.junit.Before;
+import org.junit.Test;
+
+/**
+ * Tests {@link VelocityScopeMap}.
+ *
+ * @version $Rev$ $Date$
+ */
+public class VelocityScopeMapTest {
+
+ private Context request;
+
+ private VelocityScopeMap map;
+
+ /**
+ * Sets up the test.
+ */
+ @Before
+ public void setUp() {
+ request = createMock(Context.class);
+ map = new VelocityScopeMap(request);
+ }
+
+ /**
+ * Test method for {@link org.apache.tiles.request.velocity.VelocityScopeMap#containsKey(java.lang.Object)}.
+ */
+ @Test
+ public void testContainsKey() {
+ expect(request.containsKey("key")).andReturn(true);
+
+ replay(request);
+ assertTrue(map.containsKey("key"));
+ verify(request);
+ }
+
+ /**
+ * Test method for {@link org.apache.tiles.request.velocity.VelocityScopeMap#isEmpty()}.
+ */
+ @Test
+ public void testIsEmpty() {
+ expect(request.getKeys()).andReturn(new Object[0]);
+
+ replay(request);
+ assertTrue(map.isEmpty());
+ verify(request);
+ }
+
+ /**
+ * Test method for {@link org.apache.tiles.request.velocity.VelocityScopeMap#isEmpty()}.
+ */
+ @Test
+ public void testIsEmptyFalse() {
+ expect(request.getKeys()).andReturn(new Object[] {"one", "two"});
+
+ replay(request);
+ assertFalse(map.isEmpty());
+ verify(request);
+ }
+
+ /**
+ * Test method for {@link org.apache.tiles.request.velocity.VelocityScopeMap#keySet()}.
+ */
+ @Test
+ public void testKeySet() {
+ expect(request.getKeys()).andReturn(new Object[] {"one", "two"});
+
+ replay(request);
+ Set<String> set = map.keySet();
+ assertEquals(2, set.size());
+ assertTrue(set.contains("one"));
+ assertTrue(set.contains("two"));
+ verify(request);
+ }
+
+ /**
+ * Test method for {@link org.apache.tiles.request.velocity.VelocityScopeMap#size()}.
+ */
+ @Test
+ public void testSize() {
+ expect(request.getKeys()).andReturn(new Object[] {"one", "two"});
+
+ replay(request);
+ assertEquals(2, map.size());
+ verify(request);
+ }
+
+ /**
+ * Test method for {@link org.apache.tiles.request.velocity.VelocityScopeMap#put(java.lang.String, java.lang.Object)}.
+ */
+ @Test
+ public void testPutStringObject() {
+ expect(request.put("key", "value")).andReturn("oldValue");
+
+ replay(request);
+ assertEquals("oldValue", map.put("key", "value"));
+ verify(request);
+ }
+
+ /**
+ * Test method for {@link org.apache.tiles.request.velocity.VelocityScopeMap#remove(java.lang.Object)}.
+ */
+ @Test
+ public void testRemoveObject() {
+ expect(request.remove("key")).andReturn("value");
+
+ replay(request);
+ assertEquals("value", map.remove("key"));
+ verify(request);
+ }
+}
Propchange: tiles/sandbox/trunk/tiles-request/tiles-request-velocity/src/test/java/org/apache/tiles/request/velocity/VelocityScopeMapTest.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: tiles/sandbox/trunk/tiles-request/tiles-request-velocity/src/test/java/org/apache/tiles/request/velocity/VelocityScopeMapTest.java
------------------------------------------------------------------------------
svn:keywords = Date Author Id Revision HeadURL
Added: tiles/sandbox/trunk/tiles-request/tiles-request-velocity/src/test/java/org/apache/tiles/request/velocity/extractor/VelocityScopeExtractorTest.java
URL: http://svn.apache.org/viewvc/tiles/sandbox/trunk/tiles-request/tiles-request-velocity/src/test/java/org/apache/tiles/request/velocity/extractor/VelocityScopeExtractorTest.java?rev=942431&view=auto
==============================================================================
--- tiles/sandbox/trunk/tiles-request/tiles-request-velocity/src/test/java/org/apache/tiles/request/velocity/extractor/VelocityScopeExtractorTest.java (added)
+++ tiles/sandbox/trunk/tiles-request/tiles-request-velocity/src/test/java/org/apache/tiles/request/velocity/extractor/VelocityScopeExtractorTest.java Sat May 8 18:05:19 2010
@@ -0,0 +1,87 @@
+/**
+ *
+ */
+package org.apache.tiles.request.velocity.extractor;
+
+import static org.easymock.classextension.EasyMock.*;
+import static org.junit.Assert.*;
+
+import java.util.Enumeration;
+
+import org.apache.velocity.context.Context;
+import org.junit.Before;
+import org.junit.Test;
+
+/**
+ * Tests {@link VelocityScopeExtractor}.
+ *
+ * @version $Rev$ $Date$
+ */
+public class VelocityScopeExtractorTest {
+
+ private Context request;
+
+ private VelocityScopeExtractor extractor;
+
+ /**
+ * Sets up the test.
+ */
+ @Before
+ public void setUp() {
+ request = createMock(Context.class);
+ extractor = new VelocityScopeExtractor(request);
+ }
+
+ /**
+ * Test method for {@link org.apache.tiles.request.velocity.extractor.VelocityScopeExtractor#removeValue(java.lang.String)}.
+ */
+ @Test
+ public void testRemoveValue() {
+ expect(request.remove("key")).andReturn("value");
+
+ replay(request);
+ extractor.removeValue("key");
+ verify(request);
+ }
+
+ /**
+ * Test method for {@link org.apache.tiles.request.velocity.extractor.VelocityScopeExtractor#getKeys()}.
+ */
+ @Test
+ public void testGetKeys() {
+ expect(request.getKeys()).andReturn(new Object[] {"one", "two"});
+
+ replay(request);
+ Enumeration<String> keys = extractor.getKeys();
+ assertTrue(keys.hasMoreElements());
+ assertEquals("one", keys.nextElement());
+ assertTrue(keys.hasMoreElements());
+ assertEquals("two", keys.nextElement());
+ assertFalse(keys.hasMoreElements());
+ verify(request);
+ }
+
+ /**
+ * Test method for {@link org.apache.tiles.request.velocity.extractor.VelocityScopeExtractor#getValue(java.lang.String)}.
+ */
+ @Test
+ public void testGetValue() {
+ expect(request.get("key")).andReturn("value");
+
+ replay(request);
+ assertEquals("value", extractor.getValue("key"));
+ verify(request);
+ }
+
+ /**
+ * Test method for {@link org.apache.tiles.request.velocity.extractor.VelocityScopeExtractor#setValue(java.lang.String, java.lang.Object)}.
+ */
+ @Test
+ public void testSetValue() {
+ expect(request.put("key", "value")).andReturn(null);
+
+ replay(request);
+ extractor.setValue("key", "value");
+ verify(request);
+ }
+}
Propchange: tiles/sandbox/trunk/tiles-request/tiles-request-velocity/src/test/java/org/apache/tiles/request/velocity/extractor/VelocityScopeExtractorTest.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: tiles/sandbox/trunk/tiles-request/tiles-request-velocity/src/test/java/org/apache/tiles/request/velocity/extractor/VelocityScopeExtractorTest.java
------------------------------------------------------------------------------
svn:keywords = Date Author Id Revision HeadURL