You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@roller.apache.org by ag...@apache.org on 2008/06/28 21:18:57 UTC
svn commit: r672574 [11/16] - in /roller/planet/core/trunk: ./ lib/
lib/buildtime/ lib/jakarta-taglibs-standard-1.1.2/
lib/jakarta-taglibs-standard-1.1.2/lib/
lib/jakarta-taglibs-standard-1.1.2/tld/ lib/openjpa-0.9.7/ lib/rome-0.9/
lib/spring-1.2/ lib/...
Added: roller/planet/core/trunk/test/java/org/apache/roller/planet/business/PermissionTest.java
URL: http://svn.apache.org/viewvc/roller/planet/core/trunk/test/java/org/apache/roller/planet/business/PermissionTest.java?rev=672574&view=auto
==============================================================================
--- roller/planet/core/trunk/test/java/org/apache/roller/planet/business/PermissionTest.java (added)
+++ roller/planet/core/trunk/test/java/org/apache/roller/planet/business/PermissionTest.java Sat Jun 28 12:18:17 2008
@@ -0,0 +1,274 @@
+/*
+* Licensed to the Apache Software Foundation (ASF) under one or more
+* contributor license agreements. The ASF licenses this file to You
+* 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. For additional information regarding
+* copyright in this work, please see the NOTICE file in the top level
+* directory of this distribution.
+*/
+
+package org.apache.roller.planet.business;
+
+import java.util.List;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.apache.roller.planet.TestUtils;
+import org.apache.roller.planet.pojos.PlanetPermission;
+import org.apache.roller.planet.pojos.User;
+import org.apache.roller.planet.pojos.Planet;
+
+
+/**
+ * Test User/Planet Permissions related business operations.
+ */
+public class PermissionTest extends AbstractBusinessTestCase {
+
+ public static Log log = LogFactory.getLog(PermissionTest.class);
+
+ User testUser = null;
+ Planet testPlanet = null;
+
+
+ /**
+ * All tests in this suite require a user and a Planet.
+ */
+ @Override
+ public void setUp() throws Exception {
+
+ log.info("BEGIN");
+
+ super.setUp();
+
+ try {
+ testUser = TestUtils.setupUser("permsTestUser");
+ testPlanet = TestUtils.setupPlanet("permsTestPlanet");
+ endSession(true);
+ } catch (Exception ex) {
+ log.error(ex);
+ throw new Exception("Test setup failed", ex);
+ }
+
+ log.info("END");
+ }
+
+ @Override
+ public void tearDown() throws Exception {
+
+ log.info("BEGIN");
+
+ try {
+ TestUtils.teardownPlanet(testPlanet.getId());
+ TestUtils.teardownUser(testUser.getId());
+ endSession(true);
+ } catch (Exception ex) {
+ log.error(ex);
+ throw new Exception("Test teardown failed", ex);
+ }
+
+ super.tearDown();
+
+ log.info("END");
+ }
+
+
+ /**
+ * Test basic persistence operations ... Create, Update, Delete.
+ */
+ public void testPermissionsCRUD() throws Exception {
+
+ log.info("BEGIN");
+
+ UserManager mgr = AggregatorFactory.getAggregator().getUserManager();
+ PlanetPermission perm = null;
+
+ // make sure no perms exist yet
+ testPlanet = TestUtils.getManagedPlanet(testPlanet);
+ testUser = TestUtils.getManagedUser(testUser);
+ perm = mgr.getPermissions(testPlanet, testUser);
+ assertNull(perm);
+
+ // create permissions
+ perm = new PlanetPermission();
+ perm.setUser(testUser);
+ perm.setPlanet(testPlanet);
+ perm.setPending(false);
+ perm.setPermissionMask(PlanetPermission.ADMIN);
+ mgr.savePermissions(perm);
+ endSession(true);
+
+ // check that create was successful
+ testPlanet = TestUtils.getManagedPlanet(testPlanet);
+ testUser = TestUtils.getManagedUser(testUser);
+ perm = null;
+ perm = mgr.getPermissions(testPlanet, testUser);
+ assertNotNull(perm);
+ assertEquals(PlanetPermission.ADMIN, perm.getPermissionMask());
+
+ // update permissions
+ perm.setPermissionMask(PlanetPermission.LIMITED);
+ mgr.savePermissions(perm);
+ endSession(true);
+
+ // check that update was successful
+ testPlanet = TestUtils.getManagedPlanet(testPlanet);
+ testUser = TestUtils.getManagedUser(testUser);
+ perm = null;
+ perm = mgr.getPermissions(testPlanet, testUser);
+ assertNotNull(perm);
+ assertEquals(PlanetPermission.LIMITED, perm.getPermissionMask());
+
+ log.info("END");
+ }
+
+
+ /**
+ * Test lookup mechanisms.
+ */
+ public void testPermissionsLookups() throws Exception {
+
+ log.info("BEGIN");
+
+ try {
+ // we need a second user for this test
+ User user = TestUtils.setupUser("testPermissionsLookups");
+ PlanetPermission testPerm = TestUtils.setupPermissions(testUser, testPlanet, PlanetPermission.ADMIN);
+ endSession(true);
+
+ UserManager mgr = AggregatorFactory.getAggregator().getUserManager();
+ PlanetPermission perm = null;
+ List perms = null;
+
+ // get all permissions for a user
+ perms = mgr.getAllPermissions(TestUtils.getManagedUser(user));
+ assertEquals(0, perms.size());
+ perms = mgr.getAllPermissions(TestUtils.getManagedUser(testUser));
+ assertEquals(1, perms.size());
+
+ // get all permissions for a Planet
+ perms = mgr.getAllPermissions(TestUtils.getManagedPlanet(testPlanet));
+ assertEquals(1, perms.size());
+
+ perm = new PlanetPermission();
+ perm.setUser(TestUtils.getManagedUser(user));
+ perm.setPlanet(TestUtils.getManagedPlanet(testPlanet));
+ perm.setPending(true);
+ perm.setPermissionMask(PlanetPermission.AUTHOR);
+ mgr.savePermissions(perm);
+ endSession(true);
+
+ // get pending permissions for a user
+ perms = mgr.getPendingPermissions(TestUtils.getManagedUser(testUser));
+ assertEquals(0, perms.size());
+ perms = mgr.getPendingPermissions(TestUtils.getManagedUser(user));
+ assertEquals(1, perms.size());
+
+ // get pending permissions for a Planet
+ perms = mgr.getPendingPermissions(TestUtils.getManagedPlanet(testPlanet));
+ 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/Planet
+ perm = null;
+ perm = mgr.getPermissions(TestUtils.getManagedPlanet(testPlanet), TestUtils.getManagedUser(testUser));
+ assertNotNull(perm);
+ assertEquals(PlanetPermission.ADMIN, perm.getPermissionMask());
+ perm = null;
+ perm = mgr.getPermissions(TestUtils.getManagedPlanet(testPlanet), TestUtils.getManagedUser(user));
+ assertNotNull(perm);
+ assertEquals(PlanetPermission.AUTHOR, perm.getPermissionMask());
+ assertEquals(true, perm.isPending());
+
+ // cleanup
+ TestUtils.teardownPermissions(perm.getId());
+ TestUtils.teardownPermissions(testPerm.getId());
+ TestUtils.teardownUser(user.getId());
+ endSession(true);
+ } catch(Throwable t) {
+ log.error("Error running test", t);
+ throw (Exception) t;
+ }
+
+ log.info("END");
+ }
+
+
+ /**
+ * Tests Planet invitation process.
+ */
+ public void testInvitations() throws Exception {
+
+ log.info("BEGIN");
+
+ // we need a second user for this test
+ User user = TestUtils.setupUser("testInvitations");
+ endSession(true);
+
+ UserManager mgr = AggregatorFactory.getAggregator().getUserManager();
+ PlanetManager pmgr = AggregatorFactory.getAggregator().getPlanetManager();
+ PlanetPermission perm = null;
+ List perms = null;
+
+ // invite user to Planet
+ perm = mgr.inviteUser(TestUtils.getManagedPlanet(testPlanet), user, PlanetPermission.LIMITED);
+ String id = perm.getId();
+ endSession(true);
+
+ // accept invitation
+ testPlanet = TestUtils.getManagedPlanet(testPlanet);
+ user = TestUtils.getManagedUser(user);
+ perm = mgr.getPermissions(testPlanet, user);
+ perm.setPending(false);
+ mgr.savePermissions(perm);
+ endSession(true);
+
+ // re-query now that we have changed things
+ user = mgr.getUserByUserName(user.getUserName());
+ testPlanet = pmgr.getPlanet(testPlanet.getHandle());
+
+ // assert that invitation list is empty
+ testPlanet = TestUtils.getManagedPlanet(testPlanet);
+ user = TestUtils.getManagedUser(user);
+ assertTrue(mgr.getPendingPermissions(user).isEmpty());
+ assertTrue(mgr.getPendingPermissions(testPlanet).isEmpty());
+
+ // assert that user is member of Planet
+ assertFalse(mgr.getPermissions(testPlanet, user).isPending());
+ List planets = pmgr.getPlanets(TestUtils.getManagedUser(user));
+ assertEquals(1, planets.size());
+ assertEquals(testPlanet.getId(), ((Planet)planets.get(0)).getId());
+
+ // assert that Planet has user
+ List users = mgr.getUsers(testPlanet, null, null, null, 0, -1);
+ assertEquals(1, users.size());
+
+ // test user can be retired from Planet
+ mgr.retireUser(testPlanet, user);
+ endSession(true);
+
+ user = mgr.getUser(user.getId());
+ planets = pmgr.getPlanets(user);
+ assertEquals(0, planets.size());
+
+ // cleanup the extra test user
+ TestUtils.teardownUser(user.getId());
+ endSession(true);
+
+ log.info("END");
+ }
+
+}
Modified: roller/planet/core/trunk/test/java/org/apache/roller/planet/business/PlanetBasicTests.java
URL: http://svn.apache.org/viewvc/roller/planet/core/trunk/test/java/org/apache/roller/planet/business/PlanetBasicTests.java?rev=672574&r1=672573&r2=672574&view=diff
==============================================================================
--- roller/planet/core/trunk/test/java/org/apache/roller/planet/business/PlanetBasicTests.java (original)
+++ roller/planet/core/trunk/test/java/org/apache/roller/planet/business/PlanetBasicTests.java Sat Jun 28 12:18:17 2008
@@ -16,8 +16,6 @@
package org.apache.roller.planet.business;
-import java.util.List;
-import junit.framework.TestCase;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.roller.planet.TestUtils;
@@ -27,7 +25,7 @@
/**
* Test Planet CRUD.
*/
-public class PlanetBasicTests extends TestCase {
+public class PlanetBasicTests extends AbstractBusinessTestCase {
public static Log log = LogFactory.getLog(PlanetBasicTests.class);
@@ -35,9 +33,9 @@
public void testPlanetCRUD() throws Exception {
// setup planet
- TestUtils.setupPlanet();
+ TestUtils.setupAggregator();
- PlanetManager mgr = PlanetFactory.getPlanet().getPlanetManager();
+ PlanetManager mgr = AggregatorFactory.getAggregator().getPlanetManager();
Planet testPlanet = new Planet("testPlanet", "testPlanet", "testPlanet");
Planet planet = null;
@@ -47,7 +45,7 @@
// add
mgr.savePlanet(testPlanet);
- TestUtils.endSession(true);
+ endSession(true);
// verify
planet = null;
@@ -58,7 +56,7 @@
// modify
planet.setTitle("foo");
mgr.savePlanet(planet);
- TestUtils.endSession(true);
+ endSession(true);
// verify
planet = null;
@@ -68,7 +66,7 @@
// remove
mgr.deletePlanet(planet);
- TestUtils.endSession(true);
+ endSession(true);
// verify
planet = null;
Modified: roller/planet/core/trunk/test/java/org/apache/roller/planet/business/PlanetFunctionalTests.java
URL: http://svn.apache.org/viewvc/roller/planet/core/trunk/test/java/org/apache/roller/planet/business/PlanetFunctionalTests.java?rev=672574&r1=672573&r2=672574&view=diff
==============================================================================
--- roller/planet/core/trunk/test/java/org/apache/roller/planet/business/PlanetFunctionalTests.java (original)
+++ roller/planet/core/trunk/test/java/org/apache/roller/planet/business/PlanetFunctionalTests.java Sat Jun 28 12:18:17 2008
@@ -17,7 +17,6 @@
package org.apache.roller.planet.business;
import java.util.List;
-import junit.framework.TestCase;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.roller.planet.TestUtils;
@@ -27,23 +26,27 @@
/**
* Test Planet functionality.
*/
-public class PlanetFunctionalTests extends TestCase {
+public class PlanetFunctionalTests extends AbstractBusinessTestCase {
public static Log log = LogFactory.getLog(PlanetFunctionalTests.class);
private Planet testPlanet = null;
- protected void setUp() throws Exception {
- // setup planet
- TestUtils.setupPlanet();
-
+ @Override
+ public void setUp() throws Exception {
+ super.setUp();
+
+ // create test planet
testPlanet = TestUtils.setupPlanet("planetFuncTest");
}
- protected void tearDown() throws Exception {
+ @Override
+ public void tearDown() throws Exception {
TestUtils.teardownPlanet(testPlanet.getId());
+
+ super.tearDown();
}
@@ -52,7 +55,7 @@
*/
public void testPlanetLookups() throws Exception {
- PlanetManager mgr = PlanetFactory.getPlanet().getPlanetManager();
+ PlanetManager mgr = AggregatorFactory.getAggregator().getPlanetManager();
Planet planet = null;
Modified: roller/planet/core/trunk/test/java/org/apache/roller/planet/business/PlanetTestSuite.java
URL: http://svn.apache.org/viewvc/roller/planet/core/trunk/test/java/org/apache/roller/planet/business/PlanetTestSuite.java?rev=672574&r1=672573&r2=672574&view=diff
==============================================================================
--- roller/planet/core/trunk/test/java/org/apache/roller/planet/business/PlanetTestSuite.java (original)
+++ roller/planet/core/trunk/test/java/org/apache/roller/planet/business/PlanetTestSuite.java Sat Jun 28 12:18:17 2008
@@ -43,10 +43,16 @@
suite.addTestSuite(PropertiesTest.class);
+ // users and roles
+ suite.addTestSuite(UserTest.class);
+
// planets
suite.addTestSuite(PlanetBasicTests.class);
suite.addTestSuite(PlanetFunctionalTests.class);
+ // permissions
+ suite.addTestSuite(PermissionTest.class);
+
// groups
suite.addTestSuite(GroupBasicTests.class);
suite.addTestSuite(GroupFunctionalTests.class);
Modified: roller/planet/core/trunk/test/java/org/apache/roller/planet/business/PropertiesTest.java
URL: http://svn.apache.org/viewvc/roller/planet/core/trunk/test/java/org/apache/roller/planet/business/PropertiesTest.java?rev=672574&r1=672573&r2=672574&view=diff
==============================================================================
--- roller/planet/core/trunk/test/java/org/apache/roller/planet/business/PropertiesTest.java (original)
+++ roller/planet/core/trunk/test/java/org/apache/roller/planet/business/PropertiesTest.java Sat Jun 28 12:18:17 2008
@@ -19,39 +19,24 @@
package org.apache.roller.planet.business;
import java.util.Map;
-import junit.framework.Test;
-import junit.framework.TestCase;
-import junit.framework.TestSuite;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
-import org.apache.roller.planet.TestUtils;
-import org.apache.roller.planet.business.PropertiesManager;
-import org.apache.roller.planet.business.PlanetFactory;
import org.apache.roller.planet.pojos.RuntimeConfigProperty;
/**
* Test Properties related business operations.
*/
-public class PropertiesTest extends TestCase {
+public class PropertiesTest extends AbstractBusinessTestCase {
public static Log log = LogFactory.getLog(PropertiesTest.class);
- public void setUp() throws Exception {
- // setup planet
- TestUtils.setupPlanet();
-
- }
-
- public void tearDown() throws Exception {}
-
-
public void testProperiesCRUD() throws Exception {
// remember, the properties table is initialized during Roller startup
- PropertiesManager mgr = PlanetFactory.getPlanet().getPropertiesManager();
- TestUtils.endSession(true);
+ PropertiesManager mgr = AggregatorFactory.getAggregator().getPropertiesManager();
+ endSession(true);
RuntimeConfigProperty prop = null;
@@ -62,7 +47,7 @@
// update a property
prop.setValue("testtest");
mgr.saveProperty(prop);
- TestUtils.endSession(true);
+ endSession(true);
// make sure property was updated
prop = null;
@@ -81,7 +66,7 @@
prop = (RuntimeConfigProperty) props.get("site.description");
prop.setValue("blahblah");
mgr.saveProperties(props);
- TestUtils.endSession(true);
+ endSession(true);
// make sure all properties were updated
props = mgr.getProperties();
Modified: roller/planet/core/trunk/test/java/org/apache/roller/planet/business/RomeFeedFetcherTest.java
URL: http://svn.apache.org/viewvc/roller/planet/core/trunk/test/java/org/apache/roller/planet/business/RomeFeedFetcherTest.java?rev=672574&r1=672573&r2=672574&view=diff
==============================================================================
--- roller/planet/core/trunk/test/java/org/apache/roller/planet/business/RomeFeedFetcherTest.java (original)
+++ roller/planet/core/trunk/test/java/org/apache/roller/planet/business/RomeFeedFetcherTest.java Sat Jun 28 12:18:17 2008
@@ -16,40 +16,25 @@
package org.apache.roller.planet.business;
-import java.io.File;
-import junit.framework.TestCase;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
-import org.apache.roller.planet.TestUtils;
import org.apache.roller.planet.business.fetcher.FeedFetcher;
-import org.apache.roller.planet.pojos.Planet;
-import org.apache.roller.planet.pojos.PlanetGroup;
import org.apache.roller.planet.pojos.Subscription;
/**
* Test database implementation of PlanetManager.
*/
-public class RomeFeedFetcherTest extends TestCase {
+public class RomeFeedFetcherTest extends AbstractBusinessTestCase {
public static Log log = LogFactory.getLog(RomeFeedFetcherTest.class);
String feed_url = "http://rollerweblogger.org/roller/feed/entries/atom";
- protected void setUp() throws Exception {
- // setup planet
- TestUtils.setupPlanet();
- }
-
-
- protected void tearDown() throws Exception {
- }
-
-
public void testFetchFeed() throws Exception {
- FeedFetcher feedFetcher = PlanetFactory.getPlanet().getFeedFetcher();
+ FeedFetcher feedFetcher = AggregatorFactory.getAggregator().getFeedFetcher();
// fetch feed
Subscription sub = feedFetcher.fetchSubscription(feed_url);
@@ -64,7 +49,7 @@
public void testFetchFeedConditionally() throws Exception {
- FeedFetcher feedFetcher = PlanetFactory.getPlanet().getFeedFetcher();
+ FeedFetcher feedFetcher = AggregatorFactory.getAggregator().getFeedFetcher();
// fetch feed
Subscription sub = feedFetcher.fetchSubscription(feed_url);
Modified: roller/planet/core/trunk/test/java/org/apache/roller/planet/business/SingleThreadedFeedUpdaterTest.java
URL: http://svn.apache.org/viewvc/roller/planet/core/trunk/test/java/org/apache/roller/planet/business/SingleThreadedFeedUpdaterTest.java?rev=672574&r1=672573&r2=672574&view=diff
==============================================================================
--- roller/planet/core/trunk/test/java/org/apache/roller/planet/business/SingleThreadedFeedUpdaterTest.java (original)
+++ roller/planet/core/trunk/test/java/org/apache/roller/planet/business/SingleThreadedFeedUpdaterTest.java Sat Jun 28 12:18:17 2008
@@ -16,11 +16,9 @@
package org.apache.roller.planet.business;
-import junit.framework.TestCase;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.roller.planet.TestUtils;
-import org.apache.roller.planet.business.fetcher.FeedFetcher;
import org.apache.roller.planet.business.updater.FeedUpdater;
import org.apache.roller.planet.business.updater.SingleThreadedFeedUpdater;
import org.apache.roller.planet.pojos.Subscription;
@@ -29,7 +27,7 @@
/**
* Test feed updater.
*/
-public class SingleThreadedFeedUpdaterTest extends TestCase {
+public class SingleThreadedFeedUpdaterTest extends AbstractBusinessTestCase {
public static Log log = LogFactory.getLog(SingleThreadedFeedUpdaterTest.class);
@@ -38,34 +36,32 @@
private String feed_url = "http://rollerweblogger.org/roller/feed/entries/atom";
- protected void setUp() throws Exception {
- // setup planet
- TestUtils.setupPlanet();
+ @Override
+ public void setUp() throws Exception {
+ super.setUp();
// add test subscription
- PlanetManager mgr = PlanetFactory.getPlanet().getPlanetManager();
- testSub = new Subscription();
- testSub.setTitle(feed_url);
- testSub.setFeedURL(feed_url);
- mgr.saveSubscription(testSub);
- PlanetFactory.getPlanet().flush();
+ testSub = TestUtils.setupSubscription(feed_url);
}
- protected void tearDown() throws Exception {
+ @Override
+ public void tearDown() throws Exception {
TestUtils.teardownSubscription(testSub.getId());
+
+ super.tearDown();
}
public void testUpdateSubscription() throws Exception {
- PlanetManager mgr = PlanetFactory.getPlanet().getPlanetManager();
+ PlanetManager mgr = AggregatorFactory.getAggregator().getPlanetManager();
Subscription sub = mgr.getSubscriptionById(testSub.getId());
// update the subscription
- FeedUpdater updater = new SingleThreadedFeedUpdater();
+ FeedUpdater updater = new SingleThreadedFeedUpdater(AggregatorFactory.getAggregator().getConfig());
updater.updateSubscription(sub);
- TestUtils.endSession(true);
+ endSession(true);
// verify the results
sub = mgr.getSubscription(feed_url);
Modified: roller/planet/core/trunk/test/java/org/apache/roller/planet/business/SubscriptionBasicTests.java
URL: http://svn.apache.org/viewvc/roller/planet/core/trunk/test/java/org/apache/roller/planet/business/SubscriptionBasicTests.java?rev=672574&r1=672573&r2=672574&view=diff
==============================================================================
--- roller/planet/core/trunk/test/java/org/apache/roller/planet/business/SubscriptionBasicTests.java (original)
+++ roller/planet/core/trunk/test/java/org/apache/roller/planet/business/SubscriptionBasicTests.java Sat Jun 28 12:18:17 2008
@@ -16,7 +16,6 @@
package org.apache.roller.planet.business;
-import junit.framework.TestCase;
import org.apache.roller.planet.TestUtils;
import org.apache.roller.planet.pojos.Subscription;
@@ -24,15 +23,15 @@
/**
* Test Subscription CRUD.
*/
-public class SubscriptionBasicTests extends TestCase {
+public class SubscriptionBasicTests extends AbstractBusinessTestCase {
public void testSubscriptionCRUD() throws Exception {
// setup planet
- TestUtils.setupPlanet();
+ TestUtils.setupAggregator();
- PlanetManager mgr = PlanetFactory.getPlanet().getPlanetManager();
+ PlanetManager mgr = AggregatorFactory.getAggregator().getPlanetManager();
Subscription testSub = new Subscription();
testSub.setFeedURL("test_title");
@@ -43,7 +42,7 @@
// add
mgr.saveSubscription(testSub);
- TestUtils.endSession(true);
+ endSession(true);
// verify
sub = null;
@@ -54,7 +53,7 @@
// modify
sub.setTitle("foo");
mgr.saveSubscription(sub);
- TestUtils.endSession(true);
+ endSession(true);
// verify
sub = null;
@@ -64,7 +63,7 @@
// remove
mgr.deleteSubscription(sub);
- TestUtils.endSession(true);
+ endSession(true);
// verify
sub = null;
Modified: roller/planet/core/trunk/test/java/org/apache/roller/planet/business/SubscriptionFunctionalTests.java
URL: http://svn.apache.org/viewvc/roller/planet/core/trunk/test/java/org/apache/roller/planet/business/SubscriptionFunctionalTests.java?rev=672574&r1=672573&r2=672574&view=diff
==============================================================================
--- roller/planet/core/trunk/test/java/org/apache/roller/planet/business/SubscriptionFunctionalTests.java (original)
+++ roller/planet/core/trunk/test/java/org/apache/roller/planet/business/SubscriptionFunctionalTests.java Sat Jun 28 12:18:17 2008
@@ -16,8 +16,6 @@
package org.apache.roller.planet.business;
-import java.util.Set;
-import junit.framework.TestCase;
import org.apache.roller.planet.TestUtils;
import org.apache.roller.planet.pojos.Planet;
import org.apache.roller.planet.pojos.PlanetGroup;
@@ -27,7 +25,7 @@
/**
* Test Subscription functionality.
*/
-public class SubscriptionFunctionalTests extends TestCase {
+public class SubscriptionFunctionalTests extends AbstractBusinessTestCase {
private Planet testPlanet = null;
private PlanetGroup testGroup1 = null;
@@ -36,9 +34,9 @@
private Subscription testSub2 = null;
- protected void setUp() throws Exception {
- // setup planet
- TestUtils.setupPlanet();
+ @Override
+ public void setUp() throws Exception {
+ super.setUp();
testPlanet = TestUtils.setupPlanet("subFuncTest");
testGroup1 = TestUtils.setupGroup(testPlanet, "subFuncTest1");
@@ -48,18 +46,21 @@
}
- protected void tearDown() throws Exception {
+ @Override
+ public void tearDown() throws Exception {
TestUtils.teardownSubscription(testSub1.getId());
TestUtils.teardownSubscription(testSub2.getId());
TestUtils.teardownGroup(testGroup1.getId());
TestUtils.teardownGroup(testGroup2.getId());
TestUtils.teardownPlanet(testPlanet.getId());
+
+ super.tearDown();
}
public void testSubscriptionLookups() throws Exception {
- PlanetManager mgr = PlanetFactory.getPlanet().getPlanetManager();
+ PlanetManager mgr = AggregatorFactory.getAggregator().getPlanetManager();
// by id
Subscription sub = mgr.getSubscriptionById(testSub1.getId());
@@ -72,6 +73,9 @@
assertNotNull(sub);
assertEquals("subFuncTest2", sub.getFeedURL());
+ // all
+ assertEquals(2, mgr.getSubscriptions().size());
+
// count
assertEquals(2, mgr.getSubscriptionCount());
}
@@ -79,7 +83,7 @@
public void testSubscriptionGroupCRUD() throws Exception {
- PlanetManager planet = PlanetFactory.getPlanet().getPlanetManager();
+ PlanetManager planet = AggregatorFactory.getAggregator().getPlanetManager();
// retrieve subscriptions and add to group
Subscription sub1 = planet.getSubscriptionById(testSub1.getId());
@@ -97,7 +101,7 @@
sub2.getGroups().add(group);
planet.saveGroup(group);
- TestUtils.endSession(true);
+ endSession(true);
// verify
group = null;
@@ -114,7 +118,7 @@
sub2.getGroups().remove(group);
planet.saveGroup(group);
- TestUtils.endSession(true);
+ endSession(true);
// verify
group = null;
Added: roller/planet/core/trunk/test/java/org/apache/roller/planet/business/UserTest.java
URL: http://svn.apache.org/viewvc/roller/planet/core/trunk/test/java/org/apache/roller/planet/business/UserTest.java?rev=672574&view=auto
==============================================================================
--- roller/planet/core/trunk/test/java/org/apache/roller/planet/business/UserTest.java (added)
+++ roller/planet/core/trunk/test/java/org/apache/roller/planet/business/UserTest.java Sat Jun 28 12:18:17 2008
@@ -0,0 +1,184 @@
+/*
+* Licensed to the Apache Software Foundation (ASF) under one or more
+* contributor license agreements. The ASF licenses this file to You
+* 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. For additional information regarding
+* copyright in this work, please see the NOTICE file in the top level
+* directory of this distribution.
+*/
+
+package org.apache.roller.planet.business;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.apache.roller.planet.TestUtils;
+import org.apache.roller.planet.pojos.User;
+
+
+/**
+ * Test User related business operations.
+ */
+public class UserTest extends AbstractBusinessTestCase {
+
+ public static Log log = LogFactory.getLog(UserTest.class);
+
+
+ /**
+ * Test basic persistence operations ... Create, Update, Delete.
+ */
+ public void testUserCRUD() throws Exception {
+
+ UserManager mgr = AggregatorFactory.getAggregator().getUserManager();
+ User user = null;
+
+ User testUser = new User();
+ testUser.setUserName("testUser");
+ testUser.setPassword("password");
+ testUser.setFullName("Test User");
+ testUser.setEmailAddress("TestUser@dev.null");
+ testUser.setDateCreated(new java.util.Date());
+ testUser.setEnabled(Boolean.TRUE);
+
+ // make sure test user does not exist
+ user = mgr.getUserByUserName(testUser.getUserName());
+ assertNull(user);
+
+ // add test user
+ mgr.addUser(testUser);
+ String id = testUser.getId();
+ endSession(true);
+
+ // make sure test user exists
+ user = null;
+ user = mgr.getUser(id);
+ assertNotNull(user);
+ assertEquals(testUser, user);
+
+ // modify user and save
+ user.setFullName("testtesttest");
+ mgr.saveUser(user);
+ endSession(true);
+
+ // make sure changes were saved
+ user = null;
+ user = mgr.getUser(id);
+ assertNotNull(user);
+ assertEquals("testtesttest", user.getFullName());
+
+ // remove test user
+ mgr.removeUser(user);
+ endSession(true);
+
+ // make sure user no longer exists
+ user = null;
+ user = mgr.getUser(id);
+ assertNull(user);
+ }
+
+
+ /**
+ * Test lookup mechanisms.
+ */
+ public void testUserLookups() throws Exception {
+
+ UserManager mgr = AggregatorFactory.getAggregator().getUserManager();
+ User user = null;
+
+ // add test user
+ User testUser = TestUtils.setupUser("userTestUser");
+ endSession(true);
+
+ // lookup by username
+ user = mgr.getUserByUserName(testUser.getUserName());
+ assertNotNull(user);
+ assertEquals(testUser.getUserName(), user.getUserName());
+
+ // lookup by id
+ String id = user.getId();
+ user = null;
+ user = mgr.getUser(id);
+ assertNotNull(user);
+ assertEquals(testUser.getUserName(), user.getUserName());
+
+ // make sure disable users are not returned
+ user.setEnabled(Boolean.FALSE);
+ mgr.saveUser(user);
+ endSession(true);
+ user = null;
+ user = mgr.getUserByUserName(testUser.getUserName());
+ assertNull(user);
+
+ // remove test user
+ TestUtils.teardownUser(testUser.getId());
+ endSession(true);
+ }
+
+
+ /**
+ * Test basic user role persistence ... Add, Remove
+ */
+ public void testRoleCRUD() throws Exception {
+
+ UserManager mgr = AggregatorFactory.getAggregator().getUserManager();
+ User user = null;
+
+ // add test user
+ User testUser = TestUtils.setupUser("roleTestUser");
+ endSession(true);
+
+ // verify user has 2 roles, admin & editor
+ user = mgr.getUserByUserName(testUser.getUserName());
+ assertNotNull(user);
+ assertEquals(2, user.getRoles().size());
+ assertTrue(user.hasRole("editor"));
+ assertTrue(user.hasRole("admin"));
+
+ // remove role
+ mgr.revokeRole("admin",user);
+ mgr.saveUser(user);
+ endSession(true);
+
+ // check that role was removed
+ user = null;
+ user = mgr.getUserByUserName(testUser.getUserName());
+ assertNotNull(user);
+ assertEquals(1, user.getRoles().size());
+ assertTrue(user.hasRole("editor"));
+ assertFalse(user.hasRole("admin"));
+
+ // add role
+ user.grantRole("admin");
+ mgr.saveUser(user);
+ endSession(true);
+
+ // check that role was added
+ user = null;
+ user = mgr.getUserByUserName(testUser.getUserName());
+ assertNotNull(user);
+ assertEquals(2, user.getRoles().size());
+ assertTrue(user.hasRole("editor"));
+ assertTrue(user.hasRole("admin"));
+
+ // remove test user
+ TestUtils.teardownUser(testUser.getId());
+ endSession(true);
+ }
+
+
+ /**
+ * Test ability to remove a user with a full set of data.
+ */
+ public void testRemoveLoadedUser() throws Exception {
+ // TODO: implement testRemoveLoadedUser
+ }
+
+}
Added: roller/planet/core/trunk/test/java/org/apache/roller/planet/business/mock/MockPlanetImpl.java
URL: http://svn.apache.org/viewvc/roller/planet/core/trunk/test/java/org/apache/roller/planet/business/mock/MockPlanetImpl.java?rev=672574&view=auto
==============================================================================
--- roller/planet/core/trunk/test/java/org/apache/roller/planet/business/mock/MockPlanetImpl.java (added)
+++ roller/planet/core/trunk/test/java/org/apache/roller/planet/business/mock/MockPlanetImpl.java Sat Jun 28 12:18:17 2008
@@ -0,0 +1,14 @@
+/*
+ * To change this template, choose Tools | Templates
+ * and open the template in the editor.
+ */
+
+package org.apache.roller.planet.business.mock;
+
+/**
+ *
+ * @author ag92114
+ */
+public class MockPlanetImpl {
+
+}
Added: roller/planet/core/trunk/test/java/org/apache/roller/planet/business/mock/MockPropertiesManagerImpl.java
URL: http://svn.apache.org/viewvc/roller/planet/core/trunk/test/java/org/apache/roller/planet/business/mock/MockPropertiesManagerImpl.java?rev=672574&view=auto
==============================================================================
--- roller/planet/core/trunk/test/java/org/apache/roller/planet/business/mock/MockPropertiesManagerImpl.java (added)
+++ roller/planet/core/trunk/test/java/org/apache/roller/planet/business/mock/MockPropertiesManagerImpl.java Sat Jun 28 12:18:17 2008
@@ -0,0 +1,50 @@
+
+package org.apache.roller.planet.business.mock;
+
+import java.util.HashMap;
+import java.util.Map;
+import org.apache.roller.planet.business.InitializationException;
+import org.apache.roller.planet.business.PlanetPersistenceException;
+import org.apache.roller.planet.business.PropertiesManager;
+import org.apache.roller.planet.pojos.RuntimeConfigProperty;
+
+
+/**
+ * A mock PropertiesManager used for testing.
+ *
+ * @author ag92114
+ */
+public class MockPropertiesManagerImpl implements PropertiesManager {
+
+ private Map props = new HashMap();
+
+
+ public void saveProperty(RuntimeConfigProperty property) throws PlanetPersistenceException {
+ props.put(property.getName(), property);
+ }
+
+ public void saveProperties(Map properties) throws PlanetPersistenceException {
+ throw new UnsupportedOperationException("Not supported yet.");
+ }
+
+ public RuntimeConfigProperty getProperty(String name) throws PlanetPersistenceException {
+ return (RuntimeConfigProperty) props.get(name);
+ }
+
+ public Map getProperties() throws PlanetPersistenceException {
+ return props;
+ }
+
+ public void initialize() throws InitializationException {
+ // nada
+ }
+
+ public void release() {
+ // nada
+ }
+
+ public void shutdown() {
+ // nada
+ }
+
+}
Added: roller/planet/core/trunk/test/java/org/apache/roller/planet/config/PlanetConfigTest.java
URL: http://svn.apache.org/viewvc/roller/planet/core/trunk/test/java/org/apache/roller/planet/config/PlanetConfigTest.java?rev=672574&view=auto
==============================================================================
--- roller/planet/core/trunk/test/java/org/apache/roller/planet/config/PlanetConfigTest.java (added)
+++ roller/planet/core/trunk/test/java/org/apache/roller/planet/config/PlanetConfigTest.java Sat Jun 28 12:18:17 2008
@@ -0,0 +1,110 @@
+
+package org.apache.roller.planet.config;
+
+import java.util.List;
+import java.util.Properties;
+import org.apache.roller.planet.business.PropertiesManager;
+import org.apache.roller.planet.business.mock.MockPropertiesManagerImpl;
+import org.apache.roller.planet.pojos.RuntimeConfigProperty;
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+import static org.junit.Assert.*;
+
+
+/**
+ * Test PlanetConfig.
+ *
+ * @author ag92114
+ */
+public class PlanetConfigTest {
+
+ private PlanetConfig config = null;
+
+
+ @Before
+ public void setUp() throws Exception {
+ Properties props = new Properties();
+ props.put("output.formats", "html,xml");
+ props.put("basic", "basic value");
+ props.put("int", "12");
+ props.put("nonInt", "text");
+ props.put("booleanTrue", "true");
+ props.put("booleanFalse", "etc");
+ props.put("list", "item1, item2,item3");
+
+ config = new PlanetConfig(props, null);
+
+ // we also want to test access to runtime props as well, so
+ // we'll need a PropertiesManager to use
+ PropertiesManager propsMgr = new MockPropertiesManagerImpl();
+ propsMgr.saveProperty(new RuntimeConfigProperty("runtime.prop", "runtime value"));
+ config.setPropertiesManager(propsMgr);
+ }
+
+ @After
+ public void tearDown() {
+ config = null;
+ }
+
+
+ /**
+ * Test of getConfig method, of class PlanetConfig.
+ */
+ @Test
+ public void getConfig() {
+ System.out.println("getConfig");
+ String defaultPath = "/org/apache/roller/planet/config/default.properties";
+ String custPath = "/org/apache/roller/planet/config/custom.properties";
+ PlanetConfig conf = PlanetConfig.getConfig(defaultPath, custPath, "not tested here");
+ assertNotNull(conf);
+ assertEquals("test", conf.getProperty("test"));
+ assertEquals("overridedProperty", conf.getProperty("customProp"));
+ }
+
+ /**
+ * Test of getProperty method, of class PlanetConfig.
+ */
+ @Test
+ public void getProperty() {
+ System.out.println("getProperty");
+ assertEquals("basic value", config.getProperty("basic"));
+
+ // check that runtime props are properly returned
+ assertEquals("runtime value", config.getProperty("runtime.prop"));
+ }
+
+ /**
+ * Test of getBooleanProperty method, of class PlanetConfig.
+ */
+ @Test
+ public void getBooleanProperty() {
+ System.out.println("getBooleanProperty");
+ assertTrue(config.getBooleanProperty("booleanTrue"));
+ assertFalse(config.getBooleanProperty("booleanFalse"));
+ }
+
+ /**
+ * Test of getIntProperty method, of class PlanetConfig.
+ */
+ @Test
+ public void getIntProperty() {
+ System.out.println("getIntProperty");
+ assertEquals(12, config.getIntProperty("int"));
+ }
+
+ /**
+ * Test of getListProperty method, of class PlanetConfig.
+ */
+ @Test
+ public void getListProperty() {
+ System.out.println("getListProperty");
+ List<String> props = config.getListProperty("list");
+ int cnt = 0;
+ for(String item : props) {
+ cnt++;
+ assertEquals("item"+cnt, item);
+ }
+ }
+
+}
\ No newline at end of file
Added: roller/planet/core/trunk/test/java/org/apache/roller/planet/config/custom.properties
URL: http://svn.apache.org/viewvc/roller/planet/core/trunk/test/java/org/apache/roller/planet/config/custom.properties?rev=672574&view=auto
==============================================================================
--- roller/planet/core/trunk/test/java/org/apache/roller/planet/config/custom.properties (added)
+++ roller/planet/core/trunk/test/java/org/apache/roller/planet/config/custom.properties Sat Jun 28 12:18:17 2008
@@ -0,0 +1,5 @@
+# To change this template, choose Tools | Templates
+# and open the template in the editor.
+
+# overriding value from default config
+customProp=overridedProperty
Added: roller/planet/core/trunk/test/java/org/apache/roller/planet/config/default.properties
URL: http://svn.apache.org/viewvc/roller/planet/core/trunk/test/java/org/apache/roller/planet/config/default.properties?rev=672574&view=auto
==============================================================================
--- roller/planet/core/trunk/test/java/org/apache/roller/planet/config/default.properties (added)
+++ roller/planet/core/trunk/test/java/org/apache/roller/planet/config/default.properties Sat Jun 28 12:18:17 2008
@@ -0,0 +1,8 @@
+# To change this template, choose Tools | Templates
+# and open the template in the editor.
+
+# just a simple property
+test=test
+
+# this property should be overriden in the custom prop file for the test
+customProp=custom
Added: roller/planet/core/trunk/test/java/org/apache/roller/planet/tasks/PurgeUnusedSubscriptionsTaskTest.java
URL: http://svn.apache.org/viewvc/roller/planet/core/trunk/test/java/org/apache/roller/planet/tasks/PurgeUnusedSubscriptionsTaskTest.java?rev=672574&view=auto
==============================================================================
--- roller/planet/core/trunk/test/java/org/apache/roller/planet/tasks/PurgeUnusedSubscriptionsTaskTest.java (added)
+++ roller/planet/core/trunk/test/java/org/apache/roller/planet/tasks/PurgeUnusedSubscriptionsTaskTest.java Sat Jun 28 12:18:17 2008
@@ -0,0 +1,60 @@
+
+package org.apache.roller.planet.tasks;
+
+import org.apache.roller.planet.TestUtils;
+import org.apache.roller.planet.business.AggregatorFactory;
+import org.apache.roller.planet.business.PlanetManager;
+import org.apache.roller.planet.business.startup.PlanetStartup;
+import org.apache.roller.planet.config.PlanetConfig;
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+import static org.junit.Assert.*;
+
+
+/**
+ * Test the PurgeUnusedSubscriptionsTask.
+ *
+ * @author ag92114
+ */
+public class PurgeUnusedSubscriptionsTaskTest {
+
+
+ @Before
+ public void setUp() {
+ }
+
+ @After
+ public void tearDown() {
+ }
+
+
+ /**
+ * Test of run method, of class PurgeUnusedSubscriptionsTask.
+ */
+ @Test
+ public void run() throws Exception {
+ System.out.println("run");
+ PurgeUnusedSubscriptionsTask instance = new PurgeUnusedSubscriptionsTask();
+
+ // start by loading config
+ PlanetConfig config = PlanetConfig.getConfig(PlanetConfig.DEFAULT, PlanetConfig.CUSTOM, PlanetConfig.JVM_PARAM);
+
+ // need to prepare and bootstrap Aggregator as well
+ PlanetStartup.prepare(config);
+ AggregatorFactory.bootstrap(AggregatorFactory.getDefaultProvider(config));
+
+ // add a subscription
+ TestUtils.setupSubscription("purgeUnusedSubscriptionsTask");
+ TestUtils.endSession(true);
+
+ // run task
+ instance.run();
+ TestUtils.endSession(true);
+
+ // verify subscription is gone
+ PlanetManager pmgr = AggregatorFactory.getAggregator().getPlanetManager();
+ assertEquals(0, pmgr.getSubscriptions().size());
+ }
+
+}
\ No newline at end of file
Added: roller/planet/core/trunk/test/java/org/apache/roller/planet/ui/rendering/util/PlanetGroupFeedRequestTest.java
URL: http://svn.apache.org/viewvc/roller/planet/core/trunk/test/java/org/apache/roller/planet/ui/rendering/util/PlanetGroupFeedRequestTest.java?rev=672574&view=auto
==============================================================================
--- roller/planet/core/trunk/test/java/org/apache/roller/planet/ui/rendering/util/PlanetGroupFeedRequestTest.java (added)
+++ roller/planet/core/trunk/test/java/org/apache/roller/planet/ui/rendering/util/PlanetGroupFeedRequestTest.java Sat Jun 28 12:18:17 2008
@@ -0,0 +1,48 @@
+
+package org.apache.roller.planet.ui.rendering.util;
+
+import org.junit.Test;
+import static org.junit.Assert.*;
+
+
+/**
+ * Unit test of PlanetGroupFeedRequest class.
+ *
+ * @author ag92114
+ */
+public class PlanetGroupFeedRequestTest {
+
+ /**
+ * Test of constructor, of class PlanetGroupFeedRequest.
+ */
+ @Test
+ public void constructor() throws Exception {
+ System.out.println("constructor");
+
+ PlanetGroupFeedRequest instance;
+
+ instance = new PlanetGroupFeedRequest("foo/bar/atom");
+ assertEquals("foo", instance.getPlanetHandle());
+ assertEquals("bar", instance.getGroupHandle());
+ assertEquals("atom", instance.getFormat());
+
+ instance = new PlanetGroupFeedRequest("/foo/bar/atom");
+ assertEquals("foo", instance.getPlanetHandle());
+ assertEquals("bar", instance.getGroupHandle());
+ assertEquals("atom", instance.getFormat());
+
+ instance = new PlanetGroupFeedRequest("/foo/bar/atom/");
+ assertEquals("foo", instance.getPlanetHandle());
+ assertEquals("bar", instance.getGroupHandle());
+ assertEquals("atom", instance.getFormat());
+
+ instance = new PlanetGroupFeedRequest("/blah/bar/atom/");
+ instance.setAuthenticUserName("test");
+ assertEquals("blah", instance.getPlanetHandle());
+ assertEquals("bar", instance.getGroupHandle());
+ assertEquals("atom", instance.getFormat());
+ assertEquals("test", instance.getAuthenticUserName());
+ assertTrue(instance.isLoggedIn());
+ }
+
+}
Added: roller/planet/core/trunk/test/java/org/apache/roller/planet/ui/rendering/util/PlanetGroupPageRequestTest.java
URL: http://svn.apache.org/viewvc/roller/planet/core/trunk/test/java/org/apache/roller/planet/ui/rendering/util/PlanetGroupPageRequestTest.java?rev=672574&view=auto
==============================================================================
--- roller/planet/core/trunk/test/java/org/apache/roller/planet/ui/rendering/util/PlanetGroupPageRequestTest.java (added)
+++ roller/planet/core/trunk/test/java/org/apache/roller/planet/ui/rendering/util/PlanetGroupPageRequestTest.java Sat Jun 28 12:18:17 2008
@@ -0,0 +1,59 @@
+
+package org.apache.roller.planet.ui.rendering.util;
+
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.Map;
+import org.junit.Test;
+import static org.junit.Assert.*;
+
+
+/**
+ * Unit test for PlanetGroupPageRequest class.
+ *
+ * @author ag92114
+ */
+public class PlanetGroupPageRequestTest {
+
+ /**
+ * Test of constructor, of class PlanetGroupPageRequest.
+ */
+ @Test
+ public void constructor() throws Exception {
+ System.out.println("constructor");
+
+ Map params = new HashMap();
+ params.put("page", new String[]{"1"});
+
+ PlanetGroupPageRequest instance;
+
+ instance = new PlanetGroupPageRequest("foo/bar", Collections.EMPTY_MAP);
+ assertEquals("foo", instance.getPlanetHandle());
+ assertEquals("bar", instance.getGroupHandle());
+ assertEquals(0, instance.getPageNum());
+
+ instance = new PlanetGroupPageRequest("foo/bar", params);
+ assertEquals("foo", instance.getPlanetHandle());
+ assertEquals("bar", instance.getGroupHandle());
+ assertEquals(1, instance.getPageNum());
+
+ instance = new PlanetGroupPageRequest("/foo/bar", params);
+ assertEquals("foo", instance.getPlanetHandle());
+ assertEquals("bar", instance.getGroupHandle());
+ assertEquals(1, instance.getPageNum());
+
+ instance = new PlanetGroupPageRequest("/foo/bar/", params);
+ assertEquals("foo", instance.getPlanetHandle());
+ assertEquals("bar", instance.getGroupHandle());
+ assertEquals(1, instance.getPageNum());
+
+ instance = new PlanetGroupPageRequest("/blah/bar/", params);
+ instance.setAuthenticUserName("test");
+ assertEquals("blah", instance.getPlanetHandle());
+ assertEquals("bar", instance.getGroupHandle());
+ assertEquals(1, instance.getPageNum());
+ assertEquals("test", instance.getAuthenticUserName());
+ assertTrue(instance.isLoggedIn());
+ }
+
+}
Added: roller/planet/core/trunk/test/java/org/apache/roller/planet/ui/rendering/util/PlanetGroupRequestTest.java
URL: http://svn.apache.org/viewvc/roller/planet/core/trunk/test/java/org/apache/roller/planet/ui/rendering/util/PlanetGroupRequestTest.java?rev=672574&view=auto
==============================================================================
--- roller/planet/core/trunk/test/java/org/apache/roller/planet/ui/rendering/util/PlanetGroupRequestTest.java (added)
+++ roller/planet/core/trunk/test/java/org/apache/roller/planet/ui/rendering/util/PlanetGroupRequestTest.java Sat Jun 28 12:18:17 2008
@@ -0,0 +1,50 @@
+
+package org.apache.roller.planet.ui.rendering.util;
+
+import org.junit.Test;
+import static org.junit.Assert.*;
+
+
+/**
+ * Unit test for PlanetGroupRequest class.
+ *
+ * @author ag92114
+ */
+public class PlanetGroupRequestTest {
+
+ /**
+ * Test of constructor, of class PlanetGroupRequest.
+ */
+ @Test
+ public void constructor() throws Exception {
+ System.out.println("constructor");
+
+ PlanetGroupRequest instance;
+
+ instance = new PlanetGroupRequest("foo/bar");
+ assertEquals("foo", instance.getPlanetHandle());
+ assertEquals("bar", instance.getGroupHandle());
+ assertNull(instance.getAuthenticUserName());
+ assertFalse(instance.isLoggedIn());
+
+ instance = new PlanetGroupRequest("/foo/bar");
+ assertEquals("foo", instance.getPlanetHandle());
+ assertEquals("bar", instance.getGroupHandle());
+ assertNull(instance.getAuthenticUserName());
+ assertFalse(instance.isLoggedIn());
+
+ instance = new PlanetGroupRequest("/foo/bar/");
+ assertEquals("foo", instance.getPlanetHandle());
+ assertEquals("bar", instance.getGroupHandle());
+ assertNull(instance.getAuthenticUserName());
+ assertFalse(instance.isLoggedIn());
+
+ instance = new PlanetGroupRequest("/blah/bar/");
+ instance.setAuthenticUserName("test");
+ assertEquals("blah", instance.getPlanetHandle());
+ assertEquals("bar", instance.getGroupHandle());
+ assertEquals("test", instance.getAuthenticUserName());
+ assertTrue(instance.isLoggedIn());
+ }
+
+}
Added: roller/planet/core/trunk/test/java/org/apache/roller/planet/ui/struts2/core/CreatePlanetTest.java
URL: http://svn.apache.org/viewvc/roller/planet/core/trunk/test/java/org/apache/roller/planet/ui/struts2/core/CreatePlanetTest.java?rev=672574&view=auto
==============================================================================
--- roller/planet/core/trunk/test/java/org/apache/roller/planet/ui/struts2/core/CreatePlanetTest.java (added)
+++ roller/planet/core/trunk/test/java/org/apache/roller/planet/ui/struts2/core/CreatePlanetTest.java Sat Jun 28 12:18:17 2008
@@ -0,0 +1,100 @@
+
+package org.apache.roller.planet.ui.struts2.core;
+
+import org.apache.roller.planet.TestUtils;
+import org.apache.roller.planet.business.AggregatorFactory;
+import org.apache.roller.planet.pojos.Planet;
+import org.apache.roller.planet.pojos.User;
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+import static org.junit.Assert.*;
+
+
+/**
+ * Test CreatePlanet struts2 action.
+ *
+ * @author ag92114
+ */
+public class CreatePlanetTest {
+
+ private User testUser = null;
+
+
+ @Before
+ public void setUp() throws Exception {
+ TestUtils.setupAggregator();
+ testUser = TestUtils.setupUser("CreatePlanetTest");
+ }
+
+ @After
+ public void tearDown() throws Exception {
+ TestUtils.teardownUser(testUser.getId());
+ TestUtils.shutdownAggregator();
+ }
+
+
+ /**
+ * Test of save method, of class CreatePlanet.
+ */
+ @Test
+ public void save() throws Exception {
+ System.out.println("save");
+ CreatePlanet instance = new CreatePlanet();
+ instance.setPlanetConfig(AggregatorFactory.getAggregator().getConfig());
+ instance.setAuthenticatedUser(testUser);
+ instance.getBean().setTitle("CPtitle");
+ instance.getBean().setDescription("CPdescription");
+ instance.getBean().setHandle("CPhandle");
+
+ String result = instance.save();
+
+ assertEquals(CreatePlanet.SUCCESS, result);
+ assertFalse(instance.hasActionErrors());
+ }
+
+
+ /**
+ * Test of myValidate method, of class CreatePlanet.
+ */
+ @Test
+ public void myValidateInvalidHandle() {
+ System.out.println("myValidateInvalidHandle");
+ CreatePlanet instance = new CreatePlanet();
+ instance.setPlanetConfig(AggregatorFactory.getAggregator().getConfig());
+ instance.setAuthenticatedUser(testUser);
+ instance.getBean().setTitle("myValidateInvalidHandle");
+ instance.getBean().setDescription("myValidateInvalidHandle");
+ instance.getBean().setHandle("Handle with illegal characters *#(@#");
+
+ instance.myValidate();
+
+ assertTrue(instance.hasActionErrors());
+ }
+
+
+ /**
+ * Test of myValidate method, of class CreatePlanet.
+ */
+ @Test
+ public void myValidateExistingHandle() throws Exception {
+ System.out.println("myValidateExistingHandle");
+
+ // need an existing planet to conflict with
+ Planet testPlanet = TestUtils.setupPlanet("myValidateExistingHandle");
+
+ CreatePlanet instance = new CreatePlanet();
+ instance.setPlanetConfig(AggregatorFactory.getAggregator().getConfig());
+ instance.setAuthenticatedUser(testUser);
+ instance.getBean().setTitle("myValidateExistingHandle");
+ instance.getBean().setDescription("myValidateExistingHandle");
+ instance.getBean().setHandle("myValidateExistingHandle");
+
+ instance.myValidate();
+
+ assertTrue(instance.hasActionErrors());
+
+ TestUtils.teardownPlanet(testPlanet.getId());
+ }
+
+}
Added: roller/planet/core/trunk/test/java/org/apache/roller/planet/ui/struts2/core/MainMenuTest.java
URL: http://svn.apache.org/viewvc/roller/planet/core/trunk/test/java/org/apache/roller/planet/ui/struts2/core/MainMenuTest.java?rev=672574&view=auto
==============================================================================
--- roller/planet/core/trunk/test/java/org/apache/roller/planet/ui/struts2/core/MainMenuTest.java (added)
+++ roller/planet/core/trunk/test/java/org/apache/roller/planet/ui/struts2/core/MainMenuTest.java Sat Jun 28 12:18:17 2008
@@ -0,0 +1,124 @@
+
+package org.apache.roller.planet.ui.struts2.core;
+
+import org.apache.roller.planet.TestUtils;
+import org.apache.roller.planet.business.AggregatorFactory;
+import org.apache.roller.planet.business.UserManager;
+import org.apache.roller.planet.pojos.Planet;
+import org.apache.roller.planet.pojos.PlanetPermission;
+import org.apache.roller.planet.pojos.User;
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+import static org.junit.Assert.*;
+
+
+/**
+ * Test MainMenu struts2 action.
+ *
+ * @author ag92114
+ */
+public class MainMenuTest {
+
+ private User testUser = null;
+ private Planet testPlanet = null;
+
+
+ @Before
+ public void setUp() throws Exception {
+ TestUtils.setupAggregator();
+ testUser = TestUtils.setupUser("MainMenuTest");
+ testPlanet = TestUtils.setupPlanet("MainMenuTest");
+ }
+
+ @After
+ public void tearDown() throws Exception {
+ TestUtils.teardownPlanet(testPlanet.getId());
+ TestUtils.teardownUser(testUser.getId());
+ TestUtils.shutdownAggregator();
+ }
+
+
+ /**
+ * Test of accept method, of class MainMenu.
+ */
+ @Test
+ public void accept() throws Exception {
+ System.out.println("accept");
+
+ // setup invitation
+ UserManager mgr = AggregatorFactory.getAggregator().getUserManager();
+ PlanetPermission perms = mgr.inviteUser(testPlanet, testUser, PlanetPermission.AUTHOR);
+ AggregatorFactory.getAggregator().flush();
+
+ MainMenu instance = new MainMenu();
+ instance.setPlanetConfig(AggregatorFactory.getAggregator().getConfig());
+ instance.setAuthenticatedUser(testUser);
+ instance.setInviteId(perms.getId());
+
+ instance.accept();
+ assertFalse(instance.hasActionErrors());
+
+ // make sure permissions are legit
+ TestUtils.endSession(false);
+ perms = mgr.getPermissions(TestUtils.getManagedPlanet(testPlanet), TestUtils.getManagedUser(testUser));
+ assertEquals(PlanetPermission.AUTHOR, perms.getPermissionMask());
+
+ // cleanup after ourselves
+ TestUtils.teardownPermissions(perms.getId());
+ }
+
+
+ /**
+ * Test of decline method, of class MainMenu.
+ */
+ @Test
+ public void decline() throws Exception {
+ System.out.println("decline");
+
+ // setup invitation
+ UserManager mgr = AggregatorFactory.getAggregator().getUserManager();
+ PlanetPermission perms = mgr.inviteUser(testPlanet, testUser, PlanetPermission.AUTHOR);
+ AggregatorFactory.getAggregator().flush();
+
+ MainMenu instance = new MainMenu();
+ instance.setPlanetConfig(AggregatorFactory.getAggregator().getConfig());
+ instance.setAuthenticatedUser(testUser);
+ instance.setInviteId(perms.getId());
+
+ instance.decline();
+ assertFalse(instance.hasActionErrors());
+
+ // make sure permissions are legit
+ TestUtils.endSession(false);
+ perms = mgr.getPermissions(TestUtils.getManagedPlanet(testPlanet), TestUtils.getManagedUser(testUser));
+ assertEquals(null, perms);
+ }
+
+
+ /**
+ * Test of resign method, of class MainMenu.
+ */
+ @Test
+ public void resign() throws Exception {
+ System.out.println("resign");
+
+ // setup permissions
+ PlanetPermission perms = TestUtils.setupPermissions(testUser, testPlanet, PlanetPermission.AUTHOR);
+
+ MainMenu instance = new MainMenu();
+ instance.setPlanetConfig(AggregatorFactory.getAggregator().getConfig());
+ instance.setAuthenticatedUser(testUser);
+ instance.setPlanetId(testPlanet.getId());
+
+ instance.resign();
+ assertFalse(instance.hasActionErrors());
+
+ // make sure permissions are legit
+ TestUtils.endSession(false);
+ UserManager mgr = AggregatorFactory.getAggregator().getUserManager();
+ perms = mgr.getPermissions(TestUtils.getManagedPlanet(testPlanet), TestUtils.getManagedUser(testUser));
+ assertEquals(null, perms);
+ }
+
+}
Added: roller/planet/core/trunk/test/java/org/apache/roller/planet/ui/struts2/editor/GroupAddTest.java
URL: http://svn.apache.org/viewvc/roller/planet/core/trunk/test/java/org/apache/roller/planet/ui/struts2/editor/GroupAddTest.java?rev=672574&view=auto
==============================================================================
--- roller/planet/core/trunk/test/java/org/apache/roller/planet/ui/struts2/editor/GroupAddTest.java (added)
+++ roller/planet/core/trunk/test/java/org/apache/roller/planet/ui/struts2/editor/GroupAddTest.java Sat Jun 28 12:18:17 2008
@@ -0,0 +1,76 @@
+
+package org.apache.roller.planet.ui.struts2.editor;
+
+import org.apache.roller.planet.TestUtils;
+import org.apache.roller.planet.business.AggregatorFactory;
+import org.apache.roller.planet.business.PlanetManager;
+import org.apache.roller.planet.pojos.Planet;
+import org.apache.roller.planet.pojos.PlanetGroup;
+import org.apache.roller.planet.pojos.User;
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+import static org.junit.Assert.*;
+
+
+/**
+ * Test of GroupAdd struts2 action.
+ *
+ * @author ag92114
+ */
+public class GroupAddTest {
+
+ private User testUser = null;
+ private Planet testPlanet = null;
+
+
+ @Before
+ public void setUp() throws Exception {
+ TestUtils.setupAggregator();
+ testUser = TestUtils.setupUser("GroupAddTest");
+ testPlanet = TestUtils.setupPlanet("GroupAddTest");
+ }
+
+ @After
+ public void tearDown() throws Exception {
+ TestUtils.teardownPlanet(testPlanet.getId());
+ TestUtils.teardownUser(testUser.getId());
+ TestUtils.shutdownAggregator();
+ }
+
+
+ /**
+ * Test of save method, of class GroupAdd.
+ */
+ @Test
+ public void save() throws Exception {
+ System.out.println("save");
+
+ GroupAdd instance = new GroupAdd();
+ instance.setPlanetConfig(AggregatorFactory.getAggregator().getConfig());
+ instance.setAuthenticatedUser(testUser);
+ instance.setActionPlanet(testPlanet);
+
+ GroupBean bean = instance.getBean();
+ bean.setHandle("GroupAddTest");
+ bean.setTitle("GroupAddTest");
+ bean.setDescription("GroupAddTest");
+ bean.setPageEntries(10);
+ bean.setFeedEntries(10);
+
+ // add it
+ String result = instance.save();
+ assertEquals(GroupAdd.SUCCESS, result);
+ assertFalse(instance.hasActionErrors());
+
+ // make sure group was added
+ TestUtils.endSession(false);
+ PlanetManager pmgr = AggregatorFactory.getAggregator().getPlanetManager();
+ PlanetGroup group = pmgr.getGroup(TestUtils.getManagedPlanet(testPlanet), "GroupAddTest");
+ assertNotNull(group);
+
+ // cleanup after ourselves
+ TestUtils.teardownGroup(group.getId());
+ }
+
+}
Added: roller/planet/core/trunk/test/java/org/apache/roller/planet/ui/struts2/editor/GroupBeanTest.java
URL: http://svn.apache.org/viewvc/roller/planet/core/trunk/test/java/org/apache/roller/planet/ui/struts2/editor/GroupBeanTest.java?rev=672574&view=auto
==============================================================================
--- roller/planet/core/trunk/test/java/org/apache/roller/planet/ui/struts2/editor/GroupBeanTest.java (added)
+++ roller/planet/core/trunk/test/java/org/apache/roller/planet/ui/struts2/editor/GroupBeanTest.java Sat Jun 28 12:18:17 2008
@@ -0,0 +1,81 @@
+/*
+ * To change this template, choose Tools | Templates
+ * and open the template in the editor.
+ */
+
+package org.apache.roller.planet.ui.struts2.editor;
+
+import org.apache.roller.planet.pojos.PlanetGroup;
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+import static org.junit.Assert.*;
+
+
+/**
+ * Unit test for GroupBean utility class.
+ *
+ * @author ag92114
+ */
+public class GroupBeanTest {
+
+ @Before
+ public void setUp() {
+ }
+
+ @After
+ public void tearDown() {
+ }
+
+
+ /**
+ * Test of copyFrom method, of class GroupBean.
+ */
+ @Test
+ public void copyFrom() {
+ System.out.println("copyFrom");
+
+ PlanetGroup group = new PlanetGroup();
+ group.setHandle("GroupBeanTest");
+ group.setDescription("GroupBeanTest");
+ group.setTitle("GroupBeanTest");
+ group.setMaxPageEntries(10);
+ group.setMaxFeedEntries(10);
+
+ GroupBean instance = new GroupBean();
+ instance.copyFrom(group);
+
+ assertEquals(instance.getHandle(), group.getHandle());
+ assertEquals(instance.getDescription(), group.getDescription());
+ assertEquals(instance.getTitle(), group.getTitle());
+ assertEquals(instance.getPageEntries(), group.getMaxPageEntries());
+ assertEquals(instance.getFeedEntries(), group.getMaxFeedEntries());
+ }
+
+
+ /**
+ * Test of copyTo method, of class GroupBean.
+ */
+ @Test
+ public void copyTo() {
+ System.out.println("copyTo");
+
+ GroupBean instance = new GroupBean();
+ instance.setHandle("GroupBeanTest");
+ instance.setDescription("GroupBeanTest");
+ instance.setTitle("GroupBeanTest");
+ instance.setPageEntries(10);
+ instance.setFeedEntries(10);
+
+ PlanetGroup group = new PlanetGroup();
+ instance.copyTo(group);
+
+ // handle should not be copied
+ assertNull(group.getHandle());
+ assertEquals(group.getDescription(), instance.getDescription());
+ assertEquals(group.getTitle(), instance.getTitle());
+ assertEquals(group.getMaxPageEntries(), instance.getPageEntries());
+ assertEquals(group.getMaxFeedEntries(), instance.getFeedEntries());
+ }
+
+}
Added: roller/planet/core/trunk/test/java/org/apache/roller/planet/ui/struts2/editor/GroupEditTest.java
URL: http://svn.apache.org/viewvc/roller/planet/core/trunk/test/java/org/apache/roller/planet/ui/struts2/editor/GroupEditTest.java?rev=672574&view=auto
==============================================================================
--- roller/planet/core/trunk/test/java/org/apache/roller/planet/ui/struts2/editor/GroupEditTest.java (added)
+++ roller/planet/core/trunk/test/java/org/apache/roller/planet/ui/struts2/editor/GroupEditTest.java Sat Jun 28 12:18:17 2008
@@ -0,0 +1,77 @@
+
+package org.apache.roller.planet.ui.struts2.editor;
+
+import org.apache.roller.planet.TestUtils;
+import org.apache.roller.planet.business.AggregatorFactory;
+import org.apache.roller.planet.business.PlanetManager;
+import org.apache.roller.planet.pojos.Planet;
+import org.apache.roller.planet.pojos.PlanetGroup;
+import org.apache.roller.planet.pojos.User;
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+import static org.junit.Assert.*;
+
+
+/**
+ * Unit test for GroupEdit struts2 action.
+ *
+ * @author ag92114
+ */
+public class GroupEditTest {
+
+ private User testUser = null;
+ private Planet testPlanet = null;
+ private PlanetGroup testGroup = null;
+
+
+ @Before
+ public void setUp() throws Exception {
+ TestUtils.setupAggregator();
+ testUser = TestUtils.setupUser("GroupEditTest");
+ testPlanet = TestUtils.setupPlanet("GroupEditTest");
+ testGroup = TestUtils.setupGroup(testPlanet, "GroupEditTest");
+ }
+
+ @After
+ public void tearDown() throws Exception {
+ TestUtils.teardownGroup(testGroup.getId());
+ TestUtils.teardownPlanet(testPlanet.getId());
+ TestUtils.teardownUser(testUser.getId());
+ TestUtils.shutdownAggregator();
+ }
+
+
+ /**
+ * Test of save method, of class GroupEdit.
+ */
+ @Test
+ public void save() throws Exception {
+ System.out.println("save");
+
+ GroupEdit instance = new GroupEdit();
+ instance.setPlanetConfig(AggregatorFactory.getAggregator().getConfig());
+ instance.setAuthenticatedUser(testUser);
+ instance.setActionPlanet(testPlanet);
+ instance.setActionGroup(testGroup);
+
+ GroupBean bean = instance.getBean();
+ bean.setTitle("GroupEditTestModified");
+ bean.setDescription("GroupEditTestModified");
+ bean.setPageEntries(10);
+ bean.setFeedEntries(10);
+
+ // save it
+ instance.save();
+ assertFalse(instance.hasActionErrors());
+
+ // make sure group was modified
+ TestUtils.endSession(false);
+ PlanetManager pmgr = AggregatorFactory.getAggregator().getPlanetManager();
+ PlanetGroup group = pmgr.getGroup(TestUtils.getManagedPlanet(testPlanet), "GroupEditTest");
+ assertNotNull(group);
+ assertEquals("GroupEditTestModified", group.getTitle());
+ assertEquals("GroupEditTestModified", group.getDescription());
+ }
+
+}
Added: roller/planet/core/trunk/test/java/org/apache/roller/planet/ui/struts2/editor/GroupRemoveTest.java
URL: http://svn.apache.org/viewvc/roller/planet/core/trunk/test/java/org/apache/roller/planet/ui/struts2/editor/GroupRemoveTest.java?rev=672574&view=auto
==============================================================================
--- roller/planet/core/trunk/test/java/org/apache/roller/planet/ui/struts2/editor/GroupRemoveTest.java (added)
+++ roller/planet/core/trunk/test/java/org/apache/roller/planet/ui/struts2/editor/GroupRemoveTest.java Sat Jun 28 12:18:17 2008
@@ -0,0 +1,68 @@
+
+package org.apache.roller.planet.ui.struts2.editor;
+
+import org.apache.roller.planet.TestUtils;
+import org.apache.roller.planet.business.AggregatorFactory;
+import org.apache.roller.planet.business.PlanetManager;
+import org.apache.roller.planet.pojos.Planet;
+import org.apache.roller.planet.pojos.PlanetGroup;
+import org.apache.roller.planet.pojos.User;
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+import static org.junit.Assert.*;
+
+
+/**
+ * Unit test of GroupRemove struts2 action.
+ *
+ * @author ag92114
+ */
+public class GroupRemoveTest {
+
+ private User testUser = null;
+ private Planet testPlanet = null;
+ private PlanetGroup testGroup = null;
+
+
+ @Before
+ public void setUp() throws Exception {
+ TestUtils.setupAggregator();
+ testUser = TestUtils.setupUser("GroupRemoveTest");
+ testPlanet = TestUtils.setupPlanet("GroupRemoveTest");
+ testGroup = TestUtils.setupGroup(testPlanet, "GroupRemoveTest");
+ }
+
+ @After
+ public void tearDown() throws Exception {
+ TestUtils.teardownPlanet(testPlanet.getId());
+ TestUtils.teardownUser(testUser.getId());
+ TestUtils.shutdownAggregator();
+ }
+
+
+ /**
+ * Test of remove method, of class GroupRemove.
+ */
+ @Test
+ public void remove() throws Exception {
+ System.out.println("remove");
+
+ GroupRemove instance = new GroupRemove();
+ instance.setPlanetConfig(AggregatorFactory.getAggregator().getConfig());
+ instance.setAuthenticatedUser(testUser);
+ instance.setActionPlanet(testPlanet);
+ instance.setActionGroup(testGroup);
+
+ String result = instance.remove();
+ assertEquals(GroupRemove.SUCCESS, result);
+ assertFalse(instance.hasActionErrors());
+
+ // make sure group no longer exists
+ TestUtils.endSession(false);
+ PlanetManager pmgr = AggregatorFactory.getAggregator().getPlanetManager();
+ PlanetGroup group = pmgr.getGroup(TestUtils.getManagedPlanet(testPlanet), "GroupRemoveTest");
+ assertNull(group);
+ }
+
+}
Added: roller/planet/core/trunk/test/java/org/apache/roller/planet/ui/struts2/editor/MembersTest.java
URL: http://svn.apache.org/viewvc/roller/planet/core/trunk/test/java/org/apache/roller/planet/ui/struts2/editor/MembersTest.java?rev=672574&view=auto
==============================================================================
--- roller/planet/core/trunk/test/java/org/apache/roller/planet/ui/struts2/editor/MembersTest.java (added)
+++ roller/planet/core/trunk/test/java/org/apache/roller/planet/ui/struts2/editor/MembersTest.java Sat Jun 28 12:18:17 2008
@@ -0,0 +1,102 @@
+
+package org.apache.roller.planet.ui.struts2.editor;
+
+import java.util.ArrayList;
+import java.util.List;
+import org.apache.roller.planet.TestUtils;
+import org.apache.roller.planet.business.AggregatorFactory;
+import org.apache.roller.planet.business.UserManager;
+import org.apache.roller.planet.pojos.Planet;
+import org.apache.roller.planet.pojos.PlanetPermission;
+import org.apache.roller.planet.pojos.User;
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+import static org.junit.Assert.*;
+
+
+/**
+ * Test Members struts2 action.
+ *
+ * @author ag92114
+ */
+public class MembersTest {
+
+ private User testUser = null;
+ private User inviteRevokeUser = null;
+ private Planet testPlanet = null;
+
+
+ @Before
+ public void setUp() throws Exception {
+ TestUtils.setupAggregator();
+ testUser = TestUtils.setupUser("MembersTest");
+ inviteRevokeUser = TestUtils.setupUser("MembersTestInviteRevokeUser");
+ testPlanet = TestUtils.setupPlanet("MembersTest");
+ }
+
+ @After
+ public void tearDown() throws Exception {
+ TestUtils.teardownPlanet(testPlanet.getId());
+ TestUtils.teardownUser(inviteRevokeUser.getId());
+ TestUtils.teardownUser(testUser.getId());
+ TestUtils.shutdownAggregator();
+ }
+
+
+ /**
+ * Test of invite method, of class Members.
+ */
+ @Test
+ public void invite() throws Exception {
+ System.out.println("invite");
+
+ Members instance = new Members();
+ instance.setPlanetConfig(AggregatorFactory.getAggregator().getConfig());
+ instance.setAuthenticatedUser(testUser);
+ instance.setActionPlanet(testPlanet);
+ instance.setUserName(inviteRevokeUser.getUserName());
+
+ instance.invite();
+ assertFalse(instance.hasActionErrors());
+
+ // make sure invite was legit
+ TestUtils.endSession(false);
+ UserManager mgr = AggregatorFactory.getAggregator().getUserManager();
+ PlanetPermission perms = mgr.getPermissions(TestUtils.getManagedPlanet(testPlanet), TestUtils.getManagedUser(inviteRevokeUser));
+ assertEquals(PlanetPermission.ADMIN, perms.getPermissionMask());
+
+ // cleanup after ourselves
+ TestUtils.teardownPermissions(perms.getId());
+ }
+
+
+ /**
+ * Test of revoke method, of class Members.
+ */
+ @Test
+ public void revoke() throws Exception {
+ System.out.println("revoke");
+
+ // setup permission
+ PlanetPermission perms = TestUtils.setupPermissions(inviteRevokeUser, testPlanet, PlanetPermission.ADMIN);
+
+ Members instance = new Members();
+ instance.setPlanetConfig(AggregatorFactory.getAggregator().getConfig());
+ instance.setAuthenticatedUser(testUser);
+ instance.setActionPlanet(testPlanet);
+ List<String> revokeIds = new ArrayList(1);
+ revokeIds.add(perms.getId());
+ instance.setRevokeIds(revokeIds);
+
+ instance.revoke();
+ assertFalse(instance.hasActionErrors());
+
+ // make sure revoke was legit
+ TestUtils.endSession(false);
+ UserManager mgr = AggregatorFactory.getAggregator().getUserManager();
+ perms = mgr.getPermissions(TestUtils.getManagedPlanet(testPlanet), TestUtils.getManagedUser(inviteRevokeUser));
+ assertEquals(null, perms);
+ }
+
+}
Added: roller/planet/core/trunk/test/java/org/apache/roller/planet/ui/struts2/editor/PlanetConfigBeanTest.java
URL: http://svn.apache.org/viewvc/roller/planet/core/trunk/test/java/org/apache/roller/planet/ui/struts2/editor/PlanetConfigBeanTest.java?rev=672574&view=auto
==============================================================================
--- roller/planet/core/trunk/test/java/org/apache/roller/planet/ui/struts2/editor/PlanetConfigBeanTest.java (added)
+++ roller/planet/core/trunk/test/java/org/apache/roller/planet/ui/struts2/editor/PlanetConfigBeanTest.java Sat Jun 28 12:18:17 2008
@@ -0,0 +1,69 @@
+
+package org.apache.roller.planet.ui.struts2.editor;
+
+import org.apache.roller.planet.pojos.Planet;
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+import static org.junit.Assert.*;
+
+
+/**
+ * Unit test of PlanetConfigBean util class.
+ *
+ * @author ag92114
+ */
+public class PlanetConfigBeanTest {
+
+ @Before
+ public void setUp() {
+ }
+
+ @After
+ public void tearDown() {
+ }
+
+
+ /**
+ * Test of copyFrom method, of class PlanetConfigBean.
+ */
+ @Test
+ public void copyFrom() {
+ System.out.println("copyFrom");
+
+ Planet planet = new Planet();
+ planet.setHandle("PlanetConfigBeanTest");
+ planet.setDescription("PlanetConfigBeanTest");
+ planet.setTitle("PlanetConfigBeanTest");
+
+ PlanetConfigBean instance = new PlanetConfigBean();
+ instance.copyFrom(planet);
+
+ assertEquals(instance.getHandle(), planet.getHandle());
+ assertEquals(instance.getDescription(), planet.getDescription());
+ assertEquals(instance.getTitle(), planet.getTitle());
+ }
+
+
+ /**
+ * Test of copyTo method, of class PlanetConfigBean.
+ */
+ @Test
+ public void copyTo() {
+ System.out.println("copyTo");
+
+ PlanetConfigBean instance = new PlanetConfigBean();
+ instance.setHandle("GroupBeanTest");
+ instance.setDescription("GroupBeanTest");
+ instance.setTitle("GroupBeanTest");
+
+ Planet planet = new Planet();
+ instance.copyTo(planet);
+
+ // handle should not be copied
+ assertNull(planet.getHandle());
+ assertEquals(planet.getDescription(), instance.getDescription());
+ assertEquals(planet.getTitle(), instance.getTitle());
+ }
+
+}
Added: roller/planet/core/trunk/test/java/org/apache/roller/planet/ui/struts2/editor/PlanetConfigTest.java
URL: http://svn.apache.org/viewvc/roller/planet/core/trunk/test/java/org/apache/roller/planet/ui/struts2/editor/PlanetConfigTest.java?rev=672574&view=auto
==============================================================================
--- roller/planet/core/trunk/test/java/org/apache/roller/planet/ui/struts2/editor/PlanetConfigTest.java (added)
+++ roller/planet/core/trunk/test/java/org/apache/roller/planet/ui/struts2/editor/PlanetConfigTest.java Sat Jun 28 12:18:17 2008
@@ -0,0 +1,68 @@
+
+package org.apache.roller.planet.ui.struts2.editor;
+
+import org.apache.roller.planet.TestUtils;
+import org.apache.roller.planet.business.AggregatorFactory;
+import org.apache.roller.planet.pojos.Planet;
+import org.apache.roller.planet.pojos.User;
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+import static org.junit.Assert.*;
+
+
+/**
+ * Unit test of PlanetConfig struts2 action.
+ *
+ * @author ag92114
+ */
+public class PlanetConfigTest {
+
+ private User testUser = null;
+ private Planet testPlanet = null;
+
+
+ @Before
+ public void setUp() throws Exception {
+ TestUtils.setupAggregator();
+ testUser = TestUtils.setupUser("PlanetConfigTest");
+ testPlanet = TestUtils.setupPlanet("PlanetConfigTest");
+ }
+
+ @After
+ public void tearDown() throws Exception {
+ TestUtils.teardownPlanet(testPlanet.getId());
+ TestUtils.teardownUser(testUser.getId());
+ TestUtils.shutdownAggregator();
+ }
+
+
+ /**
+ * Test of save method, of class PlanetConfig.
+ */
+ @Test
+ public void save() throws Exception {
+ System.out.println("save");
+
+ PlanetConfig instance = new PlanetConfig();
+ instance.setPlanetConfig(AggregatorFactory.getAggregator().getConfig());
+ instance.setAuthenticatedUser(testUser);
+ instance.setActionPlanet(testPlanet);
+
+ PlanetConfigBean bean = instance.getBean();
+ bean.setTitle("PlanetConfigTestModified");
+ bean.setDescription("PlanetConfigTestModified");
+
+ // save it
+ instance.save();
+ assertFalse(instance.hasActionErrors());
+
+ // make sure planet was modified
+ TestUtils.endSession(false);
+ Planet planet = TestUtils.getManagedPlanet(testPlanet);
+ assertNotNull(planet);
+ assertEquals("PlanetConfigTestModified", planet.getTitle());
+ assertEquals("PlanetConfigTestModified", planet.getDescription());
+ }
+
+}
Added: roller/planet/core/trunk/test/java/org/apache/roller/planet/ui/struts2/editor/PlanetRemoveTest.java
URL: http://svn.apache.org/viewvc/roller/planet/core/trunk/test/java/org/apache/roller/planet/ui/struts2/editor/PlanetRemoveTest.java?rev=672574&view=auto
==============================================================================
--- roller/planet/core/trunk/test/java/org/apache/roller/planet/ui/struts2/editor/PlanetRemoveTest.java (added)
+++ roller/planet/core/trunk/test/java/org/apache/roller/planet/ui/struts2/editor/PlanetRemoveTest.java Sat Jun 28 12:18:17 2008
@@ -0,0 +1,61 @@
+
+package org.apache.roller.planet.ui.struts2.editor;
+
+import org.apache.roller.planet.TestUtils;
+import org.apache.roller.planet.business.AggregatorFactory;
+import org.apache.roller.planet.pojos.Planet;
+import org.apache.roller.planet.pojos.User;
+import org.junit.After;
+import org.junit.Before;
+import org.junit.Test;
+import static org.junit.Assert.*;
+
+
+/**
+ * Unit test of PlanetRemove struts2 action.
+ *
+ * @author ag92114
+ */
+public class PlanetRemoveTest {
+
+ private User testUser = null;
+ private Planet testPlanet = null;
+
+
+ @Before
+ public void setUp() throws Exception {
+ TestUtils.setupAggregator();
+ testUser = TestUtils.setupUser("PlanetRemoveTest");
+ testPlanet = TestUtils.setupPlanet("PlanetRemoveTest");
+ }
+
+ @After
+ public void tearDown() throws Exception {
+ TestUtils.teardownUser(testUser.getId());
+ TestUtils.shutdownAggregator();
+ }
+
+
+ /**
+ * Test of remove method, of class PlanetRemove.
+ */
+ @Test
+ public void remove() throws Exception {
+ System.out.println("remove");
+
+ PlanetRemove instance = new PlanetRemove();
+ instance.setPlanetConfig(AggregatorFactory.getAggregator().getConfig());
+ instance.setAuthenticatedUser(testUser);
+ instance.setActionPlanet(testPlanet);
+
+ String result = instance.remove();
+ assertEquals(PlanetRemove.SUCCESS, result);
+ assertFalse(instance.hasActionErrors());
+
+ // make sure planet no longer exists
+ TestUtils.endSession(false);
+ Planet planet = TestUtils.getManagedPlanet(testPlanet);
+ assertNull(planet);
+ }
+
+}