Extend the simple MapRealm use for testing to support roles.
authormarkt <markt@13f79535-47bb-0310-9956-ffa450edef68>
Sun, 22 Aug 2010 20:16:56 +0000 (20:16 +0000)
committermarkt <markt@13f79535-47bb-0310-9956-ffa450edef68>
Sun, 22 Aug 2010 20:16:56 +0000 (20:16 +0000)
git-svn-id: https://svn.apache.org/repos/asf/tomcat/trunk@987945 13f79535-47bb-0310-9956-ffa450edef68

test/org/apache/catalina/startup/TestTomcat.java

index 12ef7ae..646a1c9 100644 (file)
@@ -24,7 +24,9 @@ import java.io.Reader;
 import java.net.URL;
 import java.net.URLConnection;
 import java.security.Principal;
+import java.util.ArrayList;
 import java.util.HashMap;
+import java.util.List;
 import java.util.Map;
 
 import javax.naming.Context;
@@ -135,11 +137,22 @@ public class TestTomcat extends TomcatBaseTest {
      */
     public static final class MapRealm extends RealmBase {
         private Map<String,String> users = new HashMap<String,String>();
+        private Map<String,List<String>> roles =
+            new HashMap<String,List<String>>();
         
         public void addUser(String username, String password) {
             users.put(username, password);
         }
 
+        public void addUserRole(String username, String role) {
+            List<String> userRoles = roles.get(username);
+            if (userRoles == null) {
+                userRoles = new ArrayList<String>();
+                roles.put(username, userRoles);
+            }
+            userRoles.add(role);
+        }
+
         @Override
         protected String getName() {
             return "MapRealm";
@@ -152,7 +165,8 @@ public class TestTomcat extends TomcatBaseTest {
 
         @Override
         protected Principal getPrincipal(String username) {
-            return new GenericPrincipal(username, getPassword(username));
+            return new GenericPrincipal(username, getPassword(username),
+                    roles.get(username));
         }
         
     }