Author: ajaquith
Date: Thu Jun 12 22:04:13 2008
New Revision: 667342
URL: http://svn.apache.org/viewvc?rev=667342&view=rev
Log:
Removed TestHttpServletRequest, TestHttpServletResponse, TestHttpSession,
TestFilterChain, TestFilterConfig, TestServletContext in favor of the
much-superior Stripes mock objects. TestEngine was retrofitted with the Stripes
mocks and all unit tests were also changed. In particular, take note of the
TestEngine.newHttpRequest() factory method, which should be used to create test
request objects.
Modified:
incubator/jspwiki/trunk/tests/com/ecyrd/jspwiki/auth/acl/AclImplTest.java
incubator/jspwiki/trunk/tests/com/ecyrd/jspwiki/auth/login/AnonymousLoginModuleTest.java
incubator/jspwiki/trunk/tests/com/ecyrd/jspwiki/auth/login/CookieAssertionLoginModuleTest.java
incubator/jspwiki/trunk/tests/com/ecyrd/jspwiki/auth/login/WebContainerLoginModuleTest.java
incubator/jspwiki/trunk/tests/com/ecyrd/jspwiki/search/SearchManagerTest.java
Modified:
incubator/jspwiki/trunk/tests/com/ecyrd/jspwiki/auth/acl/AclImplTest.java
URL:
http://svn.apache.org/viewvc/incubator/jspwiki/trunk/tests/com/ecyrd/jspwiki/auth/acl/AclImplTest.java?rev=667342&r1=667341&r2=667342&view=diff
==============================================================================
--- incubator/jspwiki/trunk/tests/com/ecyrd/jspwiki/auth/acl/AclImplTest.java
(original)
+++ incubator/jspwiki/trunk/tests/com/ecyrd/jspwiki/auth/acl/AclImplTest.java
Thu Jun 12 22:04:13 2008
@@ -31,7 +31,6 @@
import junit.framework.TestSuite;
import com.ecyrd.jspwiki.TestEngine;
-import com.ecyrd.jspwiki.WikiEngine;
import com.ecyrd.jspwiki.WikiSession;
import com.ecyrd.jspwiki.WikiSessionTest;
import com.ecyrd.jspwiki.auth.GroupPrincipal;
@@ -70,7 +69,7 @@
super.setUp();
Properties props = new Properties();
props.load( TestEngine.findTestProperties() );
- WikiEngine engine = new TestEngine( props );
+ TestEngine engine = new TestEngine( props );
m_groupMgr = engine.getGroupManager();
m_session = WikiSessionTest.adminSession( engine );
Modified:
incubator/jspwiki/trunk/tests/com/ecyrd/jspwiki/auth/login/AnonymousLoginModuleTest.java
URL:
http://svn.apache.org/viewvc/incubator/jspwiki/trunk/tests/com/ecyrd/jspwiki/auth/login/AnonymousLoginModuleTest.java?rev=667342&r1=667341&r2=667342&view=diff
==============================================================================
---
incubator/jspwiki/trunk/tests/com/ecyrd/jspwiki/auth/login/AnonymousLoginModuleTest.java
(original)
+++
incubator/jspwiki/trunk/tests/com/ecyrd/jspwiki/auth/login/AnonymousLoginModuleTest.java
Thu Jun 12 22:04:13 2008
@@ -28,14 +28,13 @@
import javax.security.auth.callback.CallbackHandler;
import javax.security.auth.login.LoginException;
import javax.security.auth.spi.LoginModule;
+import javax.servlet.http.HttpServletRequest;
import junit.framework.TestCase;
import com.ecyrd.jspwiki.NoRequiredPropertyException;
import com.ecyrd.jspwiki.TestAuthorizer;
import com.ecyrd.jspwiki.TestEngine;
-import com.ecyrd.jspwiki.TestHttpServletRequest;
-import com.ecyrd.jspwiki.WikiEngine;
import com.ecyrd.jspwiki.auth.Authorizer;
import com.ecyrd.jspwiki.auth.WikiPrincipal;
import com.ecyrd.jspwiki.auth.authorize.Role;
@@ -53,12 +52,11 @@
Subject subject;
- private WikiEngine m_engine;
+ private TestEngine m_engine;
public final void testLogin()
{
- TestHttpServletRequest request = new TestHttpServletRequest();
- request.setRemoteAddr( "53.33.128.9" );
+ HttpServletRequest request = m_engine.newHttpRequest();
try
{
// Test using IP address (AnonymousLoginModule succeeds)
@@ -69,7 +67,7 @@
module.commit();
Set principals = subject.getPrincipals();
assertEquals( 1, principals.size() );
- assertTrue( principals.contains( new WikiPrincipal( "53.33.128.9"
) ) );
+ assertTrue( principals.contains( new WikiPrincipal( "127.0.0.1" )
) );
assertFalse( principals.contains( Role.ANONYMOUS ) );
assertFalse( principals.contains( Role.ALL ) );
}
@@ -82,8 +80,7 @@
public final void testLogout()
{
- TestHttpServletRequest request = new TestHttpServletRequest();
- request.setRemoteAddr( "53.33.128.9" );
+ HttpServletRequest request = m_engine.newHttpRequest();
try
{
CallbackHandler handler = new WebContainerCallbackHandler(
m_engine, request, authorizer );
@@ -95,7 +92,7 @@
module.commit();
Set principals = subject.getPrincipals();
assertEquals( 1, principals.size() );
- assertTrue( principals.contains( new WikiPrincipal( "53.33.128.9"
) ) );
+ assertTrue( principals.contains( new WikiPrincipal( "127.0.0.1" )
) );
assertFalse( principals.contains( Role.ANONYMOUS ) );
assertFalse( principals.contains( Role.ALL ) );
module.logout();
Modified:
incubator/jspwiki/trunk/tests/com/ecyrd/jspwiki/auth/login/CookieAssertionLoginModuleTest.java
URL:
http://svn.apache.org/viewvc/incubator/jspwiki/trunk/tests/com/ecyrd/jspwiki/auth/login/CookieAssertionLoginModuleTest.java?rev=667342&r1=667341&r2=667342&view=diff
==============================================================================
---
incubator/jspwiki/trunk/tests/com/ecyrd/jspwiki/auth/login/CookieAssertionLoginModuleTest.java
(original)
+++
incubator/jspwiki/trunk/tests/com/ecyrd/jspwiki/auth/login/CookieAssertionLoginModuleTest.java
Thu Jun 12 22:04:13 2008
@@ -30,13 +30,13 @@
import javax.security.auth.spi.LoginModule;
import javax.servlet.http.Cookie;
+import net.sourceforge.stripes.mock.MockHttpServletRequest;
+
import junit.framework.TestCase;
import com.ecyrd.jspwiki.NoRequiredPropertyException;
import com.ecyrd.jspwiki.TestAuthorizer;
import com.ecyrd.jspwiki.TestEngine;
-import com.ecyrd.jspwiki.TestHttpServletRequest;
-import com.ecyrd.jspwiki.WikiEngine;
import com.ecyrd.jspwiki.auth.Authorizer;
import com.ecyrd.jspwiki.auth.WikiPrincipal;
import com.ecyrd.jspwiki.auth.authorize.Role;
@@ -54,12 +54,11 @@
Subject subject;
- private WikiEngine m_engine;
+ private TestEngine m_engine;
public final void testLogin()
{
- TestHttpServletRequest request = new TestHttpServletRequest();
- request.setRemoteAddr( "53.33.128.9" );
+ MockHttpServletRequest request = m_engine.newHttpRequest();
try
{
// We can use cookies right?
@@ -91,8 +90,7 @@
public final void testLogout()
{
- TestHttpServletRequest request = new TestHttpServletRequest();
- request.setRemoteAddr( "53.33.128.9" );
+ MockHttpServletRequest request = m_engine.newHttpRequest();
Cookie cookie = new Cookie(
CookieAssertionLoginModule.PREFS_COOKIE_NAME, "Bullwinkle" );
request.setCookies( new Cookie[] { cookie } );
try
Modified:
incubator/jspwiki/trunk/tests/com/ecyrd/jspwiki/auth/login/WebContainerLoginModuleTest.java
URL:
http://svn.apache.org/viewvc/incubator/jspwiki/trunk/tests/com/ecyrd/jspwiki/auth/login/WebContainerLoginModuleTest.java?rev=667342&r1=667341&r2=667342&view=diff
==============================================================================
---
incubator/jspwiki/trunk/tests/com/ecyrd/jspwiki/auth/login/WebContainerLoginModuleTest.java
(original)
+++
incubator/jspwiki/trunk/tests/com/ecyrd/jspwiki/auth/login/WebContainerLoginModuleTest.java
Thu Jun 12 22:04:13 2008
@@ -22,6 +22,7 @@
import java.security.Principal;
import java.util.HashMap;
+import java.util.HashSet;
import java.util.Properties;
import java.util.Set;
@@ -30,13 +31,13 @@
import javax.security.auth.login.LoginException;
import javax.security.auth.spi.LoginModule;
+import net.sourceforge.stripes.mock.MockHttpServletRequest;
+
import junit.framework.TestCase;
import com.ecyrd.jspwiki.NoRequiredPropertyException;
import com.ecyrd.jspwiki.TestAuthorizer;
import com.ecyrd.jspwiki.TestEngine;
-import com.ecyrd.jspwiki.TestHttpServletRequest;
-import com.ecyrd.jspwiki.WikiEngine;
import com.ecyrd.jspwiki.auth.Authorizer;
import com.ecyrd.jspwiki.auth.WikiPrincipal;
import com.ecyrd.jspwiki.auth.authorize.Role;
@@ -54,12 +55,12 @@
Subject subject;
- private WikiEngine m_engine;
+ private TestEngine m_engine;
public final void testLogin()
{
Principal principal = new WikiPrincipal( "Andrew Jaquith" );
- TestHttpServletRequest request = new TestHttpServletRequest();
+ MockHttpServletRequest request = m_engine.newHttpRequest();
request.setUserPrincipal( principal );
try
{
@@ -78,46 +79,6 @@
assertFalse( principals.contains( Role.ASSERTED ) );
assertFalse( principals.contains( Role.AUTHENTICATED ) );
assertFalse( principals.contains( Role.ALL ) );
-
- // Test using remote user (WebContainerLoginModule succeeds)
- subject = new Subject();
- request = new TestHttpServletRequest();
- request.setRemoteUser( "Andrew Jaquith" );
- handler = new WebContainerCallbackHandler( m_engine, request,
authorizer );
- module = new WebContainerLoginModule();
- module.initialize(subject, handler,
- new HashMap<String, Object>(),
- new HashMap<String, Object>());
- module.login();
- module.commit();
- principals = subject.getPrincipals();
- assertEquals( 1, principals.size() );
- assertTrue( principals.contains( principal ) );
- assertFalse( principals.contains( Role.ANONYMOUS ) );
- assertFalse( principals.contains( Role.ASSERTED ) );
- assertFalse( principals.contains( Role.AUTHENTICATED ) );
- assertFalse( principals.contains( Role.ALL ) );
-
- // Test using IP address (AnonymousLoginModule succeeds)
- subject = new Subject();
- request = new TestHttpServletRequest();
- request.setRemoteAddr( "53.33.128.9" );
- handler = new WebContainerCallbackHandler( m_engine, request,
authorizer );
- module = new WebContainerLoginModule();
- module.initialize(subject, handler,
- new HashMap<String, Object>(),
- new HashMap<String, Object>());
- try
- {
- module.login();
- fail("Session with IP address successfully logged in; it
should not have!");
- }
- catch (LoginException e)
- {
- // Good! This is what we expect.
- }
- principals = subject.getPrincipals();
- assertEquals( 0, principals.size() );
}
catch( LoginException e )
{
@@ -130,9 +91,12 @@
{
// Create user with 2 container roles; TestAuthorizer knows about these
Principal principal = new WikiPrincipal( "Andrew Jaquith" );
- TestHttpServletRequest request = new TestHttpServletRequest();
+ MockHttpServletRequest request = m_engine.newHttpRequest();
request.setUserPrincipal( principal );
- request.setRoles( new String[] { "IT", "Engineering" } );
+ Set<String> roles = new HashSet<String>();
+ roles.add( "IT" );
+ roles.add( "Engineering" );
+ request.setRoles( roles );
// Test using Principal (WebContainerLoginModule succeeds)
CallbackHandler handler = new WebContainerCallbackHandler( m_engine,
request, authorizer );
@@ -156,7 +120,7 @@
public final void testLogout()
{
Principal principal = new WikiPrincipal( "Andrew Jaquith" );
- TestHttpServletRequest request = new TestHttpServletRequest();
+ MockHttpServletRequest request = m_engine.newHttpRequest();
request.setUserPrincipal( principal );
try
{
Modified:
incubator/jspwiki/trunk/tests/com/ecyrd/jspwiki/search/SearchManagerTest.java
URL:
http://svn.apache.org/viewvc/incubator/jspwiki/trunk/tests/com/ecyrd/jspwiki/search/SearchManagerTest.java?rev=667342&r1=667341&r2=667342&view=diff
==============================================================================
---
incubator/jspwiki/trunk/tests/com/ecyrd/jspwiki/search/SearchManagerTest.java
(original)
+++
incubator/jspwiki/trunk/tests/com/ecyrd/jspwiki/search/SearchManagerTest.java
Thu Jun 12 22:04:13 2008
@@ -4,13 +4,14 @@
import java.util.Collection;
import java.util.Properties;
+import net.sourceforge.stripes.mock.MockHttpServletRequest;
+
import junit.framework.Test;
import junit.framework.TestCase;
import junit.framework.TestSuite;
import com.ecyrd.jspwiki.SearchResult;
import com.ecyrd.jspwiki.TestEngine;
-import com.ecyrd.jspwiki.TestHttpServletRequest;
import com.ecyrd.jspwiki.WikiContext;
public class SearchManagerTest extends TestCase
@@ -96,8 +97,8 @@
{
String txt = "It was the dawn of the third age of mankind, ten years
after the Earth-Minbari War.";
- TestHttpServletRequest request = new TestHttpServletRequest();
- request.setParameter("page","TestPage");
+ MockHttpServletRequest request = m_engine.newHttpRequest();
+ request.getParameterMap().put( "page", new String[]{ "TestPage" } );
WikiContext ctx = m_engine.createContext( request, WikiContext.EDIT );