Author: apetrelli
Date: Mon May 19 11:52:49 2008
New Revision: 657919

URL: http://svn.apache.org/viewvc?rev=657919&view=rev
Log:
TILES-275
Added test cases.

Added:
    
tiles/framework/trunk/tiles-core/src/test/java/org/apache/tiles/servlet/context/ServletUtilTest.java
   (with props)
    tiles/framework/trunk/tiles-jsp/src/test/java/org/apache/tiles/jsp/
    tiles/framework/trunk/tiles-jsp/src/test/java/org/apache/tiles/jsp/context/
    
tiles/framework/trunk/tiles-jsp/src/test/java/org/apache/tiles/jsp/context/JspUtilTest.java
   (with props)

Added: 
tiles/framework/trunk/tiles-core/src/test/java/org/apache/tiles/servlet/context/ServletUtilTest.java
URL: 
http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-core/src/test/java/org/apache/tiles/servlet/context/ServletUtilTest.java?rev=657919&view=auto
==============================================================================
--- 
tiles/framework/trunk/tiles-core/src/test/java/org/apache/tiles/servlet/context/ServletUtilTest.java
 (added)
+++ 
tiles/framework/trunk/tiles-core/src/test/java/org/apache/tiles/servlet/context/ServletUtilTest.java
 Mon May 19 11:52:49 2008
@@ -0,0 +1,108 @@
+/*
+ * $Id$
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.tiles.servlet.context;
+
+import javax.servlet.ServletContext;
+import javax.servlet.ServletRequest;
+
+import org.apache.tiles.TilesContainer;
+import org.apache.tiles.access.TilesAccess;
+import org.easymock.EasyMock;
+
+import junit.framework.TestCase;
+
+/**
+ * Tests [EMAIL PROTECTED] ServletUtil}.
+ *
+ * @version $Rev$ $Date$
+ */
+public class ServletUtilTest extends TestCase {
+
+    /**
+     * Tests
+     * [EMAIL PROTECTED] ServletUtil#setCurrentContainer(ServletRequest, 
ServletContext, String)}.
+     */
+    public void testSetCurrentContainer() {
+        ServletRequest request = EasyMock.createMock(ServletRequest.class);
+        ServletContext context = EasyMock.createMock(ServletContext.class);
+        TilesContainer container = EasyMock.createMock(TilesContainer.class);
+        EasyMock.expect(context.getAttribute("myKey")).andReturn(container);
+        request.setAttribute(ServletUtil.CURRENT_CONTAINER_ATTRIBUTE_NAME,
+                container);
+        EasyMock.expect(request.getAttribute(ServletUtil
+                .CURRENT_CONTAINER_ATTRIBUTE_NAME)).andReturn(container);
+        EasyMock.replay(request, context, container);
+        ServletUtil.setCurrentContainer(request, context, "myKey");
+        assertTrue("The containers are not the same", ServletUtil
+                .getCurrentContainer(request, context) == container);
+    }
+
+    /**
+     * Tests
+     * [EMAIL PROTECTED] ServletUtil#setCurrentContainer(ServletRequest, 
ServletContext, TilesContainer)}.
+     */
+    public void testSetCurrentContainerWithContainer() {
+        ServletRequest request = EasyMock.createMock(ServletRequest.class);
+        ServletContext context = EasyMock.createMock(ServletContext.class);
+        TilesContainer container = EasyMock.createMock(TilesContainer.class);
+        request.setAttribute(ServletUtil.CURRENT_CONTAINER_ATTRIBUTE_NAME,
+                container);
+        EasyMock.expect(request.getAttribute(ServletUtil
+                .CURRENT_CONTAINER_ATTRIBUTE_NAME)).andReturn(container);
+        EasyMock.replay(request, context, container);
+        ServletUtil.setCurrentContainer(request, context, container);
+        assertTrue("The containers are not the same", ServletUtil
+                .getCurrentContainer(request, context) == container);
+    }
+
+    /**
+     * Tests [EMAIL PROTECTED] ServletUtil#getCurrentContainer(ServletRequest, 
ServletContext)}.
+     */
+    public void testGetCurrentContainer() {
+        ServletRequest request = EasyMock.createMock(ServletRequest.class);
+        ServletContext context = EasyMock.createMock(ServletContext.class);
+        TilesContainer defaultContainer = EasyMock.createMock(
+                TilesContainer.class);
+        TilesContainer alternateContainer = EasyMock.createMock(
+                TilesContainer.class);
+        EasyMock.expect(request.getAttribute(ServletUtil
+                .CURRENT_CONTAINER_ATTRIBUTE_NAME)).andReturn(null);
+        EasyMock.expect(context.getAttribute(TilesAccess.CONTAINER_ATTRIBUTE))
+                .andReturn(defaultContainer);
+        request.setAttribute(ServletUtil.CURRENT_CONTAINER_ATTRIBUTE_NAME,
+                defaultContainer);
+        request.setAttribute(ServletUtil.CURRENT_CONTAINER_ATTRIBUTE_NAME,
+                alternateContainer);
+        EasyMock.expect(request.getAttribute(ServletUtil
+                
.CURRENT_CONTAINER_ATTRIBUTE_NAME)).andReturn(alternateContainer);
+        EasyMock.replay(request, context, defaultContainer, 
alternateContainer);
+        TilesContainer currentContainer = ServletUtil.getCurrentContainer(
+                request, context);
+        assertTrue("The containers are not the same",
+                currentContainer == defaultContainer);
+        ServletUtil.setCurrentContainer(request, context, alternateContainer);
+        currentContainer = ServletUtil.getCurrentContainer(request, context);
+        EasyMock.verify(request, context, defaultContainer, 
alternateContainer);
+        assertTrue("The containers are not the same",
+                currentContainer == alternateContainer);
+    }
+}

