From: <id...@us...> - 2009-03-10 11:45:56
|
Revision: 74 http://cse-ip.svn.sourceforge.net/cse-ip/?rev=74&view=rev Author: idueppe Date: 2009-03-10 11:45:48 +0000 (Tue, 10 Mar 2009) Log Message: ----------- refactoring of unit tests. Now using test-utitltiy module Modified Paths: -------------- cse-ip/trunk/sandbox/cse-ip/framework/test-utilities/pom.xml cse-ip/trunk/sandbox/cse-ip/framework/test-utilities/src/main/java/de/campussource/cse/common/test/AbstractPersistentUnitTest.java cse-ip/trunk/sandbox/cse-ip/sc-cdmm/pom.xml cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/test/java/de/campussource/cse/cdmm/AccountDaoTest.java cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/test/java/de/campussource/cse/cdmm/CategoryDaoTest.java cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/test/java/de/campussource/cse/cdmm/CourseDaoTest.java cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/test/java/de/campussource/cse/cdmm/RoleDaoTest.java cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/test/java/de/campussource/cse/cdmm/TestXmlConversion.java cse-ip/trunk/sandbox/cse-ip/sc-idmapper/pom.xml cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/test/java/de/campussource/cse/idmapper/ClientObjectDaoTest.java cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/test/java/de/campussource/cse/idmapper/IdMapperBeanTest.java Added Paths: ----------- cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/test/java/de/campussource/cse/idmapper/PersistentUnitConfigurationTest.java cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/test/java/de/campussource/cse/mapper/ cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/test/java/de/campussource/cse/mapper/IdentityMapperTest.java Removed Paths: ------------- cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/test/java/de/campussource/cse/cdmm/AbstractPersistentUnitTest.java cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/test/java/de/campussource/cse/idmapper/PersistentUnitTest.java Modified: cse-ip/trunk/sandbox/cse-ip/framework/test-utilities/pom.xml =================================================================== --- cse-ip/trunk/sandbox/cse-ip/framework/test-utilities/pom.xml 2009-03-10 11:29:58 UTC (rev 73) +++ cse-ip/trunk/sandbox/cse-ip/framework/test-utilities/pom.xml 2009-03-10 11:45:48 UTC (rev 74) @@ -18,7 +18,7 @@ <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> - <scope>test</scope> + <scope>compile</scope> </dependency> <dependency> <groupId>org.easymock</groupId> Modified: cse-ip/trunk/sandbox/cse-ip/framework/test-utilities/src/main/java/de/campussource/cse/common/test/AbstractPersistentUnitTest.java =================================================================== --- cse-ip/trunk/sandbox/cse-ip/framework/test-utilities/src/main/java/de/campussource/cse/common/test/AbstractPersistentUnitTest.java 2009-03-10 11:29:58 UTC (rev 73) +++ cse-ip/trunk/sandbox/cse-ip/framework/test-utilities/src/main/java/de/campussource/cse/common/test/AbstractPersistentUnitTest.java 2009-03-10 11:45:48 UTC (rev 74) @@ -16,6 +16,7 @@ protected static EntityManagerFactory entityManagerFactory; protected EntityManager entityManager; private AnnotationInjector injector; + private static long currentTimeMillis = System.currentTimeMillis(); @BeforeClass public static void retrieveEntityManagerFactory() { @@ -80,5 +81,14 @@ txCommit(); txBegin(); } + + /** + * Convenience method for creating a unique id + * @return unique id + */ + protected Long uniqueId() { + return currentTimeMillis++; + } + } Modified: cse-ip/trunk/sandbox/cse-ip/sc-cdmm/pom.xml =================================================================== --- cse-ip/trunk/sandbox/cse-ip/sc-cdmm/pom.xml 2009-03-10 11:29:58 UTC (rev 73) +++ cse-ip/trunk/sandbox/cse-ip/sc-cdmm/pom.xml 2009-03-10 11:45:48 UTC (rev 74) @@ -16,6 +16,12 @@ <dependencies> <dependency> + <groupId>de.campussource.cse</groupId> + <artifactId>test-utilities</artifactId> + <version>${pom.version}</version> + <scope>test</scope> + </dependency> + <dependency> <groupId>javax.ejb</groupId> <artifactId>ejb-api</artifactId> <version>3.0</version> Deleted: cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/test/java/de/campussource/cse/cdmm/AbstractPersistentUnitTest.java =================================================================== --- cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/test/java/de/campussource/cse/cdmm/AbstractPersistentUnitTest.java 2009-03-10 11:29:58 UTC (rev 73) +++ cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/test/java/de/campussource/cse/cdmm/AbstractPersistentUnitTest.java 2009-03-10 11:45:48 UTC (rev 74) @@ -1,123 +0,0 @@ -package de.campussource.cse.cdmm; - -import java.lang.reflect.Field; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -import javax.ejb.EJB; -import javax.persistence.EntityManager; -import javax.persistence.EntityManagerFactory; -import javax.persistence.Persistence; -import javax.persistence.PersistenceContext; - -import org.junit.After; -import org.junit.AfterClass; -import org.junit.Before; -import org.junit.BeforeClass; - -public abstract class AbstractPersistentUnitTest { - - protected static EntityManagerFactory entityManagerFactory; - static Long currentTimeMillis = System.currentTimeMillis(); - protected EntityManager entityManager; - - @BeforeClass - public static void retrieveEntityManagerFactory() { - entityManagerFactory = Persistence.createEntityManagerFactory("cseip"); - } - - @Before - public void retrieveEntityManager() { - entityManager = entityManagerFactory.createEntityManager(); - } - - @After - public void closeEntity() { - entityManager.close(); - } - - @AfterClass - public static void closeFactory() { - entityManagerFactory.close(); - } - - // FIXME Extract to Util class - private void injectField(Object object, Field field, Object reference) { - boolean accessible = field.isAccessible(); - field.setAccessible(true); - try { - field.set(object, reference); - } catch (IllegalArgumentException e) { - e.printStackTrace(); - } catch (IllegalAccessException e) { - e.printStackTrace(); - } - field.setAccessible(accessible); - } - - // FIXME Extract to Util class - private Map<String, Object> context = new HashMap<String, Object>(); - - // FIXME Extract to Util class - protected void autowireByType(Object object) { - Field[] fields = retrieveAllDeclaredFieldsIncludedInheritance(object); - for (Field field : fields) { - if (field.isAnnotationPresent(PersistenceContext.class)) { - injectField(object, field, entityManager); - } - if (field.isAnnotationPresent(EJB.class)) { - try { - Class fieldClass = field.getType(); - Object target = context.get(fieldClass.getName()); - if (target == null) { - target = fieldClass.newInstance(); - autowireByType(target); - context.put(fieldClass.getName(), target); - } - injectField(object, field, target); - } catch (InstantiationException e) { - e.printStackTrace(); - } catch (IllegalAccessException e) { - e.printStackTrace(); - } - } - } - } - - // FIXME Extract to Util class - private Field[] retrieveAllDeclaredFieldsIncludedInheritance(Object object) { - List<Field> fields = new ArrayList<Field>(); - Class clazz = object.getClass(); - while (clazz != null) { - fields.addAll(Arrays.asList(clazz.getDeclaredFields())); - clazz = clazz.getSuperclass(); - } - - return (Field[]) fields.toArray(new Field[fields.size()]); - } - - protected void txBegin() { - entityManager.getTransaction().begin(); - } - - protected void txCommit() { - entityManager.getTransaction().commit(); - } - - protected void commitAndBeginTx() { - txCommit(); - txBegin(); - } - - /** - * Convenience method for creating a unique id - * @return unique id - */ - protected Long createUniqueId() { - return currentTimeMillis++; - } - -} Modified: cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/test/java/de/campussource/cse/cdmm/AccountDaoTest.java =================================================================== --- cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/test/java/de/campussource/cse/cdmm/AccountDaoTest.java 2009-03-10 11:29:58 UTC (rev 73) +++ cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/test/java/de/campussource/cse/cdmm/AccountDaoTest.java 2009-03-10 11:45:48 UTC (rev 74) @@ -9,6 +9,7 @@ import de.campussource.cse.cdmm.dao.AccountDao; import de.campussource.cse.cdmm.domain.Account; +import de.campussource.cse.common.test.AbstractPersistentUnitTest; public class AccountDaoTest extends AbstractPersistentUnitTest { private AccountDao dao; @@ -56,6 +57,6 @@ } private Account newAccount() { - return new Account(createUniqueId()); + return new Account(uniqueId()); } } Modified: cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/test/java/de/campussource/cse/cdmm/CategoryDaoTest.java =================================================================== --- cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/test/java/de/campussource/cse/cdmm/CategoryDaoTest.java 2009-03-10 11:29:58 UTC (rev 73) +++ cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/test/java/de/campussource/cse/cdmm/CategoryDaoTest.java 2009-03-10 11:45:48 UTC (rev 74) @@ -1,16 +1,17 @@ package de.campussource.cse.cdmm; import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertNull; import static org.junit.Assert.assertTrue; -import static org.junit.Assert.assertFalse; import org.junit.Before; import org.junit.Test; import de.campussource.cse.cdmm.dao.CategoryDao; import de.campussource.cse.cdmm.domain.Category; +import de.campussource.cse.common.test.AbstractPersistentUnitTest; public class CategoryDaoTest extends AbstractPersistentUnitTest{ @@ -105,7 +106,7 @@ private Category newCategory() { - return new Category(createUniqueId()); + return new Category(uniqueId()); } } Modified: cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/test/java/de/campussource/cse/cdmm/CourseDaoTest.java =================================================================== --- cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/test/java/de/campussource/cse/cdmm/CourseDaoTest.java 2009-03-10 11:29:58 UTC (rev 73) +++ cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/test/java/de/campussource/cse/cdmm/CourseDaoTest.java 2009-03-10 11:45:48 UTC (rev 74) @@ -9,6 +9,7 @@ import de.campussource.cse.cdmm.dao.CourseDao; import de.campussource.cse.cdmm.domain.Course; +import de.campussource.cse.common.test.AbstractPersistentUnitTest; public class CourseDaoTest extends AbstractPersistentUnitTest { @@ -76,7 +77,7 @@ * @return course object with unique id */ private Course newCourse() { - return new Course(createUniqueId()); + return new Course(uniqueId()); } } Modified: cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/test/java/de/campussource/cse/cdmm/RoleDaoTest.java =================================================================== --- cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/test/java/de/campussource/cse/cdmm/RoleDaoTest.java 2009-03-10 11:29:58 UTC (rev 73) +++ cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/test/java/de/campussource/cse/cdmm/RoleDaoTest.java 2009-03-10 11:45:48 UTC (rev 74) @@ -14,6 +14,7 @@ import de.campussource.cse.cdmm.domain.Course; import de.campussource.cse.cdmm.domain.Role; import de.campussource.cse.cdmm.domain.RoleType; +import de.campussource.cse.common.test.AbstractPersistentUnitTest; public class RoleDaoTest extends AbstractPersistentUnitTest { private RoleDao dao; @@ -35,8 +36,8 @@ autowireByType(courseDao); autowireByType(accountDao); //create role object with needed dependencies - course = new Course(createUniqueId()); - account = new Account(createUniqueId()); + course = new Course(uniqueId()); + account = new Account(uniqueId()); courseDao.persist(course); accountDao.persist(account); role = newRole(); @@ -77,7 +78,7 @@ } private Role newRole() { - Role role = new Role(createUniqueId()); + Role role = new Role(uniqueId()); role.setAccount(account); role.setCourse(course); role.setType(RoleType.ASSISTANT); Modified: cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/test/java/de/campussource/cse/cdmm/TestXmlConversion.java =================================================================== --- cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/test/java/de/campussource/cse/cdmm/TestXmlConversion.java 2009-03-10 11:29:58 UTC (rev 73) +++ cse-ip/trunk/sandbox/cse-ip/sc-cdmm/src/test/java/de/campussource/cse/cdmm/TestXmlConversion.java 2009-03-10 11:45:48 UTC (rev 74) @@ -6,7 +6,7 @@ import java.io.Writer; import java.util.ArrayList; import java.util.List; - + import javax.xml.bind.JAXBContext; import javax.xml.bind.JAXBException; import javax.xml.bind.Marshaller; @@ -15,14 +15,16 @@ import javax.xml.transform.Result; import javax.xml.transform.dom.DOMResult; +import junit.framework.TestCase; + import org.junit.Test; import org.w3c.dom.Document; import com.sun.org.apache.xml.internal.serialize.OutputFormat; import com.sun.org.apache.xml.internal.serialize.XMLSerializer; -import de.campussource.cse.cdmm.domain.Attribute; import de.campussource.cse.cdmm.domain.Account; +import de.campussource.cse.cdmm.domain.Attribute; import de.campussource.cse.cdmm.domain.Category; import de.campussource.cse.cdmm.domain.Course; import de.campussource.cse.cdmm.domain.EntityContainer; @@ -31,8 +33,6 @@ import de.campussource.cse.cdmm.domain.Role; import de.campussource.cse.cdmm.domain.RoleType; import de.campussource.cse.cdmm.domain.TransientAttribute; - -import junit.framework.TestCase; /** * @author Sebastian Roekens @@ -336,7 +336,6 @@ } - private void printDOMResult(DOMResult domResult) throws IOException{ Document doc = (Document) domResult.getNode(); OutputFormat format = new OutputFormat(doc); Modified: cse-ip/trunk/sandbox/cse-ip/sc-idmapper/pom.xml =================================================================== --- cse-ip/trunk/sandbox/cse-ip/sc-idmapper/pom.xml 2009-03-10 11:29:58 UTC (rev 73) +++ cse-ip/trunk/sandbox/cse-ip/sc-idmapper/pom.xml 2009-03-10 11:45:48 UTC (rev 74) @@ -19,6 +19,7 @@ <groupId>de.campussource.cse</groupId> <artifactId>test-utilities</artifactId> <version>${pom.version}</version> + <scope>test</scope> </dependency> <dependency> <groupId>javax.ejb</groupId> Modified: cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/test/java/de/campussource/cse/idmapper/ClientObjectDaoTest.java =================================================================== --- cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/test/java/de/campussource/cse/idmapper/ClientObjectDaoTest.java 2009-03-10 11:29:58 UTC (rev 73) +++ cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/test/java/de/campussource/cse/idmapper/ClientObjectDaoTest.java 2009-03-10 11:45:48 UTC (rev 74) @@ -13,6 +13,8 @@ import org.junit.Before; import org.junit.Test; +import de.campussource.cse.common.test.AbstractPersistentUnitTest; + public class ClientObjectDaoTest extends AbstractPersistentUnitTest { private ClientObjectDao dao; @@ -30,9 +32,8 @@ public void testPersistClientObject() { dao.persist(clientObject); assertNotNull(clientObject.getId()); - txCommit(); } - + @Test public void testPersistDetachedClientObject() { dao.persist(clientObject); @@ -53,14 +54,14 @@ assertEquals(clientObject, coid); } - @Test(expected=RollbackException.class) + @Test(expected = RollbackException.class) public void testCreateClientObjectUniqueConstraintError() { - ClientInstance instance = createClientInstance("TEST","http://test.de"); - dao.persist(newClientObject("TEST::COURSE::1", 1L, instance )); - dao.persist(newClientObject("TEST::COURSE::1", 1L, instance )); + ClientInstance instance = createClientInstance("TEST", "http://test.de"); + dao.persist(newClientObject("TEST::COURSE::1", 1L, instance)); + dao.persist(newClientObject("TEST::COURSE::1", 1L, instance)); txCommit(); } - + @Test public void testRemoveClientObject() { dao.persist(clientObject); @@ -70,7 +71,7 @@ commitAndBeginTx(); assertNull(dao.find(clientObject.getId())); } - + @Test public void testFindByBusIdAndInstanceId() { dao.persist(clientObject); @@ -83,26 +84,25 @@ assertEquals(instanceId, object.getInstanceId()); assertEquals(clientObject.getClientObjectId(), object.getClientObjectId()); } - - @Test(expected=javax.persistence.NoResultException.class) + + @Test(expected = javax.persistence.NoResultException.class) public void testDoNotFindByBusIsAndInstanceId() { dao.findByBusIdAndInstanceId(-1L, -1L); } - + @Test public void testFindByClientObjectIdAndInstanceId() { dao.persist(clientObject); commitAndBeginTx(); String coid = clientObject.getClientObjectId(); Long instanceId = clientObject.getInstanceId(); - - ClientObject object = dao.findByClientObjectIdAndInstanceId(coid,instanceId); + + ClientObject object = dao.findByClientObjectIdAndInstanceId(coid, instanceId); assertNotNull(object); assertEquals(clientObject.getBusId(), object.getBusId()); assertEquals(clientObject.getClientObjectId(), object.getClientObjectId()); assertEquals(clientObject.getInstanceId(), object.getInstanceId()); } - private ClientInstance createClientInstance(final String name, final String url) { try { @@ -114,11 +114,11 @@ } private ClientObject newClientObject(final String COID, final long BUS_ID, ClientInstance... instance) { - if (instance.length > 0) { - return new ClientObject(BUS_ID, COID, instance[0]); - } else { - return new ClientObject(BUS_ID, COID, createClientInstance("default","http://www.default.de")); - } + if (instance.length > 0) { + return new ClientObject(BUS_ID, COID, instance[0]); + } else { + return new ClientObject(BUS_ID, COID, createClientInstance("default", "http://www.default.de")); + } } } Modified: cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/test/java/de/campussource/cse/idmapper/IdMapperBeanTest.java =================================================================== --- cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/test/java/de/campussource/cse/idmapper/IdMapperBeanTest.java 2009-03-10 11:29:58 UTC (rev 73) +++ cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/test/java/de/campussource/cse/idmapper/IdMapperBeanTest.java 2009-03-10 11:45:48 UTC (rev 74) @@ -8,6 +8,8 @@ import org.junit.Before; import org.junit.Test; +import de.campussource.cse.common.test.AbstractPersistentUnitTest; + public class IdMapperBeanTest extends AbstractPersistentUnitTest { private IdMapperBean mapper; Copied: cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/test/java/de/campussource/cse/idmapper/PersistentUnitConfigurationTest.java (from rev 68, cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/test/java/de/campussource/cse/idmapper/PersistentUnitTest.java) =================================================================== --- cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/test/java/de/campussource/cse/idmapper/PersistentUnitConfigurationTest.java (rev 0) +++ cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/test/java/de/campussource/cse/idmapper/PersistentUnitConfigurationTest.java 2009-03-10 11:45:48 UTC (rev 74) @@ -0,0 +1,32 @@ +package de.campussource.cse.idmapper; + +import static org.junit.Assert.assertNotNull; + +import java.util.List; + +import javax.persistence.EntityManager; +import javax.persistence.EntityManagerFactory; +import javax.persistence.Persistence; + +import org.junit.Test; + +public class PersistentUnitConfigurationTest { + + @Test + public void testConfiguration() { + try { + EntityManagerFactory entityManagerFactory = Persistence.createEntityManagerFactory("cseip"); + EntityManager entityManager = entityManagerFactory.createEntityManager(); + + List<ClientInstance> mappings = entityManager.createQuery("SELECT m FROM ClientInstance m").getResultList(); + assertNotNull(mappings); + + entityManager.close(); + entityManagerFactory.close(); + } catch (RuntimeException rt) { + rt.printStackTrace(); + throw rt; + } + } + +} Property changes on: cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/test/java/de/campussource/cse/idmapper/PersistentUnitConfigurationTest.java ___________________________________________________________________ Added: svn:mime-type + text/plain Deleted: cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/test/java/de/campussource/cse/idmapper/PersistentUnitTest.java =================================================================== --- cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/test/java/de/campussource/cse/idmapper/PersistentUnitTest.java 2009-03-10 11:29:58 UTC (rev 73) +++ cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/test/java/de/campussource/cse/idmapper/PersistentUnitTest.java 2009-03-10 11:45:48 UTC (rev 74) @@ -1,20 +0,0 @@ -package de.campussource.cse.idmapper; - - -import static org.junit.Assert.assertNotNull; - -import java.util.List; - - -import org.junit.Test; - - -public class PersistentUnitTest extends AbstractPersistentUnitTest { - - @Test - public void testConfiguration() { - List<ClientInstance> mappings = entityManager.createQuery("SELECT m FROM ClientInstance m").getResultList(); - assertNotNull(mappings); - } - -} Added: cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/test/java/de/campussource/cse/mapper/IdentityMapperTest.java =================================================================== --- cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/test/java/de/campussource/cse/mapper/IdentityMapperTest.java (rev 0) +++ cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/test/java/de/campussource/cse/mapper/IdentityMapperTest.java 2009-03-10 11:45:48 UTC (rev 74) @@ -0,0 +1,21 @@ +package de.campussource.cse.mapper; + +import static org.junit.Assert.assertEquals; + +import java.net.MalformedURLException; +import java.net.URL; + +import org.junit.Before; +import org.junit.Test; + +import de.campussource.cse.idmapper.ClientInstance; +import de.campussource.cse.idmapper.IdMapperBean; + + +public class IdentityMapperTest { + @Test + public void testPersistClientObjectId() throws MalformedURLException { + } + + +} Property changes on: cse-ip/trunk/sandbox/cse-ip/sc-idmapper/src/test/java/de/campussource/cse/mapper/IdentityMapperTest.java ___________________________________________________________________ Added: svn:mime-type + text/plain This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |