You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jetspeed-dev@portals.apache.org by ta...@apache.org on 2005/10/15 18:33:59 UTC
svn commit: r321366 -
/portals/jetspeed-2/trunk/components/profiler/src/test/org/apache/jetspeed/profiler/TestProfiler.java
Author: taylor
Date: Sat Oct 15 09:33:53 2005
New Revision: 321366
URL: http://svn.apache.org/viewcvs?rev=321366&view=rev
Log:
new rule: user-role-fallback
Modified:
portals/jetspeed-2/trunk/components/profiler/src/test/org/apache/jetspeed/profiler/TestProfiler.java
Modified: portals/jetspeed-2/trunk/components/profiler/src/test/org/apache/jetspeed/profiler/TestProfiler.java
URL: http://svn.apache.org/viewcvs/portals/jetspeed-2/trunk/components/profiler/src/test/org/apache/jetspeed/profiler/TestProfiler.java?rev=321366&r1=321365&r2=321366&view=diff
==============================================================================
--- portals/jetspeed-2/trunk/components/profiler/src/test/org/apache/jetspeed/profiler/TestProfiler.java (original)
+++ portals/jetspeed-2/trunk/components/profiler/src/test/org/apache/jetspeed/profiler/TestProfiler.java Sat Oct 15 09:33:53 2005
@@ -16,10 +16,14 @@
package org.apache.jetspeed.profiler;
import java.util.Collection;
+import java.util.HashSet;
import java.util.Iterator;
import java.util.Locale;
import java.util.Map;
import java.util.Properties;
+import java.util.Set;
+
+import javax.security.auth.Subject;
import junit.framework.Test;
import junit.framework.TestSuite;
@@ -34,7 +38,9 @@
import org.apache.jetspeed.profiler.rules.impl.StandardProfilingRule;
import org.apache.jetspeed.request.RequestContext;
import org.apache.jetspeed.security.SecurityHelper;
+import org.apache.jetspeed.security.impl.RolePrincipalImpl;
import org.apache.jetspeed.security.impl.UserPrincipalImpl;
+import org.apache.jetspeed.security.impl.PrincipalsSet;
/**
* TestProfiler
@@ -107,6 +113,66 @@
private static final String DEFAULT_PAGE = "default-page";
+ private static final String URF_CRITERIA [] =
+ {
+ "user",
+ "navigation",
+ "role",
+ "path.session"
+ };
+
+ public void testUserRoleFallback()
+ throws Exception
+ {
+ assertNotNull("profiler service is null", profiler);
+ System.out.println("START: running test user role fallback...");
+
+ // make sure rule is set correctly
+ ProfilingRule rule = profiler.getRule("user-role-fallback");
+ assertNotNull("rule is null ", rule);
+ Iterator c = rule.getRuleCriteria().iterator();
+ int ix = 0;
+ while (c.hasNext())
+ {
+ RuleCriterion rc = (RuleCriterion)c.next();
+ assertTrue("criterion type check " + rc.getType(), rc.getType().equals(URF_CRITERIA[ix]));
+ System.out.println(rc.getType());
+ ix++;
+ }
+
+ // test applying it
+ RequestContext context = new MockRequestContext();
+ Subject subject = createSubject();
+ context.setPath("/homepage.psml");
+ context.setSubject(subject);
+ ProfileLocator locator = rule.apply(context, profiler);
+ System.out.println("locator = " + locator);
+ assertTrue("locator string " + locator.toString(), locator.toString().equals("/homepage.psml:user:david:navigation:/:role:ATP:role:NB:role:ATP-NB:page:/homepage.psml"));
+
+ System.out.println("COMPLETED: running test user role fallback.");
+ }
+
+ protected Subject createSubject()
+ {
+ Set principals = new PrincipalsSet();
+ Set publicCredentials = new HashSet();
+ Set privateCredentials = new HashSet();
+
+ principals.add(new UserPrincipalImpl("david"));
+ principals.add(new RolePrincipalImpl("ATP"));
+ principals.add(new RolePrincipalImpl("NB"));
+ principals.add(new RolePrincipalImpl("ATP-NB"));
+ Subject subject = new Subject(true, principals, publicCredentials, privateCredentials);
+ return subject;
+ }
+
+ private static final String TEST_ROLES [] =
+ {
+ "ATP",
+ "NB",
+ "ATP-NB",
+ };
+
/**
* Tests
*
---------------------------------------------------------------------
To unsubscribe, e-mail: jetspeed-dev-unsubscribe@portals.apache.org
For additional commands, e-mail: jetspeed-dev-help@portals.apache.org