You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@continuum.apache.org by ca...@apache.org on 2006/09/13 00:10:21 UTC
svn commit: r442733 - in /maven/continuum/branches/continuum-acegi:
continuum-core/src/main/java/org/apache/maven/continuum/
continuum-core/src/main/java/org/apache/maven/continuum/initialization/
continuum-core/src/test/java/org/apache/maven/continuum...
Author: carlos
Date: Tue Sep 12 15:10:20 2006
New Revision: 442733
URL: http://svn.apache.org/viewvc?view=rev&rev=442733
Log:
Fix test problems with the default project group add
Modified:
maven/continuum/branches/continuum-acegi/continuum-core/src/main/java/org/apache/maven/continuum/DefaultContinuum.java
maven/continuum/branches/continuum-acegi/continuum-core/src/main/java/org/apache/maven/continuum/initialization/DefaultContinuumInitializer.java
maven/continuum/branches/continuum-acegi/continuum-core/src/test/java/org/apache/maven/continuum/DefaultContinuumTest.java
maven/continuum/branches/continuum-acegi/continuum-security/continuum-security-acegi/src/main/java/org/apache/maven/continuum/security/acegi/acl/AclInitializer.java
maven/continuum/branches/continuum-acegi/continuum-security/continuum-security-acegi/src/test/java/org/apache/maven/continuum/security/acegi/acl/AclInitializerPlexusTest.java
maven/continuum/branches/continuum-acegi/continuum-security/continuum-security-acegi/src/test/java/org/apache/maven/continuum/security/acegi/acl/AclInitializerTest.java
maven/continuum/branches/continuum-acegi/continuum-security/continuum-security-acegi/src/test/resources/org/apache/maven/continuum/security/acegi/acl/AclInitializerPlexusTest.xml
maven/continuum/branches/continuum-acegi/continuum-test/src/main/java/org/apache/maven/continuum/AbstractContinuumTest.java
Modified: maven/continuum/branches/continuum-acegi/continuum-core/src/main/java/org/apache/maven/continuum/DefaultContinuum.java
URL: http://svn.apache.org/viewvc/maven/continuum/branches/continuum-acegi/continuum-core/src/main/java/org/apache/maven/continuum/DefaultContinuum.java?view=diff&rev=442733&r1=442732&r2=442733
==============================================================================
--- maven/continuum/branches/continuum-acegi/continuum-core/src/main/java/org/apache/maven/continuum/DefaultContinuum.java (original)
+++ maven/continuum/branches/continuum-acegi/continuum-core/src/main/java/org/apache/maven/continuum/DefaultContinuum.java Tue Sep 12 15:10:20 2006
@@ -2557,7 +2557,7 @@
{
try
{
- return store.getProjectGroupByGroupId( Continuum.DEFAULT_PROJECT_GROUP_GROUP_ID );
+ return store.getProjectGroupByGroupIdWithProjects( Continuum.DEFAULT_PROJECT_GROUP_GROUP_ID );
}
catch ( ContinuumObjectNotFoundException e )
{
Modified: maven/continuum/branches/continuum-acegi/continuum-core/src/main/java/org/apache/maven/continuum/initialization/DefaultContinuumInitializer.java
URL: http://svn.apache.org/viewvc/maven/continuum/branches/continuum-acegi/continuum-core/src/main/java/org/apache/maven/continuum/initialization/DefaultContinuumInitializer.java?view=diff&rev=442733&r1=442732&r2=442733
==============================================================================
--- maven/continuum/branches/continuum-acegi/continuum-core/src/main/java/org/apache/maven/continuum/initialization/DefaultContinuumInitializer.java (original)
+++ maven/continuum/branches/continuum-acegi/continuum-core/src/main/java/org/apache/maven/continuum/initialization/DefaultContinuumInitializer.java Tue Sep 12 15:10:20 2006
@@ -27,6 +27,7 @@
import org.apache.maven.continuum.model.system.SystemConfiguration;
import org.apache.maven.continuum.model.system.UserGroup;
import org.apache.maven.continuum.security.ContinuumSecurity;
+import org.apache.maven.continuum.store.ContinuumObjectNotFoundException;
import org.apache.maven.continuum.store.ContinuumStore;
import org.apache.maven.continuum.store.ContinuumStoreException;
import org.apache.maven.user.model.PasswordRuleViolationException;
@@ -315,15 +316,24 @@
}
private void createDefaultProjectGroup()
+ throws ContinuumStoreException
{
- ProjectGroup group = new ProjectGroup();
+ ProjectGroup group;
+ try
+ {
+ group = store.getProjectGroupByGroupId( Continuum.DEFAULT_PROJECT_GROUP_GROUP_ID );
+ }
+ catch ( ContinuumObjectNotFoundException e )
+ {
+ group = new ProjectGroup();
- group.setName( "Default Project Group" );
+ group.setName( "Default Project Group" );
- group.setGroupId( Continuum.DEFAULT_PROJECT_GROUP_GROUP_ID );
+ group.setGroupId( Continuum.DEFAULT_PROJECT_GROUP_GROUP_ID );
- group.setDescription( "Contains all projects that do not have a group of their own" );
+ group.setDescription( "Contains all projects that do not have a group of their own" );
- group = store.addProjectGroup( group );
+ group = store.addProjectGroup( group );
+ }
}
}
Modified: maven/continuum/branches/continuum-acegi/continuum-core/src/test/java/org/apache/maven/continuum/DefaultContinuumTest.java
URL: http://svn.apache.org/viewvc/maven/continuum/branches/continuum-acegi/continuum-core/src/test/java/org/apache/maven/continuum/DefaultContinuumTest.java?view=diff&rev=442733&r1=442732&r2=442733
==============================================================================
--- maven/continuum/branches/continuum-acegi/continuum-core/src/test/java/org/apache/maven/continuum/DefaultContinuumTest.java (original)
+++ maven/continuum/branches/continuum-acegi/continuum-core/src/test/java/org/apache/maven/continuum/DefaultContinuumTest.java Tue Sep 12 15:10:20 2006
@@ -219,21 +219,28 @@
{
Continuum continuum = (Continuum) lookup( Continuum.ROLE );
+ Collection projectGroupList = continuum.getAllProjectGroupsWithProjects();
+
+ int projectGroupsBefore = projectGroupList.size();
+
+ assertEquals( 1, projectGroupsBefore );
+
String url = getTestFile( "src/test-projects/project1/pom.xml" ).toURL().toExternalForm();
ContinuumProjectBuildingResult result = continuum.addMavenTwoProject( url );
assertNotNull( result );
-
+
assertEquals( 1, result.getProjectGroups().size() );
-
+
ProjectGroup projectGroup = (ProjectGroup) result.getProjectGroups().get( 0 );
- assertEquals( 1, projectGroup.getId() );
+ assertEquals( "plexus", projectGroup.getGroupId() );
- Collection projectGroupList = continuum.getAllProjectGroupsWithProjects();
+ projectGroupList = continuum.getAllProjectGroupsWithProjects();
- assertEquals( "Project group missing, should have two project groups", 1, projectGroupList.size() );
+ assertEquals( "Project group missing, should have " + ( projectGroupsBefore + 1 ) + " project groups",
+ projectGroupsBefore + 1, projectGroupList.size() );
projectGroup = (ProjectGroup) projectGroupList.iterator().next();
@@ -243,6 +250,6 @@
projectGroupList = continuum.getAllProjectGroupsWithProjects();
- assertEquals ( "Remove project group failed", 0, projectGroupList.size() );
+ assertEquals( "Remove project group failed", projectGroupsBefore, projectGroupList.size() );
}
}
Modified: maven/continuum/branches/continuum-acegi/continuum-security/continuum-security-acegi/src/main/java/org/apache/maven/continuum/security/acegi/acl/AclInitializer.java
URL: http://svn.apache.org/viewvc/maven/continuum/branches/continuum-acegi/continuum-security/continuum-security-acegi/src/main/java/org/apache/maven/continuum/security/acegi/acl/AclInitializer.java?view=diff&rev=442733&r1=442732&r2=442733
==============================================================================
--- maven/continuum/branches/continuum-acegi/continuum-security/continuum-security-acegi/src/main/java/org/apache/maven/continuum/security/acegi/acl/AclInitializer.java (original)
+++ maven/continuum/branches/continuum-acegi/continuum-security/continuum-security-acegi/src/main/java/org/apache/maven/continuum/security/acegi/acl/AclInitializer.java Tue Sep 12 15:10:20 2006
@@ -39,6 +39,16 @@
*/
private ContinuumStore store;
+ public void setStore( ContinuumStore store )
+ {
+ this.store = store;
+ }
+
+ public ContinuumStore getStore()
+ {
+ return store;
+ }
+
protected void insertDefaultData()
{
/*
@@ -57,7 +67,7 @@
ProjectGroup defaultProjectGroup;
try
{
- defaultProjectGroup = store.getProjectGroupByGroupId( Continuum.DEFAULT_PROJECT_GROUP_GROUP_ID );
+ defaultProjectGroup = getStore().getProjectGroupByGroupId( Continuum.DEFAULT_PROJECT_GROUP_GROUP_ID );
}
catch ( ContinuumStoreException e )
{
Modified: maven/continuum/branches/continuum-acegi/continuum-security/continuum-security-acegi/src/test/java/org/apache/maven/continuum/security/acegi/acl/AclInitializerPlexusTest.java
URL: http://svn.apache.org/viewvc/maven/continuum/branches/continuum-acegi/continuum-security/continuum-security-acegi/src/test/java/org/apache/maven/continuum/security/acegi/acl/AclInitializerPlexusTest.java?view=diff&rev=442733&r1=442732&r2=442733
==============================================================================
--- maven/continuum/branches/continuum-acegi/continuum-security/continuum-security-acegi/src/test/java/org/apache/maven/continuum/security/acegi/acl/AclInitializerPlexusTest.java (original)
+++ maven/continuum/branches/continuum-acegi/continuum-security/continuum-security-acegi/src/test/java/org/apache/maven/continuum/security/acegi/acl/AclInitializerPlexusTest.java Tue Sep 12 15:10:20 2006
@@ -16,6 +16,9 @@
* limitations under the License.
*/
+import org.apache.maven.continuum.Continuum;
+import org.apache.maven.continuum.model.project.ProjectGroup;
+import org.apache.maven.continuum.store.ContinuumStore;
import org.codehaus.plexus.PlexusTestCase;
/**
@@ -34,7 +37,14 @@
throws Exception
{
super.setUp();
+ ContinuumStore store = (ContinuumStore) super.lookup( ContinuumStore.ROLE );
+
+ ProjectGroup projectGroup = new ProjectGroup();
+ projectGroup.setGroupId( Continuum.DEFAULT_PROJECT_GROUP_GROUP_ID );
+ store.addProjectGroup( projectGroup );
+
initializer = (AclInitializer) super.lookup( AclInitializer.ROLE );
+
}
public void testInitialize()
Modified: maven/continuum/branches/continuum-acegi/continuum-security/continuum-security-acegi/src/test/java/org/apache/maven/continuum/security/acegi/acl/AclInitializerTest.java
URL: http://svn.apache.org/viewvc/maven/continuum/branches/continuum-acegi/continuum-security/continuum-security-acegi/src/test/java/org/apache/maven/continuum/security/acegi/acl/AclInitializerTest.java?view=diff&rev=442733&r1=442732&r2=442733
==============================================================================
--- maven/continuum/branches/continuum-acegi/continuum-security/continuum-security-acegi/src/test/java/org/apache/maven/continuum/security/acegi/acl/AclInitializerTest.java (original)
+++ maven/continuum/branches/continuum-acegi/continuum-security/continuum-security-acegi/src/test/java/org/apache/maven/continuum/security/acegi/acl/AclInitializerTest.java Tue Sep 12 15:10:20 2006
@@ -18,13 +18,15 @@
import javax.sql.DataSource;
-import junit.framework.TestCase;
-
import org.acegisecurity.acl.basic.jdbc.JdbcExtendedDaoImpl;
import org.apache.commons.dbcp.BasicDataSource;
+import org.apache.maven.continuum.model.project.ProjectGroup;
+import org.apache.maven.continuum.store.ContinuumStore;
import org.codehaus.mojo.sql.SqlExecMojo;
import org.codehaus.plexus.logging.Logger;
import org.codehaus.plexus.logging.console.ConsoleLogger;
+import org.jmock.Mock;
+import org.jmock.MockObjectTestCase;
/**
* Test for {@link AclInitializer}
@@ -33,13 +35,15 @@
* @version $Id$
*/
public class AclInitializerTest
- extends TestCase
+ extends MockObjectTestCase
{
private AclInitializer initializer;
-
+
private SqlExecMojo sqlMojo;
+ private Mock store;
+
protected void setUp()
throws Exception
{
@@ -59,11 +63,17 @@
JdbcExtendedDaoImpl dao = new JdbcExtendedDaoImpl();
dao.setDataSource( getDataSource() );
initializer.setDao( dao );
+
+ store = mock( ContinuumStore.class );
+ initializer.setStore( (ContinuumStore) store.proxy() );
}
public void testInitialize()
throws Exception
{
+ ProjectGroup parentGroup = new ProjectGroup();
+ parentGroup.setId( 1 );
+ store.expects( once() ).method( "getProjectGroupByGroupId" ).will( returnValue( parentGroup ) );
initializer.initialize();
initializer.initialize();
}
Modified: maven/continuum/branches/continuum-acegi/continuum-security/continuum-security-acegi/src/test/resources/org/apache/maven/continuum/security/acegi/acl/AclInitializerPlexusTest.xml
URL: http://svn.apache.org/viewvc/maven/continuum/branches/continuum-acegi/continuum-security/continuum-security-acegi/src/test/resources/org/apache/maven/continuum/security/acegi/acl/AclInitializerPlexusTest.xml?view=diff&rev=442733&r1=442732&r2=442733
==============================================================================
--- maven/continuum/branches/continuum-acegi/continuum-security/continuum-security-acegi/src/test/resources/org/apache/maven/continuum/security/acegi/acl/AclInitializerPlexusTest.xml (original)
+++ maven/continuum/branches/continuum-acegi/continuum-security/continuum-security-acegi/src/test/resources/org/apache/maven/continuum/security/acegi/acl/AclInitializerPlexusTest.xml Tue Sep 12 15:10:20 2006
@@ -14,6 +14,10 @@
<role>org.acegisecurity.acl.basic.BasicAclExtendedDao</role>
<field-name>dao</field-name>
</requirement>
+ <requirement>
+ <role>org.apache.maven.continuum.store.ContinuumStore</role>
+ <field-name>store</field-name>
+ </requirement>
</requirements>
<configuration>
<sqlClasspathResource>org/apache/maven/user/acegi/acl/acegi-acl-derby.sql</sqlClasspathResource>
@@ -51,6 +55,50 @@
<driver>org.apache.derby.jdbc.EmbeddedDriver</driver>
<url>jdbc:derby:${plexus.home}/database;create=true</url>
<onError>continue</onError>
+ </configuration>
+ </component>
+
+ <component>
+ <role>org.codehaus.plexus.jdo.JdoFactory</role>
+ <implementation>org.codehaus.plexus.jdo.DefaultConfigurableJdoFactory</implementation>
+ <configuration>
+ <driverName>org.apache.derby.jdbc.EmbeddedDriver</driverName>
+ <url>jdbc:derby:${plexus.home}/database;create=true</url>
+ <userName>sa</userName>
+ <password></password>
+
+ <!-- JPOX and JDO configuration -->
+ <persistenceManagerFactoryClass>org.jpox.PersistenceManagerFactoryImpl</persistenceManagerFactoryClass>
+ <otherProperties>
+ <property>
+ <name>org.jpox.autoCreateSchema</name>
+ <value>true</value>
+ </property>
+ <property>
+ <name>org.jpox.autoStartMechanism</name>
+ <value>SchemaTable</value>
+ </property>
+ <property>
+ <name>org.jpox.autoStartMechanismMode</name>
+ <value>Ignored</value>
+ </property>
+ <property>
+ <name>org.jpox.validateTables</name>
+ <value>false</value>
+ </property>
+ <property>
+ <name>org.jpox.validateConstraints</name>
+ <value>false</value>
+ </property>
+ <property>
+ <name>org.jpox.transactionIsolation</name>
+ <value>READ_UNCOMMITTED</value>
+ </property>
+ <property>
+ <name>org.jpox.poid.transactionIsolation</name>
+ <value>READ_UNCOMMITTED</value>
+ </property>
+ </otherProperties>
</configuration>
</component>
Modified: maven/continuum/branches/continuum-acegi/continuum-test/src/main/java/org/apache/maven/continuum/AbstractContinuumTest.java
URL: http://svn.apache.org/viewvc/maven/continuum/branches/continuum-acegi/continuum-test/src/main/java/org/apache/maven/continuum/AbstractContinuumTest.java?view=diff&rev=442733&r1=442732&r2=442733
==============================================================================
--- maven/continuum/branches/continuum-acegi/continuum-test/src/main/java/org/apache/maven/continuum/AbstractContinuumTest.java (original)
+++ maven/continuum/branches/continuum-acegi/continuum-test/src/main/java/org/apache/maven/continuum/AbstractContinuumTest.java Tue Sep 12 15:10:20 2006
@@ -23,6 +23,7 @@
import org.apache.maven.continuum.model.project.ProjectGroup;
import org.apache.maven.continuum.model.project.ProjectNotifier;
import org.apache.maven.continuum.model.scm.ScmResult;
+import org.apache.maven.continuum.store.ContinuumObjectNotFoundException;
import org.apache.maven.continuum.store.ContinuumStore;
import org.apache.maven.continuum.store.ContinuumStoreException;
import org.codehaus.plexus.PlexusTestCase;
@@ -36,6 +37,7 @@
import java.net.URL;
import java.util.ArrayList;
+import java.util.Collection;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
@@ -62,6 +64,38 @@
getStore();
setUpConfigurationService( (ConfigurationService) lookup( ConfigurationService.ROLE ) );
+
+ Collection projectGroups = store.getAllProjectGroupsWithProjects();
+
+ assertEquals( 0, projectGroups.size() );
+
+ createDefaultProjectGroup();
+
+ projectGroups = store.getAllProjectGroupsWithProjects();
+
+ assertEquals( 1, projectGroups.size() );
+ }
+
+ protected void createDefaultProjectGroup()
+ throws Exception
+ {
+ ProjectGroup group;
+ try
+ {
+ group = getDefaultProjectGroup();
+ }
+ catch ( ContinuumObjectNotFoundException e )
+ {
+ group = new ProjectGroup();
+
+ group.setName( "Default Project Group" );
+
+ group.setGroupId( Continuum.DEFAULT_PROJECT_GROUP_GROUP_ID );
+
+ group.setDescription( "Contains all projects that do not have a group of their own" );
+
+ group = store.addProjectGroup( group );
+ }
}
public static void setUpConfigurationService( ConfigurationService configurationService )
@@ -79,7 +113,7 @@
protected ProjectGroup getDefaultProjectGroup()
throws ContinuumStoreException
{
- return store.getProjectGroupByGroupId( Continuum.DEFAULT_PROJECT_GROUP_GROUP_ID );
+ return store.getProjectGroupByGroupIdWithProjects( Continuum.DEFAULT_PROJECT_GROUP_GROUP_ID );
}
// ----------------------------------------------------------------------