User: starksm Date: 01/04/11 18:25:15 Modified: src/main/org/jboss/test Tag: Branch_2_2 LoginModulesTest.java TestSRPLogin.java Log: Fix bug with role mapping in JaasServerLoginModule(ID 415511). Add missing unit test for the JaasServerLoginModule. Revision Changes Path No revision No revision 1.3.2.1 +44 -2 jbosssx/src/main/org/jboss/test/LoginModulesTest.java Index: LoginModulesTest.java =================================================================== RCS file: /cvsroot/jboss/jbosssx/src/main/org/jboss/test/LoginModulesTest.java,v retrieving revision 1.3 retrieving revision 1.3.2.1 diff -u -r1.3 -r1.3.2.1 --- LoginModulesTest.java 2001/04/04 21:39:02 1.3 +++ LoginModulesTest.java 2001/04/12 01:25:15 1.3.2.1 @@ -34,7 +34,7 @@ /** Tests of the sample LoginModule classes. @author [EMAIL PROTECTED] -@version $Revision: 1.3 $ +@version $Revision: 1.3.2.1 $ */ public class LoginModulesTest extends TestCase { @@ -121,6 +121,14 @@ AppConfigurationEntry[] entry = {ace}; return entry; } + AppConfigurationEntry[] testJaasServer() + { + String name = "org.jboss.security.plugins.samples.JaasServerLoginModule"; + AppConfigurationEntry ace = new AppConfigurationEntry(name, + AppConfigurationEntry.LoginModuleControlFlag.REQUIRED, new HashMap()); + AppConfigurationEntry[] entry = {ace}; + return entry; + } AppConfigurationEntry[] testUsernamePassword() { return other(); @@ -195,7 +203,33 @@ Group roles = (Group) groups.iterator().next(); assert("TestRole is a role", roles.isMember(new SimplePrincipal("TestRole"))); assert("Role2 is a role", roles.isMember(new SimplePrincipal("Role2"))); + lc.logout(); + } + public void testJaasServer() throws Exception + { + System.out.println("testJaasServer"); + UsernamePasswordHandler handler = new UsernamePasswordHandler("scott", "echoman".toCharArray()); + LoginContext lc = new LoginContext("testJaasServer", handler); + lc.login(); + Subject subject = lc.getSubject(); + Set groups = subject.getPrincipals(Group.class); + assert("Principals contains scott", subject.getPrincipals().contains(new SimplePrincipal("scott"))); + assert("Principals contains Roles", groups.contains(new SimplePrincipal("Roles"))); + Group roles = (Group) groups.iterator().next(); + assert("Echo is a role", roles.isMember(new SimplePrincipal("Echo"))); + lc.logout(); + handler = new UsernamePasswordHandler("stark", "javaman".toCharArray()); + lc = new LoginContext("testJaasServer", handler); + lc.login(); + subject = lc.getSubject(); + groups = subject.getPrincipals(Group.class); + assert("Principals contains stark", subject.getPrincipals().contains(new SimplePrincipal("stark"))); + assert("Principals contains Roles", groups.contains(new SimplePrincipal("Roles"))); + roles = (Group) groups.iterator().next(); + assert("Echo is NOT a role", roles.isMember(new SimplePrincipal("Echo")) == false); + assert("Java is a role", roles.isMember(new SimplePrincipal("Java"))); + assert("Coder is a role", roles.isMember(new SimplePrincipal("Coder"))); lc.logout(); } public void testIdentity() throws Exception @@ -281,7 +315,15 @@ public void testJdbc() throws Exception { System.out.println("testJdbc"); - Class.forName ("org.enhydra.instantdb.jdbc.idbDriver"); + try + { + Class.forName("org.enhydra.instantdb.jdbc.idbDriver"); + } + catch(ClassNotFoundException e) + { + System.out.println("Skipping due to missing org.enhydra.instantdb.jdbc.idbDriver"); + return; + } DataSource ds = new TestDS(); Properties env = new Properties(); org.jnp.server.Main naming = new org.jnp.server.Main(); 1.1.2.1 +1 -1 jbosssx/src/main/org/jboss/test/TestSRPLogin.java Index: TestSRPLogin.java =================================================================== RCS file: /cvsroot/jboss/jbosssx/src/main/org/jboss/test/TestSRPLogin.java,v retrieving revision 1.1 retrieving revision 1.1.2.1 diff -u -r1.1 -r1.1.2.1 --- TestSRPLogin.java 2001/03/05 09:53:38 1.1 +++ TestSRPLogin.java 2001/04/12 01:25:15 1.1.2.1 @@ -11,14 +11,14 @@ import org.jboss.security.SimplePrincipal; import org.jboss.security.SecurityPolicy; import org.jboss.security.SecurityPolicyParser; -import org.jboss.security.plugins.UsernamePasswordHandler; +import org.jboss.security.auth.UsernamePasswordHandler; /** A test of the SRPLogin module @see org.jboss.security.srp.jaas.SRPLoginModule @author [EMAIL PROTECTED] -@version $Revision: 1.1 $ +@version $Revision: 1.1.2.1 $ */ public class TestSRPLogin extends junit.framework.TestCase { _______________________________________________ Jboss-development mailing list [EMAIL PROTECTED] http://lists.sourceforge.net/lists/listinfo/jboss-development