Hi Dave,
Thanks for the checkin. It seems that the patch was not applied
correctly. After updating with these changes I noticed that the checkin
contains some additional changes and does not contain some of the the
changes I sent you. Attached is the patch that corrects it. Please review.
Thanks,
Mitesh
[EMAIL PROTECTED] wrote:
Author: snoopdave
Date: Sat Jan 20 04:39:29 2007
New Revision: 498108
URL: http://svn.apache.org/viewvc?view=rev&rev=498108
Log:
Fixes to JDO impl and fixes to tests that were saving detached objects
Modified:
incubator/roller/trunk/sandbox/jdobackend/src/org/apache/roller/business/datamapper/DatamapperBookmarkManagerImpl.java
incubator/roller/trunk/sandbox/jdobackend/src/org/apache/roller/business/datamapper/DatamapperUserManagerImpl.java
incubator/roller/trunk/sandbox/jdobackend/src/org/apache/roller/business/datamapper/DatamapperWeblogManagerImpl.java
incubator/roller/trunk/sandbox/jdobackend/src/org/apache/roller/business/jpa/JPAPersistenceStrategy.java
incubator/roller/trunk/sandbox/jdobackend/src/org/apache/roller/business/jpa/JPARefererManager.java
incubator/roller/trunk/sandbox/jdobackend/src/org/apache/roller/pojos/CommentData.orm.xml
incubator/roller/trunk/sandbox/jdobackend/src/org/apache/roller/pojos/RollerPropertyData.orm.xml
incubator/roller/trunk/src/org/apache/roller/pojos/RollerPropertyData.java
incubator/roller/trunk/src/org/apache/roller/pojos/WeblogEntryData.java
incubator/roller/trunk/tests/org/apache/roller/TestUtils.java
incubator/roller/trunk/tests/org/apache/roller/business/BookmarkTest.java
incubator/roller/trunk/tests/org/apache/roller/business/CommentTest.java
incubator/roller/trunk/tests/org/apache/roller/business/PermissionTest.java
incubator/roller/trunk/tests/org/apache/roller/business/PingsTest.java
incubator/roller/trunk/tests/org/apache/roller/business/WeblogCategoryTest.java
incubator/roller/trunk/tests/org/apache/roller/business/WeblogPageTest.java
Modified:
incubator/roller/trunk/sandbox/jdobackend/src/org/apache/roller/business/datamapper/DatamapperBookmarkManagerImpl.java
URL:
http://svn.apache.org/viewvc/incubator/roller/trunk/sandbox/jdobackend/src/org/apache/roller/business/datamapper/DatamapperBookmarkManagerImpl.java?view=diff&rev=498108&r1=498107&r2=498108
==============================================================================
---
incubator/roller/trunk/sandbox/jdobackend/src/org/apache/roller/business/datamapper/DatamapperBookmarkManagerImpl.java
(original)
+++
incubator/roller/trunk/sandbox/jdobackend/src/org/apache/roller/business/datamapper/DatamapperBookmarkManagerImpl.java
Sat Jan 20 04:39:29 2007
@@ -103,7 +103,7 @@
// maintain relationship from both sides
FolderData parent = folder.getParent();
if(parent != null) {
- //parent.getFolders().add(folder);
+ parent.getFolders().add(folder);
}
}
Modified:
incubator/roller/trunk/sandbox/jdobackend/src/org/apache/roller/business/datamapper/DatamapperUserManagerImpl.java
URL:
http://svn.apache.org/viewvc/incubator/roller/trunk/sandbox/jdobackend/src/org/apache/roller/business/datamapper/DatamapperUserManagerImpl.java?view=diff&rev=498108&r1=498107&r2=498108
==============================================================================
---
incubator/roller/trunk/sandbox/jdobackend/src/org/apache/roller/business/datamapper/DatamapperUserManagerImpl.java
(original)
+++
incubator/roller/trunk/sandbox/jdobackend/src/org/apache/roller/business/datamapper/DatamapperUserManagerImpl.java
Sat Jan 20 04:39:29 2007
@@ -192,14 +192,6 @@
FolderData rootFolder = bmgr.getRootFolder(website);
if (null != rootFolder) {
this.strategy.remove(rootFolder);
-
- // Still cannot get all Bookmarks cleared!
-// Iterator allFolders = bmgr.getAllFolders(website).iterator();
-// while (allFolders.hasNext()) {
-// FolderData aFolder = (FolderData)allFolders.next();
-// bmgr.removeFolderContents(aFolder);
-// this.strategy.remove(aFolder);
-// }
}
// remove categories
Modified:
incubator/roller/trunk/sandbox/jdobackend/src/org/apache/roller/business/datamapper/DatamapperWeblogManagerImpl.java
URL:
http://svn.apache.org/viewvc/incubator/roller/trunk/sandbox/jdobackend/src/org/apache/roller/business/datamapper/DatamapperWeblogManagerImpl.java?view=diff&rev=498108&r1=498107&r2=498108
==============================================================================
---
incubator/roller/trunk/sandbox/jdobackend/src/org/apache/roller/business/datamapper/DatamapperWeblogManagerImpl.java
(original)
+++
incubator/roller/trunk/sandbox/jdobackend/src/org/apache/roller/business/datamapper/DatamapperWeblogManagerImpl.java
Sat Jan 20 04:39:29 2007
@@ -29,6 +29,7 @@
import java.util.Map;
import java.text.SimpleDateFormat;
import java.util.TreeMap;
+import java.sql.Timestamp;
import org.apache.commons.collections.comparators.ReverseComparator;
import org.apache.commons.logging.Log;
@@ -37,6 +38,7 @@
import org.apache.roller.RollerException;
import org.apache.roller.business.RollerFactory;
import org.apache.roller.business.WeblogManager;
+import org.apache.roller.business.WeblogManagerImpl;
import org.apache.roller.pojos.CommentData;
import org.apache.roller.pojos.HitCountData;
import org.apache.roller.pojos.RefererData;
@@ -57,7 +59,7 @@
* Created on May 31, 2006, 4:08 PM
*
*/
-public abstract class DatamapperWeblogManagerImpl implements WeblogManager {
+public abstract class DatamapperWeblogManagerImpl extends WeblogManagerImpl {
protected static Log log = LogFactory.getLog(
DatamapperWeblogManagerImpl.class);
Modified:
incubator/roller/trunk/sandbox/jdobackend/src/org/apache/roller/business/jpa/JPAPersistenceStrategy.java
URL:
http://svn.apache.org/viewvc/incubator/roller/trunk/sandbox/jdobackend/src/org/apache/roller/business/jpa/JPAPersistenceStrategy.java?view=diff&rev=498108&r1=498107&r2=498108
==============================================================================
---
incubator/roller/trunk/sandbox/jdobackend/src/org/apache/roller/business/jpa/JPAPersistenceStrategy.java
(original)
+++
incubator/roller/trunk/sandbox/jdobackend/src/org/apache/roller/business/jpa/JPAPersistenceStrategy.java
Sat Jan 20 04:39:29 2007
@@ -249,7 +249,7 @@
*/
public DatamapperRemoveQuery newRemoveQuery(Class clazz, String queryName)
throws RollerException {
- EntityManager em = getEntityManager(false);
+ EntityManager em = getEntityManager(true);
return new JPARemoveQueryImpl(em, clazz, queryName);
}
Modified:
incubator/roller/trunk/sandbox/jdobackend/src/org/apache/roller/business/jpa/JPARefererManager.java
URL:
http://svn.apache.org/viewvc/incubator/roller/trunk/sandbox/jdobackend/src/org/apache/roller/business/jpa/JPARefererManager.java?view=diff&rev=498108&r1=498107&r2=498108
==============================================================================
---
incubator/roller/trunk/sandbox/jdobackend/src/org/apache/roller/business/jpa/JPARefererManager.java
(original)
+++
incubator/roller/trunk/sandbox/jdobackend/src/org/apache/roller/business/jpa/JPARefererManager.java
Sat Jan 20 04:39:29 2007
@@ -67,7 +67,6 @@
* Generates a JPQL query of form
* SELECT r FROM RefererData r WHERE
* ( refererUrl like %blacklist[1] ..... OR refererUrl like
%blacklist[n])
- * AND (r.excerpt IS NULL OR r.excerpt LIKE '')
* @param blacklist
* @return
*/
@@ -87,7 +86,6 @@
// Get rid of last OR
queryString.delete(queryString.length() - OR.length(),
queryString.length());
queryString.append(" ) ");
- queryString.append(" AND (r.excerpt IS NULL OR r.excerpt LIKE '')");
return queryString;
}
Modified:
incubator/roller/trunk/sandbox/jdobackend/src/org/apache/roller/pojos/CommentData.orm.xml
URL:
http://svn.apache.org/viewvc/incubator/roller/trunk/sandbox/jdobackend/src/org/apache/roller/pojos/CommentData.orm.xml?view=diff&rev=498108&r1=498107&r2=498108
==============================================================================
---
incubator/roller/trunk/sandbox/jdobackend/src/org/apache/roller/pojos/CommentData.orm.xml
(original)
+++
incubator/roller/trunk/sandbox/jdobackend/src/org/apache/roller/pojos/CommentData.orm.xml
Sat Jan 20 04:39:29 2007
@@ -119,6 +119,9 @@
<join-column name="entryid" insertable="true" updatable="true"
nullable="false"/>
</many-to-one>
<transient name="timestamp"/>
+ <transient name="spam"/>
+ <transient name="pending"/>
+ <transient name="approved"/>
</attributes>
</entity>
</entity-mappings>
Modified:
incubator/roller/trunk/sandbox/jdobackend/src/org/apache/roller/pojos/RollerPropertyData.orm.xml
URL:
http://svn.apache.org/viewvc/incubator/roller/trunk/sandbox/jdobackend/src/org/apache/roller/pojos/RollerPropertyData.orm.xml?view=diff&rev=498108&r1=498107&r2=498108
==============================================================================
---
incubator/roller/trunk/sandbox/jdobackend/src/org/apache/roller/pojos/RollerPropertyData.orm.xml
(original)
+++
incubator/roller/trunk/sandbox/jdobackend/src/org/apache/roller/pojos/RollerPropertyData.orm.xml
Sat Jan 20 04:39:29 2007
@@ -23,7 +23,6 @@
<basic name="value">
<column name="value" insertable="true" updatable="true"
unique="false"/>
</basic>
- <transient name="id"/>
</attributes>
</entity>
</entity-mappings>
Modified:
incubator/roller/trunk/src/org/apache/roller/pojos/RollerPropertyData.java
URL:
http://svn.apache.org/viewvc/incubator/roller/trunk/src/org/apache/roller/pojos/RollerPropertyData.java?view=diff&rev=498108&r1=498107&r2=498108
==============================================================================
--- incubator/roller/trunk/src/org/apache/roller/pojos/RollerPropertyData.java
(original)
+++ incubator/roller/trunk/src/org/apache/roller/pojos/RollerPropertyData.java
Sat Jan 20 04:39:29 2007
@@ -75,7 +75,14 @@
}
-
+ public void setId(String id) {
+ setName(id);
+ }
+
+ public String getId() {
+ return getName();
+ }
+
/**
* Getter for property name.
*
Modified:
incubator/roller/trunk/src/org/apache/roller/pojos/WeblogEntryData.java
URL:
http://svn.apache.org/viewvc/incubator/roller/trunk/src/org/apache/roller/pojos/WeblogEntryData.java?view=diff&rev=498108&r1=498107&r2=498108
==============================================================================
--- incubator/roller/trunk/src/org/apache/roller/pojos/WeblogEntryData.java
(original)
+++ incubator/roller/trunk/src/org/apache/roller/pojos/WeblogEntryData.java Sat
Jan 20 04:39:29 2007
@@ -422,7 +422,7 @@
}
}
public void onRemoveEntryAttribute(EntryAttributeData att) throws
RollerException {
- attMap.remove(att);
+ attMap.remove(att.getName());
}
//-------------------------------------------------------------------------
Modified: incubator/roller/trunk/tests/org/apache/roller/TestUtils.java
URL:
http://svn.apache.org/viewvc/incubator/roller/trunk/tests/org/apache/roller/TestUtils.java?view=diff&rev=498108&r1=498107&r2=498108
==============================================================================
--- incubator/roller/trunk/tests/org/apache/roller/TestUtils.java (original)
+++ incubator/roller/trunk/tests/org/apache/roller/TestUtils.java Sat Jan 20
04:39:29 2007
@@ -181,8 +181,8 @@
testEntry.setPubTime(new java.sql.Timestamp(new
java.util.Date().getTime()));
testEntry.setUpdateTime(new java.sql.Timestamp(new
java.util.Date().getTime()));
testEntry.setStatus(WeblogEntryData.PUBLISHED);
- testEntry.setWebsite(weblog);
- testEntry.setCreator(user);
+ testEntry.setWebsite(getManagedWebsite(weblog));
+ testEntry.setCreator(getManagedUser(user));
testEntry.setCategory(cat);
// store entry
@@ -232,7 +232,7 @@
testComment.setRemoteHost("foofoo");
testComment.setContent("this is a test comment");
testComment.setPostTime(new java.sql.Timestamp(new
java.util.Date().getTime()));
- testComment.setWeblogEntry(entry);
+ testComment.setWeblogEntry(getManagedWeblogEntry(entry));
testComment.setStatus(CommentData.APPROVED);
// store testComment
@@ -322,7 +322,7 @@
AutoPingManager mgr = RollerFactory.getRoller().getAutopingManager();
// store auto ping
- AutoPingData autoPing = new AutoPingData(null, ping, weblog);
+ AutoPingData autoPing = new AutoPingData(null, ping,
getManagedWebsite(weblog) );
mgr.saveAutoPing(autoPing);
// flush to db
@@ -365,7 +365,7 @@
// store
HitCountData testCount = new HitCountData();
- testCount.setWeblog(weblog);
+ testCount.setWeblog(getManagedWebsite(weblog));
testCount.setDailyHits(amount);
mgr.saveHitCount(testCount);
@@ -396,6 +396,30 @@
// flush to db
RollerFactory.getRoller().flush();
+ }
+
+ /**
+ * Convenience method that returns managed copy of given user.
+ */
+ public static UserData getManagedUser(UserData user) throws
RollerException {
+ UserManager mgr = RollerFactory.getRoller().getUserManager();
+ return mgr.getUser(user.getId());
+ }
+
+ /**
+ * Convenience method that returns managed copy of given website.
+ */
+ public static WebsiteData getManagedWebsite(WebsiteData website) throws
RollerException {
+ UserManager mgr = RollerFactory.getRoller().getUserManager();
+ return mgr.getWebsite(website.getId());
+ }
+
+ /**
+ * Convenience method that returns managed copy of given WeblogEntry.
+ */
+ public static WeblogEntryData getManagedWeblogEntry(WeblogEntryData
weblogEntry) throws RollerException {
+ WeblogManager mgr = RollerFactory.getRoller().getWeblogManager();
+ return mgr.getWeblogEntry(weblogEntry.getId());
}
}
Modified:
incubator/roller/trunk/tests/org/apache/roller/business/BookmarkTest.java
URL:
http://svn.apache.org/viewvc/incubator/roller/trunk/tests/org/apache/roller/business/BookmarkTest.java?view=diff&rev=498108&r1=498107&r2=498108
==============================================================================
--- incubator/roller/trunk/tests/org/apache/roller/business/BookmarkTest.java
(original)
+++ incubator/roller/trunk/tests/org/apache/roller/business/BookmarkTest.java
Sat Jan 20 04:39:29 2007
@@ -106,7 +106,7 @@
assertEquals(0, root.getBookmarks().size());
// add a folder
- FolderData folder = new FolderData(root, "TestFolder1", null,
testWeblog);
+ FolderData folder = new FolderData(root, "TestFolder1", null,
TestUtils.getManagedWebsite(testWeblog));
bmgr.saveFolder(folder);
TestUtils.endSession(true);
@@ -126,7 +126,7 @@
assertEquals("folderTest1", folder.getName());
// add a subfolder
- FolderData subfolder = new FolderData(folder, "subfolderTest1", null,
testWeblog);
+ FolderData subfolder = new FolderData(folder, "subfolderTest1", null,
TestUtils.getManagedWebsite(testWeblog));
bmgr.saveFolder(subfolder);
TestUtils.endSession(true);
@@ -183,7 +183,7 @@
boolean exception = false;
try {
// child folder with same name as first
- FolderData f3 = new FolderData(f1, "f2", null, testWeblog);
+ FolderData f3 = new FolderData(f1, "f2", null,
TestUtils.getManagedWebsite(testWeblog));
bmgr.saveFolder(f3);
TestUtils.endSession(true);
} catch (RollerException e) {
@@ -365,11 +365,11 @@
FolderData root = bmgr.getRootFolder(testWeblog);
// add some folders
- FolderData f1 = new FolderData(root, "f1", null, testWeblog);
+ FolderData f1 = new FolderData(root, "f1", null,
TestUtils.getManagedWebsite(testWeblog));
bmgr.saveFolder(f1);
- FolderData f2 = new FolderData(f1, "f2", null, testWeblog);
+ FolderData f2 = new FolderData(f1, "f2", null,
TestUtils.getManagedWebsite(testWeblog));
bmgr.saveFolder(f2);
- FolderData f3 = new FolderData(root, "f3", null, testWeblog);
+ FolderData f3 = new FolderData(root, "f3", null,
TestUtils.getManagedWebsite(testWeblog));
bmgr.saveFolder(f3);
// add some bookmarks
@@ -449,7 +449,7 @@
f1.addBookmark(b1);
// create folder f2 inside f1
- FolderData f2 = new FolderData(f1, "f2", null, testWeblog);
+ FolderData f2 = new FolderData(f1, "f2", null,
TestUtils.getManagedWebsite(testWeblog));
bmgr.saveFolder(f2);
// create bookmark b2 inside folder f2
@@ -460,7 +460,7 @@
f2.addBookmark(b2);
// create folder f3 inside folder f2
- FolderData f3 = new FolderData(f2, "f3", null, testWeblog);
+ FolderData f3 = new FolderData(f2, "f3", null,
TestUtils.getManagedWebsite(testWeblog));
bmgr.saveFolder(f3);
// crete bookmark b3 inside folder f3
@@ -496,6 +496,8 @@
assertTrue(safe);
// move f1 to dest
+ f1 = bmgr.getFolder( f1.getId()); //Get managed copy
+ dest = bmgr.getFolder( dest.getId()); //Get managed copy
bmgr.moveFolder(f1, dest);
TestUtils.endSession(true);
@@ -518,7 +520,7 @@
InputStream fis = this.getClass().getResourceAsStream("/bookmarks.opml");
getRoller().getBookmarkManager().importBookmarks(
- testWeblog, "ZZZ_imports_ZZZ", fileToString(fis));
+ TestUtils.getManagedWebsite(testWeblog), "ZZZ_imports_ZZZ",
fileToString(fis));
TestUtils.endSession(true);
FolderData fd = null;
Modified:
incubator/roller/trunk/tests/org/apache/roller/business/CommentTest.java
URL:
http://svn.apache.org/viewvc/incubator/roller/trunk/tests/org/apache/roller/business/CommentTest.java?view=diff&rev=498108&r1=498107&r2=498108
==============================================================================
--- incubator/roller/trunk/tests/org/apache/roller/business/CommentTest.java
(original)
+++ incubator/roller/trunk/tests/org/apache/roller/business/CommentTest.java
Sat Jan 20 04:39:29 2007
@@ -101,7 +101,7 @@
comment.setRemoteHost("foofoo");
comment.setContent("this is a test comment");
comment.setPostTime(new java.sql.Timestamp(new
java.util.Date().getTime()));
- comment.setWeblogEntry(testEntry);
+ comment.setWeblogEntry(TestUtils.getManagedWeblogEntry(testEntry));
comment.setStatus(CommentData.APPROVED);
// create a comment
Modified:
incubator/roller/trunk/tests/org/apache/roller/business/PermissionTest.java
URL:
http://svn.apache.org/viewvc/incubator/roller/trunk/tests/org/apache/roller/business/PermissionTest.java?view=diff&rev=498108&r1=498107&r2=498108
==============================================================================
--- incubator/roller/trunk/tests/org/apache/roller/business/PermissionTest.java
(original)
+++ incubator/roller/trunk/tests/org/apache/roller/business/PermissionTest.java
Sat Jan 20 04:39:29 2007
@@ -101,8 +101,8 @@
// create permissions
perm = new PermissionsData();
- perm.setUser(testUser);
- perm.setWebsite(testWeblog);
+ perm.setUser(TestUtils.getManagedUser(testUser) );
+ perm.setWebsite(TestUtils.getManagedWebsite(testWeblog));
perm.setPending(false);
perm.setPermissionMask(PermissionsData.ADMIN);
mgr.savePermissions(perm);
@@ -114,138 +114,138 @@
assertNotNull(perm);
assertEquals(PermissionsData.ADMIN, perm.getPermissionMask());
- // update permissions
- perm.setPermissionMask(PermissionsData.LIMITED);
- mgr.savePermissions(perm);
- TestUtils.endSession(true);
-
- // check that update was successful
- perm = null;
- perm = mgr.getPermissions(testWeblog, testUser);
- assertNotNull(perm);
- assertEquals(PermissionsData.LIMITED, perm.getPermissionMask());
+// // update permissions
+// perm.setPermissionMask(PermissionsData.LIMITED);
+// mgr.savePermissions(perm);
+// TestUtils.endSession(true);
+//
+// // check that update was successful
+// perm = null;
+// perm = mgr.getPermissions(testWeblog, testUser);
+// assertNotNull(perm);
+// assertEquals(PermissionsData.LIMITED, perm.getPermissionMask());
}
- /**
- * Test lookup mechanisms.
- */
- public void testPermissionsLookups() throws Exception {
-
- // we need a second user for this test
- UserData user = TestUtils.setupUser("foofoo");
- TestUtils.endSession(true);
-
- UserManager mgr = RollerFactory.getRoller().getUserManager();
- PermissionsData perm = null;
- List perms = null;
-
- // get all permissions for a user
- perms = mgr.getAllPermissions(user);
- assertEquals(0, perms.size());
- perms = mgr.getAllPermissions(testUser);
- assertEquals(1, perms.size());
-
- // get all permissions for a weblog
- perms = mgr.getAllPermissions(testWeblog);
- assertEquals(1, perms.size());
-
- perm = new PermissionsData();
- perm.setUser(user);
- perm.setWebsite(testWeblog);
- perm.setPending(true);
- perm.setPermissionMask(PermissionsData.AUTHOR);
- mgr.savePermissions(perm);
- TestUtils.endSession(true);
-
- // get pending permissions for a user
- perms = mgr.getPendingPermissions(testUser);
- assertEquals(0, perms.size());
- perms = mgr.getPendingPermissions(user);
- assertEquals(1, perms.size());
-
- // get pending permissions for a weblog
- perms = mgr.getPendingPermissions(testWeblog);
- assertEquals(1, perms.size());
-
- // get permissions by id
- String id = perm.getId();
- perm = null;
- perm = mgr.getPermissions(id);
- assertNotNull(perm);
- assertEquals(id, perm.getId());
-
- // get permissions for a specific user/weblog
- perm = null;
- perm = mgr.getPermissions(testWeblog, testUser);
- assertNotNull(perm);
- assertEquals(PermissionsData.ADMIN, perm.getPermissionMask());
- perm = null;
- perm = mgr.getPermissions(testWeblog, user);
- assertNotNull(perm);
- assertEquals(PermissionsData.AUTHOR, perm.getPermissionMask());
- assertEquals(true, perm.isPending());
-
- // cleanup the extra test user
- TestUtils.teardownUser(user.getId());
- TestUtils.endSession(true);
- }
-
-
- /**
- * Tests weblog invitation process.
- */
- public void testInvitations() throws Exception {
-
- // we need a second user for this test
- UserData user = TestUtils.setupUser("foobee");
- TestUtils.endSession(true);
-
- UserManager mgr = RollerFactory.getRoller().getUserManager();
- PermissionsData perm = null;
- List perms = null;
-
- // invite user to weblog
- perm = mgr.inviteUser(testWeblog, user, PermissionsData.LIMITED);
- String id = perm.getId();
- TestUtils.endSession(true);
-
- // accept invitation
- perm = mgr.getPermissions(testWeblog, user);
- perm.setPending(false);
- mgr.savePermissions(perm);
- TestUtils.endSession(true);
-
- // re-query now that we have changed things
- user = mgr.getUserByUserName(user.getUserName());
- testWeblog = mgr.getWebsiteByHandle(testWeblog.getHandle());
-
- // assert that invitation list is empty
- assertTrue(mgr.getPendingPermissions(user).isEmpty());
- assertTrue(mgr.getPendingPermissions(testWeblog).isEmpty());
-
- // assert that user is member of weblog
- assertFalse(mgr.getPermissions(testWeblog, user).isPending());
- List weblogs = mgr.getWebsites(user, null, null, null, null, 0, -1);
- assertEquals(1, weblogs.size());
- assertEquals(testWeblog.getId(),
((WebsiteData)weblogs.get(0)).getId());
-
- // assert that website has user
- List users = mgr.getUsers(testWeblog, null, null, null, 0, -1);
- assertEquals(2, users.size());
-
- // test user can be retired from website
- mgr.retireUser(testWeblog, user);
- TestUtils.endSession(true);
-
- user = mgr.getUser(user.getId());
- weblogs = mgr.getWebsites(user, null, null, null, null, 0, -1);
- assertEquals(0, weblogs.size());
-
- // cleanup the extra test user
- TestUtils.teardownUser(user.getId());
- TestUtils.endSession(true);
- }
-
+// /**
+// * Test lookup mechanisms.
+// */
+// public void testPermissionsLookups() throws Exception {
+//
+// // we need a second user for this test
+// UserData user = TestUtils.setupUser("foofoo");
+// TestUtils.endSession(true);
+//
+// UserManager mgr = RollerFactory.getRoller().getUserManager();
+// PermissionsData perm = null;
+// List perms = null;
+//
+// // get all permissions for a user
+// perms = mgr.getAllPermissions(user);
+// assertEquals(0, perms.size());
+// perms = mgr.getAllPermissions(testUser);
+// assertEquals(1, perms.size());
+//
+// // get all permissions for a weblog
+// perms = mgr.getAllPermissions(testWeblog);
+// assertEquals(1, perms.size());
+//
+// perm = new PermissionsData();
+// perm.setUser(user);
+// perm.setWebsite(testWeblog);
+// perm.setPending(true);
+// perm.setPermissionMask(PermissionsData.AUTHOR);
+// mgr.savePermissions(perm);
+// TestUtils.endSession(true);
+//
+// // get pending permissions for a user
+// perms = mgr.getPendingPermissions(testUser);
+// assertEquals(0, perms.size());
+// perms = mgr.getPendingPermissions(user);
+// assertEquals(1, perms.size());
+//
+// // get pending permissions for a weblog
+// perms = mgr.getPendingPermissions(testWeblog);
+// assertEquals(1, perms.size());
+//
+// // get permissions by id
+// String id = perm.getId();
+// perm = null;
+// perm = mgr.getPermissions(id);
+// assertNotNull(perm);
+// assertEquals(id, perm.getId());
+//
+// // get permissions for a specific user/weblog
+// perm = null;
+// perm = mgr.getPermissions(testWeblog, testUser);
+// assertNotNull(perm);
+// assertEquals(PermissionsData.ADMIN, perm.getPermissionMask());
+// perm = null;
+// perm = mgr.getPermissions(testWeblog, user);
+// assertNotNull(perm);
+// assertEquals(PermissionsData.AUTHOR, perm.getPermissionMask());
+// assertEquals(true, perm.isPending());
+//
+// // cleanup the extra test user
+// TestUtils.teardownUser(user.getId());
+// TestUtils.endSession(true);
+// }
+//
+//
+// /**
+// * Tests weblog invitation process.
+// */
+// public void testInvitations() throws Exception {
+//
+// // we need a second user for this test
+// UserData user = TestUtils.setupUser("foobee");
+// TestUtils.endSession(true);
+//
+// UserManager mgr = RollerFactory.getRoller().getUserManager();
+// PermissionsData perm = null;
+// List perms = null;
+//
+// // invite user to weblog
+// perm = mgr.inviteUser(testWeblog, user, PermissionsData.LIMITED);
+// String id = perm.getId();
+// TestUtils.endSession(true);
+//
+// // accept invitation
+// perm = mgr.getPermissions(testWeblog, user);
+// perm.setPending(false);
+// mgr.savePermissions(perm);
+// TestUtils.endSession(true);
+//
+// // re-query now that we have changed things
+// user = mgr.getUserByUserName(user.getUserName());
+// testWeblog = mgr.getWebsiteByHandle(testWeblog.getHandle());
+//
+// // assert that invitation list is empty
+// assertTrue(mgr.getPendingPermissions(user).isEmpty());
+// assertTrue(mgr.getPendingPermissions(testWeblog).isEmpty());
+//
+// // assert that user is member of weblog
+// assertFalse(mgr.getPermissions(testWeblog, user).isPending());
+// List weblogs = mgr.getWebsites(user, null, null, null, null, 0, -1);
+// assertEquals(1, weblogs.size());
+// assertEquals(testWeblog.getId(),
((WebsiteData)weblogs.get(0)).getId());
+//
+// // assert that website has user
+// List users = mgr.getUsers(testWeblog, null, null, null, 0, -1);
+// assertEquals(2, users.size());
+//
+// // test user can be retired from website
+// mgr.retireUser(testWeblog, user);
+// TestUtils.endSession(true);
+//
+// user = mgr.getUser(user.getId());
+// weblogs = mgr.getWebsites(user, null, null, null, null, 0, -1);
+// assertEquals(0, weblogs.size());
+//
+// // cleanup the extra test user
+// TestUtils.teardownUser(user.getId());
+// TestUtils.endSession(true);
+// }
+//
}
Modified: incubator/roller/trunk/tests/org/apache/roller/business/PingsTest.java
URL:
http://svn.apache.org/viewvc/incubator/roller/trunk/tests/org/apache/roller/business/PingsTest.java?view=diff&rev=498108&r1=498107&r2=498108
==============================================================================
--- incubator/roller/trunk/tests/org/apache/roller/business/PingsTest.java
(original)
+++ incubator/roller/trunk/tests/org/apache/roller/business/PingsTest.java Sat
Jan 20 04:39:29 2007
@@ -122,7 +122,7 @@
assertEquals(testCommonPing.getPingUrl(), ping.getPingUrl());
// create custom ping
- testCustomPing.setWebsite(testWeblog);
+ testCustomPing.setWebsite(TestUtils.getManagedWebsite(testWeblog));
mgr.savePingTarget(testCustomPing);
String customId = testCustomPing.getId();
TestUtils.endSession(true);
Modified:
incubator/roller/trunk/tests/org/apache/roller/business/WeblogCategoryTest.java
URL:
http://svn.apache.org/viewvc/incubator/roller/trunk/tests/org/apache/roller/business/WeblogCategoryTest.java?view=diff&rev=498108&r1=498107&r2=498108
==============================================================================
---
incubator/roller/trunk/tests/org/apache/roller/business/WeblogCategoryTest.java
(original)
+++
incubator/roller/trunk/tests/org/apache/roller/business/WeblogCategoryTest.java
Sat Jan 20 04:39:29 2007
@@ -101,7 +101,7 @@
assertEquals(0, root.getWeblogCategories().size());
// add a new category
- WeblogCategoryData newCat = new WeblogCategoryData(testWeblog, root,
"catTestCategory", null, null);
+ WeblogCategoryData newCat = new
WeblogCategoryData(TestUtils.getManagedWebsite(testWeblog), root,
"catTestCategory", null, null);
mgr.saveWeblogCategory(newCat);
TestUtils.endSession(true);
@@ -127,7 +127,7 @@
assertEquals("testtest", cat.getName());
// add a subcat
- WeblogCategoryData subcat = new WeblogCategoryData(testWeblog, cat,
"subcatTest1", null, null);
+ WeblogCategoryData subcat = new
WeblogCategoryData(TestUtils.getManagedWebsite(testWeblog), cat, "subcatTest1",
null, null);
mgr.saveWeblogCategory(subcat);
TestUtils.endSession(true);
Modified:
incubator/roller/trunk/tests/org/apache/roller/business/WeblogPageTest.java
URL:
http://svn.apache.org/viewvc/incubator/roller/trunk/tests/org/apache/roller/business/WeblogPageTest.java?view=diff&rev=498108&r1=498107&r2=498108
==============================================================================
--- incubator/roller/trunk/tests/org/apache/roller/business/WeblogPageTest.java
(original)
+++ incubator/roller/trunk/tests/org/apache/roller/business/WeblogPageTest.java
Sat Jan 20 04:39:29 2007
@@ -74,7 +74,7 @@
testPage.setLink("testTemp");
testPage.setContents("a test weblog template.");
testPage.setLastModified(new java.util.Date());
- testPage.setWebsite(testWeblog);
+ testPage.setWebsite(TestUtils.getManagedWebsite(testWeblog));
testPage.setTemplateLanguage("velocity");
}
Index:
sandbox/jdobackend/src/org/apache/roller/business/datamapper/DatamapperWeblogManagerImpl.java
===================================================================
---
sandbox/jdobackend/src/org/apache/roller/business/datamapper/DatamapperWeblogManagerImpl.java
(revision 498759)
+++
sandbox/jdobackend/src/org/apache/roller/business/datamapper/DatamapperWeblogManagerImpl.java
(working copy)
@@ -290,6 +290,17 @@
updateTagCount(name, entry.getWebsite(), -1);
}
+ // if the entry was published to future, set status as SCHEDULED
+ // we only consider an entry future published if it is scheduled
+ // more than 1 minute into the future
+ if ("PUBLISHED".equals(entry.getStatus()) &&
+ entry.getPubTime().after(new Date(System.currentTimeMillis() +
60000))) {
+ entry.setStatus(WeblogEntryData.SCHEDULED);
+ }
+
+ // Store value object (creates new or updates existing)
+ entry.setUpdateTime(new Timestamp(new Date().getTime()));
+
this.strategy.store(entry);
// update weblog last modified date. date updated by saveWebsite()
Index: tests/org/apache/roller/business/BookmarkTest.java
===================================================================
--- tests/org/apache/roller/business/BookmarkTest.java (revision 498759)
+++ tests/org/apache/roller/business/BookmarkTest.java (working copy)
@@ -168,11 +168,11 @@
FolderData root = bmgr.getRootFolder(testWeblog);
- FolderData f1 = new FolderData(root, "f1", null, testWeblog);
+ FolderData f1 = new FolderData(root, "f1", null,
TestUtils.getManagedWebsite(testWeblog));
bmgr.saveFolder(f1);
// first child folder
- FolderData f2 = new FolderData(f1, "f2", null, testWeblog);
+ FolderData f2 = new FolderData(f1, "f2", null,
TestUtils.getManagedWebsite(testWeblog));
bmgr.saveFolder(f2);
TestUtils.endSession(true);
@@ -203,11 +203,11 @@
FolderData root = bmgr.getRootFolder(testWeblog);
- FolderData f1 = new FolderData(root, "f1", null, testWeblog);
+ FolderData f1 = new FolderData(root, "f1", null,
TestUtils.getManagedWebsite(testWeblog));
bmgr.saveFolder(f1);
- FolderData f2 = new FolderData(f1, "f2", null, testWeblog);
+ FolderData f2 = new FolderData(f1, "f2", null,
TestUtils.getManagedWebsite(testWeblog));
bmgr.saveFolder(f2);
- FolderData f3 = new FolderData(root, "f3", null, testWeblog);
+ FolderData f3 = new FolderData(root, "f3", null,
TestUtils.getManagedWebsite(testWeblog));
bmgr.saveFolder(f3);
TestUtils.endSession(true);
@@ -248,10 +248,10 @@
FolderData root = bmgr.getRootFolder(testWeblog);
- FolderData testFolder = new FolderData(null, "root", "root",
testWeblog);
+ FolderData testFolder = new FolderData(null, "root", "root",
TestUtils.getManagedWebsite(testWeblog));
assertTrue(root.equals(testFolder));
- testFolder = new FolderData(root, "root", "root", testWeblog);
+ testFolder = new FolderData(root, "root", "root",
TestUtils.getManagedWebsite(testWeblog));
assertFalse(root.equals(testFolder));
}
@@ -265,11 +265,11 @@
FolderData root = bmgr.getRootFolder(testWeblog);
- FolderData f1 = new FolderData(root, "f1", null, testWeblog);
+ FolderData f1 = new FolderData(root, "f1", null,
TestUtils.getManagedWebsite(testWeblog));
bmgr.saveFolder(f1);
- FolderData f2 = new FolderData(f1, "f2", null, testWeblog);
+ FolderData f2 = new FolderData(f1, "f2", null,
TestUtils.getManagedWebsite(testWeblog));
bmgr.saveFolder(f2);
- FolderData f3 = new FolderData(f2, "f3", null, testWeblog);
+ FolderData f3 = new FolderData(f2, "f3", null,
TestUtils.getManagedWebsite(testWeblog));
bmgr.saveFolder(f3);
TestUtils.endSession(true);
@@ -293,7 +293,7 @@
FolderData root = bmgr.getRootFolder(testWeblog);
- FolderData folder = new FolderData(root, "TestFolder2", null,
testWeblog);
+ FolderData folder = new FolderData(root, "TestFolder2", null,
TestUtils.getManagedWebsite(testWeblog));
bmgr.saveFolder(folder);
TestUtils.endSession(true);
@@ -434,11 +434,11 @@
FolderData root = bmgr.getRootFolder(testWeblog);
- FolderData dest = new FolderData(root, "dest", null, testWeblog);
+ FolderData dest = new FolderData(root, "dest", null,
TestUtils.getManagedWebsite(testWeblog));
bmgr.saveFolder(dest);
// create source folder f1
- FolderData f1 = new FolderData(root, "f1", null, testWeblog);
+ FolderData f1 = new FolderData(root, "f1", null,
TestUtils.getManagedWebsite(testWeblog));
bmgr.saveFolder(f1);
// create bookmark b1 inside source folder f1
Index: tests/org/apache/roller/business/WeblogCategoryTest.java
===================================================================
--- tests/org/apache/roller/business/WeblogCategoryTest.java (revision
498759)
+++ tests/org/apache/roller/business/WeblogCategoryTest.java (working copy)
@@ -192,13 +192,13 @@
root = mgr.getRootWeblogCategory(testWeblog);
- WeblogCategoryData f1 = new WeblogCategoryData(testWeblog, root, "f1",
null, null);
+ WeblogCategoryData f1 = new
WeblogCategoryData(TestUtils.getManagedWebsite(testWeblog), root, "f1", null,
null);
mgr.saveWeblogCategory(f1);
- WeblogCategoryData f2 = new WeblogCategoryData(testWeblog, f1, "f2",
null, null);
+ WeblogCategoryData f2 = new
WeblogCategoryData(TestUtils.getManagedWebsite(testWeblog), f1, "f2", null,
null);
mgr.saveWeblogCategory(f2);
- WeblogCategoryData f3 = new WeblogCategoryData(testWeblog, f2, "f3",
null, null);
+ WeblogCategoryData f3 = new
WeblogCategoryData(TestUtils.getManagedWebsite(testWeblog), f2, "f3", null,
null);
mgr.saveWeblogCategory(f3);
TestUtils.endSession(true);
@@ -236,16 +236,16 @@
WeblogCategoryData root = mgr.getRootWeblogCategory(testWeblog);
// add some categories and entries to test with
- WeblogCategoryData dest = new WeblogCategoryData(testWeblog, root,
"c0", null, null);
+ WeblogCategoryData dest = new
WeblogCategoryData(TestUtils.getManagedWebsite(testWeblog), root, "c0", null,
null);
mgr.saveWeblogCategory(dest);
- WeblogCategoryData c1 = new WeblogCategoryData(testWeblog, root, "c1",
null, null);
+ WeblogCategoryData c1 = new
WeblogCategoryData(TestUtils.getManagedWebsite(testWeblog), root, "c1", null,
null);
mgr.saveWeblogCategory(c1);
- WeblogCategoryData c2 = new WeblogCategoryData(testWeblog, c1, "c2",
null, null);
+ WeblogCategoryData c2 = new
WeblogCategoryData(TestUtils.getManagedWebsite(testWeblog), c1, "c2", null,
null);
mgr.saveWeblogCategory(c2);
- WeblogCategoryData c3 = new WeblogCategoryData(testWeblog, c2, "c3",
null, null);
+ WeblogCategoryData c3 = new
WeblogCategoryData(TestUtils.getManagedWebsite(testWeblog), c2, "c3", null,
null);
mgr.saveWeblogCategory(c3);
TestUtils.endSession(true);
@@ -309,16 +309,16 @@
WeblogCategoryData root = mgr.getRootWeblogCategory(testWeblog);
// add some categories and entries to test with
- WeblogCategoryData dest = new WeblogCategoryData(testWeblog, root,
"c0", null, null);
+ WeblogCategoryData dest = new
WeblogCategoryData(TestUtils.getManagedWebsite(testWeblog), root, "c0", null,
null);
mgr.saveWeblogCategory(dest);
- WeblogCategoryData c1 = new WeblogCategoryData(testWeblog, root, "c1",
null, null);
+ WeblogCategoryData c1 = new
WeblogCategoryData(TestUtils.getManagedWebsite(testWeblog), root, "c1", null,
null);
mgr.saveWeblogCategory(c1);
- WeblogCategoryData c2 = new WeblogCategoryData(testWeblog, c1, "c2",
null, null);
+ WeblogCategoryData c2 = new
WeblogCategoryData(TestUtils.getManagedWebsite(testWeblog), c1, "c2", null,
null);
mgr.saveWeblogCategory(c2);
- WeblogCategoryData c3 = new WeblogCategoryData(testWeblog, c2, "c3",
null, null);
+ WeblogCategoryData c3 = new
WeblogCategoryData(TestUtils.getManagedWebsite(testWeblog), c2, "c3", null,
null);
mgr.saveWeblogCategory(c3);
TestUtils.endSession(true);
Index: tests/org/apache/roller/business/PermissionTest.java
===================================================================
--- tests/org/apache/roller/business/PermissionTest.java (revision
498759)
+++ tests/org/apache/roller/business/PermissionTest.java (working copy)
@@ -114,138 +114,138 @@
assertNotNull(perm);
assertEquals(PermissionsData.ADMIN, perm.getPermissionMask());
-// // update permissions
-// perm.setPermissionMask(PermissionsData.LIMITED);
-// mgr.savePermissions(perm);
-// TestUtils.endSession(true);
-//
-// // check that update was successful
-// perm = null;
-// perm = mgr.getPermissions(testWeblog, testUser);
-// assertNotNull(perm);
-// assertEquals(PermissionsData.LIMITED, perm.getPermissionMask());
+ // update permissions
+ perm.setPermissionMask(PermissionsData.LIMITED);
+ mgr.savePermissions(perm);
+ TestUtils.endSession(true);
+
+ // check that update was successful
+ perm = null;
+ perm = mgr.getPermissions(testWeblog, testUser);
+ assertNotNull(perm);
+ assertEquals(PermissionsData.LIMITED, perm.getPermissionMask());
}
-// /**
-// * Test lookup mechanisms.
-// */
-// public void testPermissionsLookups() throws Exception {
-//
-// // we need a second user for this test
-// UserData user = TestUtils.setupUser("foofoo");
-// TestUtils.endSession(true);
-//
-// UserManager mgr = RollerFactory.getRoller().getUserManager();
-// PermissionsData perm = null;
-// List perms = null;
-//
-// // get all permissions for a user
-// perms = mgr.getAllPermissions(user);
-// assertEquals(0, perms.size());
-// perms = mgr.getAllPermissions(testUser);
-// assertEquals(1, perms.size());
-//
-// // get all permissions for a weblog
-// perms = mgr.getAllPermissions(testWeblog);
-// assertEquals(1, perms.size());
-//
-// perm = new PermissionsData();
-// perm.setUser(user);
-// perm.setWebsite(testWeblog);
-// perm.setPending(true);
-// perm.setPermissionMask(PermissionsData.AUTHOR);
-// mgr.savePermissions(perm);
-// TestUtils.endSession(true);
-//
-// // get pending permissions for a user
-// perms = mgr.getPendingPermissions(testUser);
-// assertEquals(0, perms.size());
-// perms = mgr.getPendingPermissions(user);
-// assertEquals(1, perms.size());
-//
-// // get pending permissions for a weblog
-// perms = mgr.getPendingPermissions(testWeblog);
-// assertEquals(1, perms.size());
-//
-// // get permissions by id
-// String id = perm.getId();
-// perm = null;
-// perm = mgr.getPermissions(id);
-// assertNotNull(perm);
-// assertEquals(id, perm.getId());
-//
-// // get permissions for a specific user/weblog
-// perm = null;
-// perm = mgr.getPermissions(testWeblog, testUser);
-// assertNotNull(perm);
-// assertEquals(PermissionsData.ADMIN, perm.getPermissionMask());
-// perm = null;
-// perm = mgr.getPermissions(testWeblog, user);
-// assertNotNull(perm);
-// assertEquals(PermissionsData.AUTHOR, perm.getPermissionMask());
-// assertEquals(true, perm.isPending());
-//
-// // cleanup the extra test user
-// TestUtils.teardownUser(user.getId());
-// TestUtils.endSession(true);
-// }
-//
-//
-// /**
-// * Tests weblog invitation process.
-// */
-// public void testInvitations() throws Exception {
-//
-// // we need a second user for this test
-// UserData user = TestUtils.setupUser("foobee");
-// TestUtils.endSession(true);
-//
-// UserManager mgr = RollerFactory.getRoller().getUserManager();
-// PermissionsData perm = null;
-// List perms = null;
-//
-// // invite user to weblog
-// perm = mgr.inviteUser(testWeblog, user, PermissionsData.LIMITED);
-// String id = perm.getId();
-// TestUtils.endSession(true);
-//
-// // accept invitation
-// perm = mgr.getPermissions(testWeblog, user);
-// perm.setPending(false);
-// mgr.savePermissions(perm);
-// TestUtils.endSession(true);
-//
-// // re-query now that we have changed things
-// user = mgr.getUserByUserName(user.getUserName());
-// testWeblog = mgr.getWebsiteByHandle(testWeblog.getHandle());
-//
-// // assert that invitation list is empty
-// assertTrue(mgr.getPendingPermissions(user).isEmpty());
-// assertTrue(mgr.getPendingPermissions(testWeblog).isEmpty());
-//
-// // assert that user is member of weblog
-// assertFalse(mgr.getPermissions(testWeblog, user).isPending());
-// List weblogs = mgr.getWebsites(user, null, null, null, null, 0, -1);
-// assertEquals(1, weblogs.size());
-// assertEquals(testWeblog.getId(),
((WebsiteData)weblogs.get(0)).getId());
-//
-// // assert that website has user
-// List users = mgr.getUsers(testWeblog, null, null, null, 0, -1);
-// assertEquals(2, users.size());
-//
-// // test user can be retired from website
-// mgr.retireUser(testWeblog, user);
-// TestUtils.endSession(true);
-//
-// user = mgr.getUser(user.getId());
-// weblogs = mgr.getWebsites(user, null, null, null, null, 0, -1);
-// assertEquals(0, weblogs.size());
-//
-// // cleanup the extra test user
-// TestUtils.teardownUser(user.getId());
-// TestUtils.endSession(true);
-// }
-//
+ /**
+ * Test lookup mechanisms.
+ */
+ public void testPermissionsLookups() throws Exception {
+
+ // we need a second user for this test
+ UserData user = TestUtils.setupUser("foofoo");
+ TestUtils.endSession(true);
+
+ UserManager mgr = RollerFactory.getRoller().getUserManager();
+ PermissionsData perm = null;
+ List perms = null;
+
+ // get all permissions for a user
+ perms = mgr.getAllPermissions(user);
+ assertEquals(0, perms.size());
+ perms = mgr.getAllPermissions(testUser);
+ assertEquals(1, perms.size());
+
+ // get all permissions for a weblog
+ perms = mgr.getAllPermissions(testWeblog);
+ assertEquals(1, perms.size());
+
+ perm = new PermissionsData();
+ perm.setUser(TestUtils.getManagedUser(user));
+ perm.setWebsite(TestUtils.getManagedWebsite(testWeblog));
+ perm.setPending(true);
+ perm.setPermissionMask(PermissionsData.AUTHOR);
+ mgr.savePermissions(perm);
+ TestUtils.endSession(true);
+
+ // get pending permissions for a user
+ perms = mgr.getPendingPermissions(testUser);
+ assertEquals(0, perms.size());
+ perms = mgr.getPendingPermissions(user);
+ assertEquals(1, perms.size());
+
+ // get pending permissions for a weblog
+ perms = mgr.getPendingPermissions(testWeblog);
+ assertEquals(1, perms.size());
+
+ // get permissions by id
+ String id = perm.getId();
+ perm = null;
+ perm = mgr.getPermissions(id);
+ assertNotNull(perm);
+ assertEquals(id, perm.getId());
+
+ // get permissions for a specific user/weblog
+ perm = null;
+ perm = mgr.getPermissions(testWeblog, testUser);
+ assertNotNull(perm);
+ assertEquals(PermissionsData.ADMIN, perm.getPermissionMask());
+ perm = null;
+ perm = mgr.getPermissions(testWeblog, user);
+ assertNotNull(perm);
+ assertEquals(PermissionsData.AUTHOR, perm.getPermissionMask());
+ assertEquals(true, perm.isPending());
+
+ // cleanup the extra test user
+ TestUtils.teardownUser(user.getId());
+ TestUtils.endSession(true);
+ }
+
+
+ /**
+ * Tests weblog invitation process.
+ */
+ public void testInvitations() throws Exception {
+
+ // we need a second user for this test
+ UserData user = TestUtils.setupUser("foobee");
+ TestUtils.endSession(true);
+
+ UserManager mgr = RollerFactory.getRoller().getUserManager();
+ PermissionsData perm = null;
+ List perms = null;
+
+ // invite user to weblog
+ perm = mgr.inviteUser(TestUtils.getManagedWebsite(testWeblog), user,
PermissionsData.LIMITED);
+ String id = perm.getId();
+ TestUtils.endSession(true);
+
+ // accept invitation
+ perm = mgr.getPermissions(testWeblog, user);
+ perm.setPending(false);
+ mgr.savePermissions(perm);
+ TestUtils.endSession(true);
+
+ // re-query now that we have changed things
+ user = mgr.getUserByUserName(user.getUserName());
+ testWeblog = mgr.getWebsiteByHandle(testWeblog.getHandle());
+
+ // assert that invitation list is empty
+ assertTrue(mgr.getPendingPermissions(user).isEmpty());
+ assertTrue(mgr.getPendingPermissions(testWeblog).isEmpty());
+
+ // assert that user is member of weblog
+ assertFalse(mgr.getPermissions(testWeblog, user).isPending());
+ List weblogs = mgr.getWebsites(user, null, null, null, null, 0, -1);
+ assertEquals(1, weblogs.size());
+ assertEquals(testWeblog.getId(),
((WebsiteData)weblogs.get(0)).getId());
+
+ // assert that website has user
+ List users = mgr.getUsers(testWeblog, null, null, null, 0, -1);
+ assertEquals(2, users.size());
+
+ // test user can be retired from website
+ mgr.retireUser(testWeblog, user);
+ TestUtils.endSession(true);
+
+ user = mgr.getUser(user.getId());
+ weblogs = mgr.getWebsites(user, null, null, null, null, 0, -1);
+ assertEquals(0, weblogs.size());
+
+ // cleanup the extra test user
+ TestUtils.teardownUser(user.getId());
+ TestUtils.endSession(true);
+ }
+
}