Author: mflorea
Date: 2007-12-19 14:58:48 +0100 (Wed, 19 Dec 2007)
New Revision: 6427
Modified:
xwiki-products/curriki/trunk/plugins/invitationmanager/src/test/java/org/xwiki/plugin/invitationmanager/impl/InvitationManagerImplTest.java
xwiki-products/curriki/trunk/plugins/invitationmanager/src/test/java/org/xwiki/plugin/invitationmanager/impl/InvitationManagerTest.java
Log:
I modified some tests (cancel/reject Invitation/MembershipRequest) and I mocked
the SpaceManager. Unfortunately the InvitationManager gets the SpaceManager
through a static method in SpaceManagers.
Modified:
xwiki-products/curriki/trunk/plugins/invitationmanager/src/test/java/org/xwiki/plugin/invitationmanager/impl/InvitationManagerImplTest.java
===================================================================
---
xwiki-products/curriki/trunk/plugins/invitationmanager/src/test/java/org/xwiki/plugin/invitationmanager/impl/InvitationManagerImplTest.java
2007-12-19 13:12:33 UTC (rev 6426)
+++
xwiki-products/curriki/trunk/plugins/invitationmanager/src/test/java/org/xwiki/plugin/invitationmanager/impl/InvitationManagerImplTest.java
2007-12-19 13:58:48 UTC (rev 6427)
@@ -21,7 +21,6 @@
import org.xwiki.plugin.invitationmanager.api.Invitation;
import org.xwiki.plugin.invitationmanager.api.MembershipRequest;
-import org.xwiki.plugin.spacemanager.impl.SpaceManagerImpl;
import com.xpn.xwiki.XWikiException;
@@ -34,8 +33,6 @@
{
super.setUp();
invitationManager = new InvitationManagerImpl();
- spaceManager =
- new SpaceManagerImpl("spacemanager",
SpaceManagerImpl.class.toString(), context);
}
protected Invitation createInvitation(String invitee, String space) throws
XWikiException
Modified:
xwiki-products/curriki/trunk/plugins/invitationmanager/src/test/java/org/xwiki/plugin/invitationmanager/impl/InvitationManagerTest.java
===================================================================
---
xwiki-products/curriki/trunk/plugins/invitationmanager/src/test/java/org/xwiki/plugin/invitationmanager/impl/InvitationManagerTest.java
2007-12-19 13:12:33 UTC (rev 6426)
+++
xwiki-products/curriki/trunk/plugins/invitationmanager/src/test/java/org/xwiki/plugin/invitationmanager/impl/InvitationManagerTest.java
2007-12-19 13:58:48 UTC (rev 6427)
@@ -19,10 +19,12 @@
*/
package org.xwiki.plugin.invitationmanager.impl;
+import java.util.ArrayList;
+import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
-import java.util.ArrayList;
+import java.util.Set;
import org.jmock.Mock;
import org.jmock.cglib.MockObjectTestCase;
@@ -33,7 +35,6 @@
import org.xwiki.plugin.invitationmanager.api.JoinRequestStatus;
import org.xwiki.plugin.invitationmanager.api.MembershipRequest;
import org.xwiki.plugin.spacemanager.api.SpaceManager;
-import org.xwiki.plugin.spacemanager.api.SpaceManagerException;
import com.xpn.xwiki.XWiki;
import com.xpn.xwiki.XWikiConfig;
@@ -50,16 +51,20 @@
{
protected InvitationManager invitationManager;
- protected SpaceManager spaceManager;
-
protected XWikiContext context;
protected XWiki xwiki;
protected Mock mockXWikiStore;
+ protected Mock mockSpaceManager;
+
protected Map docs = new HashMap();
+ protected Map space2members = new HashMap();
+
+ protected Map role2users = new HashMap();
+
protected static final String SPACE = "MySpace";
protected static final String ADMIN = "MySpaceAdmin";
@@ -76,6 +81,12 @@
xwiki = new XWiki(new XWikiConfig(), context);
context.setWiki(xwiki);
+ setUpStore();
+ setUpSpaceManager();
+ }
+
+ private void setUpStore()
+ {
mockXWikiStore =
mock(XWikiHibernateStore.class, new Class[] {XWiki.class,
XWikiContext.class},
new Object[] {xwiki, context});
@@ -115,110 +126,131 @@
: Boolean.TRUE;
}
});
- this.mockXWikiStore.stubs().method("search").will(
- returnValue(new ArrayList()));
+ this.mockXWikiStore.stubs().method("search").will(returnValue(new
ArrayList()));
xwiki.setStore((XWikiStoreInterface) mockXWikiStore.proxy());
}
- public void testEmptyTest() {
-
+ private void setUpSpaceManager()
+ {
+ mockXWikiStore = mock(SpaceManager.class, new Class[] {}, new Object[]
{});
+ mockXWikiStore.stubs().method("userIsMember").will(
+ new CustomStub("Implements SpaceManager.userIsMember")
+ {
+ public Object invoke(Invocation invocation) throws Throwable
+ {
+ String space = (String) invocation.parameterValues.get(0);
+ String user = (String) invocation.parameterValues.get(1);
+ Set members = (Set) space2members.get(space);
+ return (members != null && members.contains(user)) ?
Boolean.TRUE
+ : Boolean.FALSE;
+ }
+ });
+ mockXWikiStore.stubs().method("getUsersForRole").will(
+ new CustomStub("Implements SpaceManager.getUsersForRole")
+ {
+ public Object invoke(Invocation invocation) throws Throwable
+ {
+ String role = (String) invocation.parameterValues.get(1);
+ Set users = (Set) role2users.get(role);
+ if (users != null) {
+ return users;
+ } else {
+ return Collections.EMPTY_SET;
+ }
+ }
+ });
}
- /*
- public void testAcceptInvitation()
+ public void testEmptyTest()
{
+
+ }
+
+ public void _testAcceptInvitation()
+ {
try {
String nonMember = "testAcceptInvitation_nonMember";
context.setUser(ADMIN);
invitationManager.inviteUser(nonMember, SPACE, false,
DEVELOPER_ROLE, context);
- assertFalse(spaceManager.userIsMember(SPACE, nonMember, context));
- assertFalse(spaceManager.getUsersForRole(SPACE, DEVELOPER_ROLE,
context).contains(
- nonMember));
+ assertFalse(getSpaceManager().userIsMember(SPACE, nonMember,
context));
+ assertFalse(getSpaceManager().getUsersForRole(SPACE,
DEVELOPER_ROLE, context)
+ .contains(nonMember));
context.setUser(nonMember);
invitationManager.acceptInvitation(SPACE, context);
- assertTrue(spaceManager.userIsMember(SPACE, nonMember, context));
- assertTrue(spaceManager.getUsersForRole(SPACE, DEVELOPER_ROLE,
context).contains(
- nonMember));
+ assertTrue(getSpaceManager().userIsMember(SPACE, nonMember,
context));
+ assertTrue(getSpaceManager().getUsersForRole(SPACE,
DEVELOPER_ROLE, context)
+ .contains(nonMember));
} catch (XWikiException e) {
assertTrue(false);
}
}
- public void testAcceptMembership()
+ public void _testAcceptMembership()
{
try {
String nonMember = "testAcceptMembership_nonMember";
context.setUser(nonMember);
- invitationManager.requestMembership(SPACE, "I love you space",
DEVELOPER_ROLE,
+ invitationManager.requestMembership(SPACE, "I love yout space",
DEVELOPER_ROLE,
context);
- assertFalse(spaceManager.userIsMember(SPACE, nonMember, context));
- assertFalse(spaceManager.getUsersForRole(SPACE, DEVELOPER_ROLE,
context).contains(
- nonMember));
+ assertFalse(getSpaceManager().userIsMember(SPACE, nonMember,
context));
+ assertFalse(getSpaceManager().getUsersForRole(SPACE,
DEVELOPER_ROLE, context)
+ .contains(nonMember));
context.setUser(ADMIN);
invitationManager.acceptMembership(SPACE, nonMember, context);
- assertTrue(spaceManager.userIsMember(SPACE, nonMember, context));
- assertTrue(spaceManager.getUsersForRole(SPACE, DEVELOPER_ROLE,
context).contains(
- nonMember));
+ assertTrue(getSpaceManager().userIsMember(SPACE, nonMember,
context));
+ assertTrue(getSpaceManager().getUsersForRole(SPACE,
DEVELOPER_ROLE, context)
+ .contains(nonMember));
} catch (XWikiException e) {
assertTrue(false);
}
}
- public void testCancelInvitation()
+ public void _testCancelInvitation()
{
try {
String nonMember = "testCancelInvitation_nonMember";
+ assertFalse(getSpaceManager().userIsMember(SPACE, nonMember,
context));
+
context.setUser(ADMIN);
invitationManager.inviteUser(nonMember, SPACE, false, context);
invitationManager.cancelInvitation(nonMember, SPACE, context);
+ Invitation invitation = getInvitation(nonMember, SPACE);
- Invitation prototype = createInvitation(nonMember, SPACE);
- prototype.setInviter(ADMIN);
- prototype.setStatus(JoinRequestStatus.SENT);
- List invitations = invitationManager.getInvitations(prototype,
context);
- assertEquals(0, invitations.size());
-
- prototype.setStatus(JoinRequestStatus.CANCELLED);
- invitations = invitationManager.getInvitations(prototype, context);
- assertEquals(1, invitations.size());
-
- assertFalse(spaceManager.userIsMember(SPACE, nonMember, context));
+ assertEquals(JoinRequestStatus.CANCELLED, invitation.getStatus());
+ assertNull(invitation.getResponseDate());
+ assertFalse(getSpaceManager().userIsMember(SPACE, nonMember,
context));
} catch (XWikiException e) {
assertTrue(false);
}
}
- public void testCancelMembershipRequest()
+ public void _testCancelMembershipRequest()
{
try {
String nonMember = "testCancelMembershipRequest_nonMember";
+ assertFalse(getSpaceManager().userIsMember(SPACE, nonMember,
context));
+
context.setUser(nonMember);
- invitationManager.requestMembership(SPACE, "I love you space",
context);
+ invitationManager.requestMembership(SPACE, "I love your space",
context);
invitationManager.cancelMembershipRequest(SPACE, context);
+ MembershipRequest request = getMembershipRequest(nonMember, SPACE);
- MembershipRequest prototype = createMembershipRequest(nonMember,
SPACE);
- prototype.setStatus(JoinRequestStatus.SENT);
- List membershipRequests =
invitationManager.getMembershipRequests(prototype, context);
- assertEquals(0, membershipRequests.size());
-
- prototype.setStatus(JoinRequestStatus.CANCELLED);
- membershipRequests =
invitationManager.getMembershipRequests(prototype, context);
- assertEquals(1, membershipRequests.size());
-
- assertFalse(spaceManager.userIsMember(SPACE, nonMember, context));
+ assertEquals(JoinRequestStatus.CANCELLED, request.getStatus());
+ assertNull(request.getResponseDate());
+ assertFalse(getSpaceManager().userIsMember(SPACE, nonMember,
context));
} catch (XWikiException e) {
assertTrue(false);
}
}
- public void testGetInvitations()
+ public void _testGetInvitations()
{
String nonMember = "testGetInvitations_nonMember";
context.setUser(ADMIN);
@@ -247,11 +279,11 @@
assertNotNull(invitationReceived);
}
- public void testGetMembershipRequests()
+ public void _testGetMembershipRequests()
{
String nonMember = "testGetMembershipRequests_nonMember";
context.setUser(nonMember);
- invitationManager.requestMembership(SPACE, "I love you space",
context);
+ invitationManager.requestMembership(SPACE, "I love your space",
context);
List requests =
invitationManager.getMembershipRequests(JoinRequestStatus.SENT, context);
MembershipRequest requestSent = null;
@@ -276,10 +308,12 @@
assertNotNull(requestReceived);
}
- public void testInviteUser()
+ public void _testInviteUser()
{
try {
String nonMember = "testInviteUser_nonMember";
+ assertFalse(getSpaceManager().userIsMember(SPACE, nonMember,
context));
+
context.setUser(ADMIN);
invitationManager.inviteUser(nonMember, SPACE, false, context);
invitationManager.inviteUser(nonMember, SPACE, false, context);
@@ -294,11 +328,7 @@
context.setUser(nonMember);
invitationManager.acceptInvitation(SPACE, context);
- try {
- assertTrue(spaceManager.userIsMember(SPACE, nonMember,
context));
- } catch (SpaceManagerException e) {
- assertTrue(false);
- }
+ assertTrue(getSpaceManager().userIsMember(SPACE, nonMember,
context));
context.setUser(ADMIN);
invitationManager.inviteUser(nonMember, SPACE, false, context);
@@ -313,64 +343,49 @@
}
}
- public void testRejectInvitation()
+ public void _testRejectInvitation()
{
try {
String nonMember = "testRejectInvitation_nonMember";
+ assertFalse(getSpaceManager().userIsMember(SPACE, nonMember,
context));
+
context.setUser(ADMIN);
invitationManager.inviteUser(nonMember, SPACE, false, context);
- Invitation prototype = createInvitation(nonMember, SPACE);
- prototype.setInviter(ADMIN);
- prototype.setStatus(JoinRequestStatus.SENT);
- List invitations = invitationManager.getInvitations(prototype,
context);
- assertEquals(1, invitations.size());
-
context.setUser(nonMember);
invitationManager.rejectInvitation(SPACE, context);
+ Invitation invitation = getInvitation(nonMember, SPACE);
- invitations = invitationManager.getInvitations(prototype, context);
- assertEquals(0, invitations.size());
-
- prototype.setStatus(JoinRequestStatus.REFUSED);
- invitations = invitationManager.getInvitations(prototype, context);
- assertEquals(1, invitations.size());
-
- assertFalse(spaceManager.userIsMember(SPACE, nonMember, context));
+ assertEquals(JoinRequestStatus.REFUSED, invitation.getStatus());
+ assertNotNull(invitation.getResponseDate());
+ assertFalse(getSpaceManager().userIsMember(SPACE, nonMember,
context));
} catch (XWikiException e) {
assertTrue(false);
}
}
- public void testRejectMembership()
+ public void _testRejectMembership()
{
try {
String nonMember = "testRejectMembership_nonMember";
+ assertFalse(getSpaceManager().userIsMember(SPACE, nonMember,
context));
+
context.setUser(nonMember);
- invitationManager.requestMembership(SPACE, "I love you space",
context);
+ invitationManager.requestMembership(SPACE, "I love your space",
context);
- MembershipRequest prototype = createMembershipRequest(nonMember,
SPACE);
- prototype.setStatus(JoinRequestStatus.SENT);
- List membershipRequests =
invitationManager.getMembershipRequests(prototype, context);
- assertEquals(1, membershipRequests.size());
-
context.setUser(ADMIN);
invitationManager.rejectMembership(SPACE, nonMember, context);
+ MembershipRequest request = getMembershipRequest(nonMember, SPACE);
- membershipRequests =
invitationManager.getMembershipRequests(prototype, context);
- assertEquals(0, membershipRequests.size());
-
- prototype.setStatus(JoinRequestStatus.REFUSED);
- membershipRequests =
invitationManager.getMembershipRequests(prototype, context);
- assertEquals(1, membershipRequests.size());
-
- assertFalse(spaceManager.userIsMember(SPACE, nonMember, context));
+ assertEquals(JoinRequestStatus.REFUSED, request.getStatus());
+ assertNotNull(request.getResponseDate());
+ assertFalse(getSpaceManager().userIsMember(SPACE, nonMember,
context));
} catch (XWikiException e) {
assertTrue(false);
}
}
- public void testRequestMembership()
+ public void _testRequestMembership()
{
try {
String nonMember = "testRequestMembership_nonMember";
@@ -388,7 +403,7 @@
context.setUser(ADMIN);
invitationManager.acceptMembership(SPACE, nonMember, context);
- assertTrue(spaceManager.userIsMember(SPACE, nonMember, context));
+ assertTrue(getSpaceManager().userIsMember(SPACE, nonMember,
context));
context.setUser(nonMember);
invitationManager.requestMembership(SPACE, "I really really love
you space", context);
@@ -402,8 +417,12 @@
assertTrue(false);
}
}
- */
+ protected SpaceManager getSpaceManager()
+ {
+ return (SpaceManager) mockSpaceManager.proxy();
+ }
+
protected abstract Invitation getInvitation(String invitee, String space)
throws XWikiException;
_______________________________________________
notifications mailing list
[email protected]
http://lists.xwiki.org/mailman/listinfo/notifications