Propchange: 
tiles/framework/trunk/tiles-core/src/test/java/org/apache/tiles/servlet/context/ServletUtilTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
tiles/framework/trunk/tiles-core/src/test/java/org/apache/tiles/servlet/context/ServletUtilTest.java
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL

Added: 
tiles/framework/trunk/tiles-jsp/src/test/java/org/apache/tiles/jsp/context/JspUtilTest.java
URL: 
http://svn.apache.org/viewvc/tiles/framework/trunk/tiles-jsp/src/test/java/org/apache/tiles/jsp/context/JspUtilTest.java?rev=657919&view=auto
==============================================================================
--- 
tiles/framework/trunk/tiles-jsp/src/test/java/org/apache/tiles/jsp/context/JspUtilTest.java
 (added)
+++ 
tiles/framework/trunk/tiles-jsp/src/test/java/org/apache/tiles/jsp/context/JspUtilTest.java
 Mon May 19 11:52:49 2008
@@ -0,0 +1,116 @@
+/*
+ * $Id$
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+package org.apache.tiles.jsp.context;
+
+import javax.servlet.ServletContext;
+import javax.servlet.jsp.PageContext;
+
+import org.apache.tiles.TilesContainer;
+import org.apache.tiles.access.TilesAccess;
+import org.apache.tiles.servlet.context.ServletUtil;
+import org.easymock.classextension.EasyMock;
+
+import junit.framework.TestCase;
+
+/**
+ * Tests [EMAIL PROTECTED] JspUtil}.
+ *
+ * @version $Rev$ $Date$
+ */
+public class JspUtilTest extends TestCase {
+
+    /**
+     * Tests
+     * [EMAIL PROTECTED] JspUtil#setCurrentContainer(PageContext, String)}.
+     */
+    public void testSetCurrentContainer() {
+        PageContext pageContext = EasyMock.createMock(PageContext.class);
+        ServletContext context = EasyMock.createMock(ServletContext.class);
+        TilesContainer container = EasyMock.createMock(TilesContainer.class);
+        EasyMock.expect(pageContext.getServletContext()).andReturn(context);
+        EasyMock.expect(context.getAttribute("myKey")).andReturn(container);
+        pageContext.setAttribute(ServletUtil.CURRENT_CONTAINER_ATTRIBUTE_NAME,
+                container, PageContext.REQUEST_SCOPE);
+        EasyMock.expect(pageContext.getAttribute(ServletUtil
+                .CURRENT_CONTAINER_ATTRIBUTE_NAME, PageContext.REQUEST_SCOPE))
+                .andReturn(container);
+        EasyMock.replay(pageContext, context, container);
+        JspUtil.setCurrentContainer(pageContext, "myKey");
+        assertTrue("The containers are not the same", JspUtil
+                .getCurrentContainer(pageContext) == container);
+        EasyMock.verify(pageContext, context, container);
+    }
+
+    /**
+     * Tests
+     * [EMAIL PROTECTED] JspUtil#setCurrentContainer(PageContext, 
TilesContainer)}.
+     */
+    public void testSetCurrentContainerWithContainer() {
+        PageContext pageContext = EasyMock.createMock(PageContext.class);
+        ServletContext context = EasyMock.createMock(ServletContext.class);
+        TilesContainer container = EasyMock.createMock(TilesContainer.class);
+        pageContext.setAttribute(ServletUtil.CURRENT_CONTAINER_ATTRIBUTE_NAME,
+                container, PageContext.REQUEST_SCOPE);
+        EasyMock.expect(pageContext.getAttribute(ServletUtil
+                .CURRENT_CONTAINER_ATTRIBUTE_NAME, PageContext.REQUEST_SCOPE))
+                .andReturn(container);
+        EasyMock.replay(pageContext, context, container);
+        JspUtil.setCurrentContainer(pageContext, container);
+        assertTrue("The containers are not the same", JspUtil
+                .getCurrentContainer(pageContext) == container);
+        EasyMock.verify(pageContext, context, container);
+    }
+
+    /**
+     * Tests [EMAIL PROTECTED] JspUtil#getCurrentContainer(PageContext)}.
+     */
+    public void testGetCurrentContainer() {
+        PageContext pageContext = EasyMock.createMock(PageContext.class);
+        ServletContext context = EasyMock.createMock(ServletContext.class);
+        TilesContainer defaultContainer = EasyMock.createMock(
+                TilesContainer.class);
+        TilesContainer alternateContainer = EasyMock.createMock(
+                TilesContainer.class);
+        EasyMock.expect(pageContext.getServletContext()).andReturn(context);
+        EasyMock.expect(pageContext.getAttribute(ServletUtil
+                .CURRENT_CONTAINER_ATTRIBUTE_NAME, PageContext.REQUEST_SCOPE))
+                .andReturn(null);
+        EasyMock.expect(context.getAttribute(TilesAccess.CONTAINER_ATTRIBUTE))
+                .andReturn(defaultContainer);
+        pageContext.setAttribute(ServletUtil.CURRENT_CONTAINER_ATTRIBUTE_NAME,
+                defaultContainer, PageContext.REQUEST_SCOPE);
+        pageContext.setAttribute(ServletUtil.CURRENT_CONTAINER_ATTRIBUTE_NAME,
+                alternateContainer, PageContext.REQUEST_SCOPE);
+        EasyMock.expect(pageContext.getAttribute(ServletUtil
+                .CURRENT_CONTAINER_ATTRIBUTE_NAME, PageContext.REQUEST_SCOPE))
+                .andReturn(alternateContainer);
+        EasyMock.replay(pageContext, context, defaultContainer, 
alternateContainer);
+        TilesContainer currentContainer = 
JspUtil.getCurrentContainer(pageContext);
+        assertTrue("The containers are not the same",
+                currentContainer == defaultContainer);
+        JspUtil.setCurrentContainer(pageContext, alternateContainer);
+        currentContainer = JspUtil.getCurrentContainer(pageContext);
+        EasyMock.verify(pageContext, context, defaultContainer, 
alternateContainer);
+        assertTrue("The containers are not the same",
+                currentContainer == alternateContainer);
+    }
+}

Propchange: 
tiles/framework/trunk/tiles-jsp/src/test/java/org/apache/tiles/jsp/context/JspUtilTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: 
tiles/framework/trunk/tiles-jsp/src/test/java/org/apache/tiles/jsp/context/JspUtilTest.java
------------------------------------------------------------------------------
    svn:keywords = Date Author Id Revision HeadURL


Reply via email to