You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@roller.apache.org by sn...@apache.org on 2005/07/13 21:24:10 UTC
svn commit: r216224 - in /incubator/roller/branches/roller_2.0:
src/org/roller/business/ src/org/roller/business/hibernate/
src/org/roller/model/ src/org/roller/presentation/website/actions/
tests/org/roller/ tests/org/roller/business/
Author: snoopdave
Date: Wed Jul 13 12:24:09 2005
New Revision: 216224
URL: http://svn.apache.org/viewcvs?rev=216224&view=rev
Log:
Roller 2.0 backend unit tests are looking good. Time to turn attention to the frontend tests and the UI.
Modified:
incubator/roller/branches/roller_2.0/src/org/roller/business/UserManagerImpl.java
incubator/roller/branches/roller_2.0/src/org/roller/business/hibernate/HibernateUserManagerImpl.java
incubator/roller/branches/roller_2.0/src/org/roller/model/UserManager.java
incubator/roller/branches/roller_2.0/src/org/roller/presentation/website/actions/UserAdminAction.java
incubator/roller/branches/roller_2.0/tests/org/roller/RollerTestBase.java
incubator/roller/branches/roller_2.0/tests/org/roller/business/PermissionsTest.java
incubator/roller/branches/roller_2.0/tests/org/roller/business/UserManagerTest.java
incubator/roller/branches/roller_2.0/tests/org/roller/business/WeblogManagerTest.java
Modified: incubator/roller/branches/roller_2.0/src/org/roller/business/UserManagerImpl.java
URL: http://svn.apache.org/viewcvs/incubator/roller/branches/roller_2.0/src/org/roller/business/UserManagerImpl.java?rev=216224&r1=216223&r2=216224&view=diff
==============================================================================
--- incubator/roller/branches/roller_2.0/src/org/roller/business/UserManagerImpl.java (original)
+++ incubator/roller/branches/roller_2.0/src/org/roller/business/UserManagerImpl.java Wed Jul 13 12:24:09 2005
@@ -91,12 +91,12 @@
public UserData getUser(String userName) throws RollerException
{
- return getUser(userName, true);
+ return getUser(userName, Boolean.TRUE);
}
public WebsiteData getWebsiteByHandle(String handle) throws RollerException
{
- return getWebsiteByHandle(handle, true);
+ return getWebsiteByHandle(handle, Boolean.TRUE);
}
//-----------------------------------------------------------------------
@@ -370,10 +370,11 @@
}
mStrategy.store(website);
-
+ // Add user as member of website
PermissionsData perms = new PermissionsData();
perms.setUser(ud);
perms.setWebsite(website);
+ perms.setPending(false);
perms.setPermissionMask(PermissionsData.ADMIN);
perms.save();
Modified: incubator/roller/branches/roller_2.0/src/org/roller/business/hibernate/HibernateUserManagerImpl.java
URL: http://svn.apache.org/viewcvs/incubator/roller/branches/roller_2.0/src/org/roller/business/hibernate/HibernateUserManagerImpl.java?rev=216224&r1=216223&r2=216224&view=diff
==============================================================================
--- incubator/roller/branches/roller_2.0/src/org/roller/business/hibernate/HibernateUserManagerImpl.java (original)
+++ incubator/roller/branches/roller_2.0/src/org/roller/business/hibernate/HibernateUserManagerImpl.java Wed Jul 13 12:24:09 2005
@@ -144,7 +144,7 @@
/**
* Return website specified by handle.
*/
- public WebsiteData getWebsiteByHandle(String handle, boolean enabledOnly)
+ public WebsiteData getWebsiteByHandle(String handle, Boolean enabled)
throws RollerException
{
if (handle==null )
@@ -154,12 +154,12 @@
{
Session session = ((HibernateStrategy)mStrategy).getSession();
Criteria criteria = session.createCriteria(WebsiteData.class);
- if (enabledOnly)
+ if (enabled != null)
{
criteria.add(
Expression.conjunction()
.add(new EqExpression("handle", handle, true))
- .add(Expression.eq("isEnabled", Boolean.TRUE)));
+ .add(Expression.eq("isEnabled", enabled)));
}
else
{
@@ -176,7 +176,7 @@
}
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- public UserData getUser(String userName, boolean enabledOnly)
+ public UserData getUser(String userName, Boolean enabled)
throws RollerException
{
if (userName==null )
@@ -186,12 +186,12 @@
{
Session session = ((HibernateStrategy)mStrategy).getSession();
Criteria criteria = session.createCriteria(UserData.class);
- if (enabledOnly)
+ if (enabled != null)
{
criteria.add(
Expression.conjunction()
.add(new EqExpression("userName", userName, true))
- .add(Expression.eq("isEnabled", Boolean.TRUE)));
+ .add(Expression.eq("isEnabled", enabled)));
}
else
{
Modified: incubator/roller/branches/roller_2.0/src/org/roller/model/UserManager.java
URL: http://svn.apache.org/viewcvs/incubator/roller/branches/roller_2.0/src/org/roller/model/UserManager.java?rev=216224&r1=216223&r2=216224&view=diff
==============================================================================
--- incubator/roller/branches/roller_2.0/src/org/roller/model/UserManager.java (original)
+++ incubator/roller/branches/roller_2.0/src/org/roller/model/UserManager.java Wed Jul 13 12:24:09 2005
@@ -105,7 +105,7 @@
public UserData getUser( String userName ) throws RollerException;
/** Get user object by user name, optionally include dis-enabled users */
- public UserData getUser( String userName, boolean enabledOnly ) throws RollerException;
+ public UserData getUser( String userName, Boolean enabled ) throws RollerException;
/**
@@ -155,7 +155,7 @@
* Get website specified by handle with option to return only enabled websites.
* @param handle Handle of website
*/
- public WebsiteData getWebsiteByHandle(String handle, boolean enabled)
+ public WebsiteData getWebsiteByHandle(String handle, Boolean enabled)
throws RollerException;
public WebsiteData retrieveWebsite(String id) throws RollerException;
@@ -181,10 +181,12 @@
/**
- * Remove page safely. This will throw an exception on attempts to remove mandatory website pages such as the
+ * Remove page safely. This will throw an exception on attempts to remove
+ * mandatory website pages such as the
* website's default page.
* @param id id of the page to be removed
- * @throws RollerException with root cause <code>IllegalArgumentException</code> if the page id is that of
+ * @throws RollerException with root cause <code>IllegalArgumentException</code>
+ * if the page id is that of
* a page that will not be removed by this method.
*/
public void removePageSafely(String id) throws RollerException;
Modified: incubator/roller/branches/roller_2.0/src/org/roller/presentation/website/actions/UserAdminAction.java
URL: http://svn.apache.org/viewcvs/incubator/roller/branches/roller_2.0/src/org/roller/presentation/website/actions/UserAdminAction.java?rev=216224&r1=216223&r2=216224&view=diff
==============================================================================
--- incubator/roller/branches/roller_2.0/src/org/roller/presentation/website/actions/UserAdminAction.java (original)
+++ incubator/roller/branches/roller_2.0/src/org/roller/presentation/website/actions/UserAdminAction.java Wed Jul 13 12:24:09 2005
@@ -67,7 +67,7 @@
if (userForm != null && userForm.getUserName() != null)
{
- UserData user = mgr.getUser( userForm.getUserName(), false );
+ UserData user = mgr.getUser(userForm.getUserName(), null);
if (user != null)
{
userForm.copyFrom(user, request.getLocale());
Modified: incubator/roller/branches/roller_2.0/tests/org/roller/RollerTestBase.java
URL: http://svn.apache.org/viewcvs/incubator/roller/branches/roller_2.0/tests/org/roller/RollerTestBase.java?rev=216224&r1=216223&r2=216224&view=diff
==============================================================================
--- incubator/roller/branches/roller_2.0/tests/org/roller/RollerTestBase.java (original)
+++ incubator/roller/branches/roller_2.0/tests/org/roller/RollerTestBase.java Wed Jul 13 12:24:09 2005
@@ -39,17 +39,21 @@
private Roller mRoller = null;
- /** Simple user and website */
+ /** Simple user created */
protected UserData mUser = null;
- protected WebsiteData mWebsite = null;
+ /** User name of simple user */
protected String testUsername = "testuser";
+ /** Simple website created (no entryes, categories, bookmarks, etc.) */
+ protected WebsiteData mWebsite = null;
- /** Collection of websites created, each with category tree. */
- protected List mWebsites = new LinkedList();
-
- /** Number of website/users to create */
- protected int mBlogCount = 1;
+ /** Full websites created, each with entries, cats, bookmarks, etc. */
+ protected List mWebsitesCreated = new LinkedList();
+
+ /** Users created, user X has permissions in full website X */
+ protected List mUsersCreated = new ArrayList();
+ /** Number of full website/users to create */
+ protected int mBlogCount = 2;
/** Number of categories to create in each category of tree. */
protected int mCatCount = 2;
/** Depth of created category tree. */
@@ -59,15 +63,18 @@
/** Number of comments to creaate per weblog entry */
protected int mCommentCount = 2;
- protected int mExpectedEntryCount = mEntriesPerCatCount +
- mEntriesPerCatCount*mCatCount +
- mEntriesPerCatCount*(mCatCount*mCatDepth);
- protected int mExpectedPublishedEntryCount = (int)(mEntriesPerCatCount*0.5) +
- (int)(mEntriesPerCatCount*0.5)*mCatCount +
- (int)(mEntriesPerCatCount*0.5)*(mCatCount*mCatDepth);
+ /** Total number of entries created */
+ protected int mExpectedEntryCount =
+ mEntriesPerCatCount +
+ mEntriesPerCatCount*mCatCount +
+ mEntriesPerCatCount*(mCatCount*mCatDepth);
+
+ /** Total number of entries created in published status */
+ protected int mExpectedPublishedEntryCount =
+ (int)(mEntriesPerCatCount*0.5) +
+ (int)(mEntriesPerCatCount*0.5)*mCatCount +
+ (int)(mEntriesPerCatCount*0.5)*(mCatCount*mCatDepth);
- /** Store users to make teardown easy. */
- protected List mUsersCreated = new ArrayList();
/** Store categories for use in asserts. */
protected List mCategoriesCreated = new ArrayList();
/** Store entries for use in asserts. */
@@ -159,8 +166,9 @@
"Test User #"+i, // fullName
"test"+i+"@test.com" // emailAddress
);
+ ud.setIsEnabled(new Boolean(i%2 == 0)); // half of users are disabled
WebsiteData website = (WebsiteData)umgr.getWebsites(ud, null).get(0);
- mWebsites.add(website);
+ mWebsitesCreated.add(website);
mUsersCreated.add(ud);
getRoller().commit();
@@ -294,7 +302,7 @@
{
getRoller().begin(UserData.SYSTEM_USER);
UserManager umgr = getRoller().getUserManager();
- for (Iterator siteIter = mWebsites.iterator(); siteIter.hasNext();)
+ for (Iterator siteIter = mWebsitesCreated.iterator(); siteIter.hasNext();)
{
WebsiteData site = (WebsiteData) siteIter.next();
site = umgr.retrieveWebsite(site.getId());
@@ -305,7 +313,7 @@
{
UserData user = (UserData) userIter.next();
user = umgr.retrieveUser(user.getId());
- user.remove();
+ if (user != null) user.remove();
}
getRoller().commit();
}
Modified: incubator/roller/branches/roller_2.0/tests/org/roller/business/PermissionsTest.java
URL: http://svn.apache.org/viewcvs/incubator/roller/branches/roller_2.0/tests/org/roller/business/PermissionsTest.java?rev=216224&r1=216223&r2=216224&view=diff
==============================================================================
--- incubator/roller/branches/roller_2.0/tests/org/roller/business/PermissionsTest.java (original)
+++ incubator/roller/branches/roller_2.0/tests/org/roller/business/PermissionsTest.java Wed Jul 13 12:24:09 2005
@@ -240,12 +240,23 @@
UserManager umgr = getRoller().getUserManager();
String userName = "testuser0";
String permsId;
+ UserData tuser = (UserData)mUsersCreated.get(0);
+ WebsiteData tsite = (WebsiteData)mWebsitesCreated.get(0);
+ // first, remove existing permissions for tuser in tsite
+ getRoller().begin();
+ {
+ tuser = umgr.retrieveUser(tuser.getId());
+ tsite = umgr.retrieveWebsite(tsite.getId());
+ umgr.retireUser(tsite, tuser);
+ }
+ getRoller().commit();
+
// test invite user to website
getRoller().begin();
{
- UserData tuser = umgr.getUser(userName);
- WebsiteData tsite = (WebsiteData)umgr.getWebsites(tuser, null).get(0);
+ tuser = umgr.retrieveUser(tuser.getId());
+ tsite = umgr.retrieveWebsite(tsite.getId());
PermissionsData perms = umgr.inviteUser(
tsite, tuser, PermissionsData.LIMITED);
permsId = perms.getId();
@@ -255,8 +266,8 @@
// test user accepts invitation
getRoller().begin();
{
- UserData tuser = umgr.getUser(userName);
- WebsiteData tsite = (WebsiteData)umgr.getWebsites(tuser, null).get(0);
+ tuser = umgr.retrieveUser(tuser.getId());
+ tsite = umgr.retrieveWebsite(tsite.getId());
// can get pending permission object
PermissionsData perms = umgr.getPermissions(tsite, tuser);
@@ -282,8 +293,8 @@
// test user is member of website, website has member user
getRoller().begin();
{
- UserData tuser = umgr.getUser(userName);
- WebsiteData tsite = (WebsiteData)umgr.getWebsites(tuser, null).get(0);
+ tuser = umgr.retrieveUser(tuser.getId());
+ tsite = umgr.retrieveWebsite(tsite.getId());
// assert that invitation list is empty
assertTrue(umgr.getPendingPermissions(tuser).isEmpty());
@@ -307,15 +318,15 @@
// test user can be retired from website
getRoller().begin();
{
- UserData tuser = umgr.getUser(userName);
- WebsiteData tsite = (WebsiteData)umgr.getWebsites(tuser, null).get(0);
+ tuser = umgr.retrieveUser(tuser.getId());
+ tsite = umgr.retrieveWebsite(tsite.getId());
umgr.retireUser(tsite, tuser);
}
getRoller().commit();
getRoller().begin();
{
- UserData tuser = umgr.getUser(userName);
- WebsiteData tsite = (WebsiteData)umgr.getWebsites(tuser, null).get(0);
+ tuser = umgr.retrieveUser(tuser.getId());
+ tsite = umgr.retrieveWebsite(tsite.getId());
List websites = umgr.getWebsites(tuser, null);
assertEquals(0, websites.size());
List users = umgr.getUsers(tsite, null);
@@ -344,12 +355,23 @@
UserManager umgr = getRoller().getUserManager();
String userName = "testuser0";
String permsId = null;
+ UserData tuser = (UserData)mUsersCreated.get(0);
+ WebsiteData tsite = (WebsiteData)mWebsitesCreated.get(0);
- // Create add user to website
+ // first, remove existing permissions for tuser in tsite
+ getRoller().begin();
+ {
+ tuser = umgr.retrieveUser(tuser.getId());
+ tsite = umgr.retrieveWebsite(tsite.getId());
+ umgr.retireUser(tsite, tuser);
+ }
+ getRoller().commit();
+
+ // add user to website
getRoller().begin();
{
- UserData tuser = umgr.getUser(userName);
- WebsiteData tsite = (WebsiteData)umgr.getWebsites(tuser, null).get(0);
+ tuser = umgr.retrieveUser(tuser.getId());
+ tsite = umgr.retrieveWebsite(tsite.getId());
PermissionsData perms = new PermissionsData();
perms.setUser(tuser);
perms.setWebsite(tsite);
@@ -361,8 +383,7 @@
// delete website
getRoller().begin(UserData.SYSTEM_USER);
{
- UserData tuser = umgr.getUser(userName);
- WebsiteData tsite = (WebsiteData)umgr.getWebsites(tuser, null).get(0);
+ tsite = umgr.retrieveWebsite(tsite.getId());
tsite.remove();
}
getRoller().commit();
@@ -382,56 +403,5 @@
fail();
}
}
-
- /**
- * Test permissions removal and related cascades, specifically:
- * <ul>
- * <li> when user is deleted, permissions are deleted too </li>
- * <li> when website is deleted, permissions are deleted too </li>
- * </ul>
- */
- public void testRemoveUserCascade() throws Exception
- {
- try
- {
- UserManager umgr = getRoller().getUserManager();
- String userName = "testuser0";
- String permsId = null;
-
- // Create add user to website
- getRoller().begin();
- {
- UserData tuser = umgr.getUser(userName);
- WebsiteData tsite = (WebsiteData)umgr.getWebsites(tuser, null).get(0);
- PermissionsData perms = new PermissionsData();
- perms.setUser(tuser);
- perms.setWebsite(tsite);
- perms.save();
- permsId = perms.getId();
- }
- getRoller().commit();
-
- // delete user
- getRoller().begin(UserData.SYSTEM_USER);
- {
- UserData tuser = umgr.getUser(userName);
- tuser.remove();
- }
- getRoller().commit();
-
- // ensure that permission was deleted too
- getRoller().begin();
- {
- assertNull(getRoller().getPersistenceStrategy().load(
- permsId, PermissionsData.class));
- }
- getRoller().commit();
- }
- catch (Exception e)
- {
- e.printStackTrace();
- fail();
- }
- }
}
Modified: incubator/roller/branches/roller_2.0/tests/org/roller/business/UserManagerTest.java
URL: http://svn.apache.org/viewcvs/incubator/roller/branches/roller_2.0/tests/org/roller/business/UserManagerTest.java?rev=216224&r1=216223&r2=216224&view=diff
==============================================================================
--- incubator/roller/branches/roller_2.0/tests/org/roller/business/UserManagerTest.java (original)
+++ incubator/roller/branches/roller_2.0/tests/org/roller/business/UserManagerTest.java Wed Jul 13 12:24:09 2005
@@ -74,19 +74,19 @@
enabledUser = createUser(enabledUserName,
"password",
"EnabledUser",
- "enabledUser@example.com"
- );
+ "enabledUser@example.com");
+ enabledUser.setIsEnabled(Boolean.TRUE);
+ enabledSite = ((WebsiteData)umgr.getWebsites(enabledUser, null).get(0));
+ enabledSite.setIsEnabled(Boolean.TRUE);
disabledUser = createUser(disabledUserName,
"password",
"DisabledUser",
- "disabledUser@example.com"
- );
- enabledSite = ((WebsiteData)umgr.getWebsites(enabledUser, null).get(0));
- enabledSite.setIsEnabled(Boolean.TRUE);
-
+ "disabledUser@example.com");
+
+ disabledUser.setIsEnabled(Boolean.FALSE);
disabledSite = ((WebsiteData)umgr.getWebsites(disabledUser, null).get(0));
- disabledSite.setIsEnabled(Boolean.FALSE);
+ disabledSite.setIsEnabled(Boolean.FALSE);
getRoller().commit();
}
@@ -205,7 +205,8 @@
getRoller().begin(UserData.SYSTEM_USER);
WebsiteData retrieved = umgr.retrieveWebsite(stored.getId());
assertEquals(stored, retrieved);
- getRoller().release();
+ retrieved.remove();
+ getRoller().commit();
getRoller().begin(UserData.SYSTEM_USER);
user = umgr.retrieveUser(user.getId());
@@ -255,9 +256,10 @@
assertEquals(3, pages1.size());
getRoller().rollback();
- // Remove the user
-
+ // Remove the website and user
getRoller().begin(UserData.SYSTEM_USER);
+ website = umgr.retrieveWebsite(website.getId());
+ website.remove();
user = umgr.retrieveUser(user.getId());
user.remove();
getRoller().commit();
@@ -267,9 +269,6 @@
UserData user2 = umgr.retrieveUser(user.getId());
assertNull(user2);
- WebsiteData website2 = (WebsiteData)umgr.getWebsites(user, null).get(0);
- assertNull(website2);
-
assertNull(getRoller().getBookmarkManager().retrieveFolder(root.getId()));
List pages2 = getRoller().getUserManager().getPages(website);
@@ -286,8 +285,9 @@
umgr.getUser(enabledUserName), Boolean.TRUE).size() > 0);
// can't get testuser1, who is disabled
+ disabledUser = umgr.retrieveUser(disabledUser.getId());
assertTrue(umgr.getWebsites(
- umgr.getUser(disabledUserName), Boolean.TRUE).size() == 0);
+ disabledUser, Boolean.TRUE).size() == 0);
// can get testuser1 with enabledOnly flag set to false
assertTrue(umgr.getWebsites(
@@ -306,7 +306,7 @@
assertNull(getRoller().getUserManager().getUser(disabledUserName));
// can get testuser1 with enabledOnly flag set to false
- assertNotNull(getRoller().getUserManager().getUser(disabledUserName,false));
+ assertNotNull(getRoller().getUserManager().getUser(disabledUserName, null));
getRoller().release();
}
Modified: incubator/roller/branches/roller_2.0/tests/org/roller/business/WeblogManagerTest.java
URL: http://svn.apache.org/viewcvs/incubator/roller/branches/roller_2.0/tests/org/roller/business/WeblogManagerTest.java?rev=216224&r1=216223&r2=216224&view=diff
==============================================================================
--- incubator/roller/branches/roller_2.0/tests/org/roller/business/WeblogManagerTest.java (original)
+++ incubator/roller/branches/roller_2.0/tests/org/roller/business/WeblogManagerTest.java Wed Jul 13 12:24:09 2005
@@ -646,7 +646,7 @@
WeblogManager wmgr = getRoller().getWeblogManager();
UserManager umgr = getRoller().getUserManager();
- WebsiteData website = (WebsiteData)mWebsites.get(0);
+ WebsiteData website = (WebsiteData)mWebsitesCreated.get(0);
website = umgr.retrieveWebsite(website.getId());
// PUBLISHISHED ONLY
@@ -698,7 +698,7 @@
WeblogManager wmgr = getRoller().getWeblogManager();
UserManager umgr = getRoller().getUserManager();
- WebsiteData website = (WebsiteData)mWebsites.get(0);
+ WebsiteData website = (WebsiteData)mWebsitesCreated.get(0);
website = umgr.retrieveWebsite(website.getId());
List comments = wmgr.getRecentComments(website, 2);
assertTrue(comments.size() > 1);
@@ -724,7 +724,7 @@
{
getRoller().begin(UserData.SYSTEM_USER);
WeblogManager wmgr = getRoller().getWeblogManager();
- WebsiteData website = (WebsiteData)mWebsites.get(0);
+ WebsiteData website = (WebsiteData)mWebsitesCreated.get(0);
Date lastPub = wmgr.getWeblogLastPublishTime(website);
//System.out.println(lastPub);
@@ -734,7 +734,7 @@
public void testEntryAttributes() throws Exception {
getRoller().begin(UserData.SYSTEM_USER);
WeblogManager wmgr = getRoller().getWeblogManager();
- WebsiteData website = (WebsiteData)mWebsites.get(0);
+ WebsiteData website = (WebsiteData)mWebsitesCreated.get(0);
UserData user = (UserData)mUsersCreated.get(0);
WeblogCategoryData cat = wmgr.getRootWeblogCategory(website);