[jboss-svn-commits] JBL Code SVN: r28234 - in labs/jbossrules/trunk/drools-guvnor/src: test/java/org/drools/guvnor/server/files and 1 other directory.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Mon Jul 20 03:17:03 EDT 2009
Author: michael.neale at jboss.com
Date: 2009-07-20 03:17:03 -0400 (Mon, 20 Jul 2009)
New Revision: 28234
Modified:
labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/server/util/TestEnvironmentSessionHelper.java
labs/jbossrules/trunk/drools-guvnor/src/test/java/org/drools/guvnor/server/files/PackageDeploymentServletTest.java
labs/jbossrules/trunk/drools-guvnor/src/test/java/org/drools/guvnor/server/files/RestAPIServletTest.java
Log:
yak shaving to get tests to run from maven with later versions of JR
Modified: labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/server/util/TestEnvironmentSessionHelper.java
===================================================================
--- labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/server/util/TestEnvironmentSessionHelper.java 2009-07-20 07:09:15 UTC (rev 28233)
+++ labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/server/util/TestEnvironmentSessionHelper.java 2009-07-20 07:17:03 UTC (rev 28234)
@@ -28,6 +28,7 @@
import org.drools.repository.JackrabbitRepositoryConfigurator;
import org.drools.repository.RepositorySessionUtil;
import org.drools.repository.RulesRepositoryAdministrator;
+import org.apache.jackrabbit.core.TransientRepository;
/**
* This is only to be used for testing, eg in hosted mode, or unit tests.
@@ -36,47 +37,62 @@
*/
public class TestEnvironmentSessionHelper {
-
public static Repository repository;
+ public static Session lastSession;
-
public static Session getSession() throws Exception {
return getSession(true);
}
+ /** Don't use this one unless you plan to close the session yourself in tests... */
+ public static Session getSessionKeepOpen() {
+ return getRepo(true);
+ }
+
+
public static synchronized Session getSession(boolean erase) {
- try {
- if (repository == null) {
+ if (lastSession != null) {
+ lastSession.logout();
+ }
+ lastSession = getRepo(erase);
+ return lastSession;
+ }
- if (erase) {
- File repoDir = new File("repository");
- System.out.println("DELETE test repo dir: " + repoDir.getAbsolutePath());
- RepositorySessionUtil.deleteDir( repoDir );
- System.out.println("TEST repo dir deleted.");
- }
- JCRRepositoryConfigurator config = new JackrabbitRepositoryConfigurator();
+
+
+ private static Session getRepo(boolean erase) {
+ try {
+
+ if (repository == null) {
+ if (erase) {
+ File repoDir = new File("repository");
+ System.out.println("DELETE test repo dir: " + repoDir.getAbsolutePath());
+ RepositorySessionUtil.deleteDir( repoDir );
+ System.out.println("TEST repo dir deleted.");
+ }
+
+ JCRRepositoryConfigurator config = new JackrabbitRepositoryConfigurator();
String home = System.getProperty("guvnor.repository.dir");
- repository = config.getJCRRepository(home);
+ repository = config.getJCRRepository(home);
- Session testSession = repository.login(
- new SimpleCredentials("alan_parsons", "password".toCharArray()));
+ Session testSession = repository.login(
+ new SimpleCredentials("alan_parsons", "password".toCharArray()));
- RulesRepositoryAdministrator admin = new RulesRepositoryAdministrator(testSession);
- if (erase && admin.isRepositoryInitialized()) {
+ RulesRepositoryAdministrator admin = new RulesRepositoryAdministrator(testSession);
+ if (erase && admin.isRepositoryInitialized()) {
- admin.clearRulesRepository( );
- }
- config.setupRulesRepository( testSession );
- return testSession;
- } else {
- return repository.login(
- new SimpleCredentials("alan_parsons", "password".toCharArray()));
- }
- } catch (RepositoryException e) {
- throw new IllegalStateException(e);
- }
+ admin.clearRulesRepository( );
+ }
+ config.setupRulesRepository( testSession );
+ return testSession;
+ } else {
+ return repository.login(new SimpleCredentials("alan_parsons", "password".toCharArray()));
+ }
+ } catch (RepositoryException e) {
+ throw new IllegalStateException(e);
+ }
}
Modified: labs/jbossrules/trunk/drools-guvnor/src/test/java/org/drools/guvnor/server/files/PackageDeploymentServletTest.java
===================================================================
--- labs/jbossrules/trunk/drools-guvnor/src/test/java/org/drools/guvnor/server/files/PackageDeploymentServletTest.java 2009-07-20 07:09:15 UTC (rev 28233)
+++ labs/jbossrules/trunk/drools-guvnor/src/test/java/org/drools/guvnor/server/files/PackageDeploymentServletTest.java 2009-07-20 07:17:03 UTC (rev 28234)
@@ -27,6 +27,8 @@
import org.apache.commons.httpclient.Header;
import org.apache.commons.httpclient.methods.HeadMethod;
+import javax.jcr.Session;
+
public class PackageDeploymentServletTest extends TestCase {
@@ -34,7 +36,7 @@
public void testLoadingRules() throws Exception {
- RulesRepository repo = new RulesRepository( TestEnvironmentSessionHelper.getSession( true ) );
+ RulesRepository repo = new RulesRepository( TestEnvironmentSessionHelper.getSessionKeepOpen() );
ServiceImplementation impl = new ServiceImplementation();
impl.repository = repo;
@@ -250,8 +252,10 @@
server.stop();
+ repo.logout();
+
}
public void testScenarios() throws Exception {
Modified: labs/jbossrules/trunk/drools-guvnor/src/test/java/org/drools/guvnor/server/files/RestAPIServletTest.java
===================================================================
--- labs/jbossrules/trunk/drools-guvnor/src/test/java/org/drools/guvnor/server/files/RestAPIServletTest.java 2009-07-20 07:09:15 UTC (rev 28233)
+++ labs/jbossrules/trunk/drools-guvnor/src/test/java/org/drools/guvnor/server/files/RestAPIServletTest.java 2009-07-20 07:17:03 UTC (rev 28234)
@@ -6,6 +6,7 @@
import java.util.Map;
import javax.servlet.http.HttpServletResponse;
+import javax.jcr.Session;
import junit.framework.TestCase;
@@ -115,7 +116,7 @@
}
public void testPost() throws Exception {
- RulesRepository repo = new RulesRepository( TestEnvironmentSessionHelper.getSession( true ) );
+ RulesRepository repo = new RulesRepository( TestEnvironmentSessionHelper.getSessionKeepOpen() );
PackageItem pkg = repo.createPackage("testPostRestServlet", "");
HashMap<String, String> headers = new HashMap<String, String>() {
@@ -155,10 +156,13 @@
String out = new String(ass2.getBinaryContentAsBytes());
assertEquals("more content", out);
+ repo.logout();
+
}
public void testPut() throws Exception {
- RulesRepository repo = new RulesRepository( TestEnvironmentSessionHelper.getSession( true ) );
+
+ RulesRepository repo = new RulesRepository( TestEnvironmentSessionHelper.getSessionKeepOpen() );
PackageItem pkg = repo.createPackage("testPutRestServlet", "");
AssetItem ass = pkg.addAsset("asset1", "abc");
ass.updateFormat("drl");
@@ -186,11 +190,13 @@
assertEquals("some new content", ass.getContent());
assertEquals(ver + 1, ass.getVersionNumber());
assertEquals("hey ho", ass.getCheckinComment());
+
+ repo.logout();
}
public void testDelete() throws Exception {
- RulesRepository repo = new RulesRepository( TestEnvironmentSessionHelper.getSession( true ) );
+ RulesRepository repo = new RulesRepository( TestEnvironmentSessionHelper.getSessionKeepOpen() );
PackageItem pkg = repo.createPackage("testDeleteRestServlet", "");
AssetItem ass = pkg.addAsset("asset1", "abc");
ass.updateFormat("drl");
@@ -216,6 +222,7 @@
pkg = repo.loadPackage("testDeleteRestServlet");
assertFalse(pkg.listAssetsByFormat(new String[] {"drl"}).hasNext());
+ repo.logout();
}
}
More information about the jboss-svn-commits
mailing list