]> WPIA git - gigi.git/blobdiff - tests/org/cacert/gigi/TestUserGroupMembership.java
ADD: more testcases for group-object
[gigi.git] / tests / org / cacert / gigi / TestUserGroupMembership.java
index fa670721d2315862eb20608047e68f23eb120a17..e0116533fa46f55125ef4d871c2f51d4d6f63ce2 100644 (file)
@@ -3,14 +3,14 @@ package org.cacert.gigi;
 import static org.hamcrest.CoreMatchers.*;
 import static org.junit.Assert.*;
 
-import java.sql.PreparedStatement;
-import java.sql.ResultSet;
 import java.sql.SQLException;
 import java.util.Arrays;
 import java.util.Collections;
 import java.util.HashSet;
 
 import org.cacert.gigi.database.DatabaseConnection;
+import org.cacert.gigi.database.GigiPreparedStatement;
+import org.cacert.gigi.database.GigiResultSet;
 import org.cacert.gigi.dbObjects.Group;
 import org.cacert.gigi.dbObjects.ObjectCache;
 import org.cacert.gigi.dbObjects.User;
@@ -39,7 +39,7 @@ public class TestUserGroupMembership extends ManagedTest {
         assertThat(u2, is(not(sameInstance(u))));
         assertBehavesTtpGroup(u2);
 
-        ResultSet rs = fetchGroupRowsFor(u);
+        GigiResultSet rs = fetchGroupRowsFor(u);
 
         assertTrue(rs.next());
         assertEquals(0, rs.getInt("revokedby"));
@@ -69,7 +69,7 @@ public class TestUserGroupMembership extends ManagedTest {
         assertThat(u2, is(not(sameInstance(u))));
         assertBehavesEmpty(u);
 
-        ResultSet rs = fetchGroupRowsFor(u);
+        GigiResultSet rs = fetchGroupRowsFor(u);
         assertTrue(rs.next());
         assertEquals(granter.getId(), rs.getInt("revokedby"));
         assertEquals(granter.getId(), rs.getInt("grantedby"));
@@ -81,10 +81,10 @@ public class TestUserGroupMembership extends ManagedTest {
         assertFalse(rs.next());
     }
 
-    private ResultSet fetchGroupRowsFor(User u) throws SQLException {
-        PreparedStatement ps = DatabaseConnection.getInstance().prepare("SELECT * FROM user_groups WHERE user=?");
+    private GigiResultSet fetchGroupRowsFor(User u) throws SQLException {
+        GigiPreparedStatement ps = DatabaseConnection.getInstance().prepare("SELECT * FROM user_groups WHERE user=?");
         ps.setInt(1, u.getId());
-        ResultSet rs = ps.executeQuery();
+        GigiResultSet rs = ps.executeQuery();
         return rs;
     }
 
@@ -99,4 +99,29 @@ public class TestUserGroupMembership extends ManagedTest {
         assertTrue(u.isInGroup(ttpGroup));
         assertFalse(u.isInGroup(supporter));
     }
+
+    @Test
+    public void testListGroup() {
+        Group g = Group.getByString("supporter");
+        User ux = User.getById(createVerifiedUser("fn", "ln", createUniqueName() + "@example.org", TEST_PASSWORD));
+        User ux2 = User.getById(createVerifiedUser("fn", "ln", createUniqueName() + "@example.org", TEST_PASSWORD));
+        assertEquals(0, g.getMembers(0, 10).length);
+        ux.grantGroup(ux, g);
+        assertEquals(1, g.getMembers(0, 10).length);
+        ux2.grantGroup(ux, g);
+        assertEquals(2, g.getMembers(0, 10).length);
+        ux2.revokeGroup(ux, g);
+        assertEquals(1, g.getMembers(0, 10).length);
+        ux.revokeGroup(ux, g);
+        assertEquals(0, g.getMembers(0, 10).length);
+
+    }
+
+    @Test
+    public void testGroupEquals() {
+        assertTrue(ttpGroup.equals(ttpGroup));
+        assertFalse(ttpGroup.equals(null));
+        assertFalse(ttpGroup.equals(""));
+        assertFalse(ttpGroup.equals(supporter));
+    }
 }