Ben Alex před 21 roky
rodič
revize
22272223d2

+ 90 - 0
core/src/test/java/org/acegisecurity/GrantedAuthorityImplTests.java

@@ -0,0 +1,90 @@
+/* Copyright 2004 Acegi Technology Pty Limited
+ *
+ * Licensed 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 net.sf.acegisecurity;
+
+import junit.framework.TestCase;
+
+
+/**
+ * Tests {@link GrantedAuthorityImpl}
+ *
+ * @author Ben Alex
+ * @version $Id$
+ */
+public class GrantedAuthorityImplTests extends TestCase {
+    //~ Constructors ===========================================================
+
+    public GrantedAuthorityImplTests() {
+        super();
+    }
+
+    public GrantedAuthorityImplTests(String arg0) {
+        super(arg0);
+    }
+
+    //~ Methods ================================================================
+
+    public final void setUp() throws Exception {
+        super.setUp();
+    }
+
+    public static void main(String[] args) {
+        junit.textui.TestRunner.run(GrantedAuthorityImplTests.class);
+    }
+
+    public void testObjectEquals() throws Exception {
+        GrantedAuthorityImpl auth1 = new GrantedAuthorityImpl("TEST");
+        GrantedAuthorityImpl auth2 = new GrantedAuthorityImpl("TEST");
+        assertEquals(auth1, auth2);
+
+        String authString1 = "TEST";
+        assertEquals(auth1, authString1);
+
+        String authString2 = "NOT_EQUAL";
+        assertTrue(!auth1.equals(authString2));
+
+        GrantedAuthorityImpl auth3 = new GrantedAuthorityImpl("NOT_EQUAL");
+        assertTrue(!auth1.equals(auth3));
+
+        MockGrantedAuthorityImpl mock1 = new MockGrantedAuthorityImpl("TEST");
+        assertEquals(auth1, mock1);
+
+        MockGrantedAuthorityImpl mock2 = new MockGrantedAuthorityImpl(
+                "NOT_EQUAL");
+        assertTrue(!auth1.equals(mock2));
+
+        Integer int1 = new Integer(222);
+        assertTrue(!auth1.equals(int1));
+    }
+
+    //~ Inner Classes ==========================================================
+
+    private class MockGrantedAuthorityImpl implements GrantedAuthority {
+        private String role;
+
+        public MockGrantedAuthorityImpl(String role) {
+            this.role = role;
+        }
+
+        private MockGrantedAuthorityImpl() {
+            super();
+        }
+
+        public String getAuthority() {
+            return this.role;
+        }
+    }
+}

+ 105 - 0
core/src/test/java/org/acegisecurity/adapters/PrincipalAcegiUserTokenTests.java

@@ -0,0 +1,105 @@
+/* Copyright 2004 Acegi Technology Pty Limited
+ *
+ * Licensed 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 net.sf.acegisecurity.adapters;
+
+import junit.framework.TestCase;
+
+import net.sf.acegisecurity.GrantedAuthority;
+import net.sf.acegisecurity.GrantedAuthorityImpl;
+
+
+/**
+ * Tests {@link net.sf.acegisecurity.adapters.PrincipalAcegiUserToken}
+ *
+ * @author Ben Alex
+ * @version $Id$
+ */
+public class PrincipalAcegiUserTokenTests extends TestCase {
+    //~ Constructors ===========================================================
+
+    public PrincipalAcegiUserTokenTests() {
+        super();
+    }
+
+    public PrincipalAcegiUserTokenTests(String arg0) {
+        super(arg0);
+    }
+
+    //~ Methods ================================================================
+
+    public final void setUp() throws Exception {
+        super.setUp();
+    }
+
+    public static void main(String[] args) {
+        junit.textui.TestRunner.run(PrincipalAcegiUserTokenTests.class);
+    }
+
+    public void testGetters() throws Exception {
+        PrincipalAcegiUserToken token = new PrincipalAcegiUserToken("my_password",
+                "Test", "Password",
+                new GrantedAuthority[] {new GrantedAuthorityImpl("ROLE_ONE"), new GrantedAuthorityImpl(
+                        "ROLE_TWO")});
+        assertEquals("Test", token.getPrincipal());
+        assertEquals("Password", token.getCredentials());
+        assertEquals("my_password".hashCode(), token.getKeyHash());
+    }
+
+    public void testObjectsEquals() throws Exception {
+        PrincipalAcegiUserToken token1 = new PrincipalAcegiUserToken("my_password",
+                "Test", "Password",
+                new GrantedAuthority[] {new GrantedAuthorityImpl("ROLE_ONE"), new GrantedAuthorityImpl(
+                        "ROLE_TWO")});
+        PrincipalAcegiUserToken token2 = new PrincipalAcegiUserToken("my_password",
+                "Test", "Password",
+                new GrantedAuthority[] {new GrantedAuthorityImpl("ROLE_ONE"), new GrantedAuthorityImpl(
+                        "ROLE_TWO")});
+        System.out.println("Token 1:" + token1.toString() + " hash of pass "
+            + token1.getKeyHash());
+        System.out.println("Token 2:" + token2.toString() + " hash of pass "
+            + token2.getKeyHash());
+        assertEquals(token1, token2);
+
+        PrincipalAcegiUserToken token3 = new PrincipalAcegiUserToken("my_password",
+                "Test", "Password_Changed",
+                new GrantedAuthority[] {new GrantedAuthorityImpl("ROLE_ONE"), new GrantedAuthorityImpl(
+                        "ROLE_TWO")});
+        assertTrue(!token1.equals(token3));
+
+        PrincipalAcegiUserToken token4 = new PrincipalAcegiUserToken("my_password",
+                "Test_Changed", "Password",
+                new GrantedAuthority[] {new GrantedAuthorityImpl("ROLE_ONE"), new GrantedAuthorityImpl(
+                        "ROLE_TWO")});
+        assertTrue(!token1.equals(token4));
+
+        PrincipalAcegiUserToken token5 = new PrincipalAcegiUserToken("password_changed",
+                "Test", "Password",
+                new GrantedAuthority[] {new GrantedAuthorityImpl("ROLE_ONE"), new GrantedAuthorityImpl(
+                        "ROLE_TWO")});
+        assertTrue(!token1.equals(token5));
+
+        PrincipalAcegiUserToken token6 = new PrincipalAcegiUserToken("my_password",
+                "Test", "Password",
+                new GrantedAuthority[] {new GrantedAuthorityImpl("ROLE_ONE"), new GrantedAuthorityImpl(
+                        "ROLE_TWO_CHANGED")});
+        assertTrue(!token1.equals(token6));
+
+        PrincipalAcegiUserToken token7 = new PrincipalAcegiUserToken("my_password",
+                "Test", "Password",
+                new GrantedAuthority[] {new GrantedAuthorityImpl("ROLE_ONE")});
+        assertTrue(!token1.equals(token7));
+    }
+}