r2943 - in trunk/topia-it/src: main/java/org/nuiton/topia/it/legacy main/xmi test/java/org/nuiton/topia/it
Author: tchemit Date: 2013-12-19 22:23:49 +0100 (Thu, 19 Dec 2013) New Revision: 2943 Url: http://nuiton.org/projects/topia/repository/revisions/2943 Log: refs #2974: Be able to specify a super class for any generated class (test it) Added: trunk/topia-it/src/main/java/org/nuiton/topia/it/legacy/AbstractTopiaTestApplicationContext.java trunk/topia-it/src/main/java/org/nuiton/topia/it/legacy/AbstractTopiaTestDao.java trunk/topia-it/src/main/java/org/nuiton/topia/it/legacy/AbstractTopiaTestEntity.java trunk/topia-it/src/main/java/org/nuiton/topia/it/legacy/AbstractTopiaTestPersistenceContext.java trunk/topia-it/src/main/java/org/nuiton/topia/it/legacy/TopiaTestApplicationContext.java trunk/topia-it/src/main/java/org/nuiton/topia/it/legacy/TopiaTestPersistenceContext.java trunk/topia-it/src/test/java/org/nuiton/topia/it/GenerateTest.java Modified: trunk/topia-it/src/main/xmi/topiatest.properties Added: trunk/topia-it/src/main/java/org/nuiton/topia/it/legacy/AbstractTopiaTestApplicationContext.java =================================================================== --- trunk/topia-it/src/main/java/org/nuiton/topia/it/legacy/AbstractTopiaTestApplicationContext.java (rev 0) +++ trunk/topia-it/src/main/java/org/nuiton/topia/it/legacy/AbstractTopiaTestApplicationContext.java 2013-12-19 21:23:49 UTC (rev 2943) @@ -0,0 +1,22 @@ +package org.nuiton.topia.it.legacy; + +import org.nuiton.topia.AbstractTopiaApplicationContext; + +import java.util.Map; +import java.util.Properties; + +/** + * Created on 12/19/13. + * + * @author Tony Chemit <chemit@codelutin.com> + * @since 3.0 + */ +public abstract class AbstractTopiaTestApplicationContext<E extends AbstractTopiaTestPersistenceContext> extends AbstractTopiaApplicationContext<E> { + protected AbstractTopiaTestApplicationContext(Properties properties) { + super(properties); + } + + protected AbstractTopiaTestApplicationContext(Map<String, String> configuration) { + super(configuration); + } +} Property changes on: trunk/topia-it/src/main/java/org/nuiton/topia/it/legacy/AbstractTopiaTestApplicationContext.java ___________________________________________________________________ Added: svn:keywords + Author Date Id Revision Added: svn:eol-style + native Added: trunk/topia-it/src/main/java/org/nuiton/topia/it/legacy/AbstractTopiaTestDao.java =================================================================== --- trunk/topia-it/src/main/java/org/nuiton/topia/it/legacy/AbstractTopiaTestDao.java (rev 0) +++ trunk/topia-it/src/main/java/org/nuiton/topia/it/legacy/AbstractTopiaTestDao.java 2013-12-19 21:23:49 UTC (rev 2943) @@ -0,0 +1,13 @@ +package org.nuiton.topia.it.legacy; + +import org.nuiton.topia.persistence.AbstractTopiaDao; +import org.nuiton.topia.persistence.TopiaEntity; + +/** + * Created on 12/19/13. + * + * @author Tony Chemit <chemit@codelutin.com> + * @since 3.0 + */ +public abstract class AbstractTopiaTestDao<E extends TopiaEntity> extends AbstractTopiaDao<E> { +} Property changes on: trunk/topia-it/src/main/java/org/nuiton/topia/it/legacy/AbstractTopiaTestDao.java ___________________________________________________________________ Added: svn:keywords + Author Date Id Revision Added: svn:eol-style + native Added: trunk/topia-it/src/main/java/org/nuiton/topia/it/legacy/AbstractTopiaTestEntity.java =================================================================== --- trunk/topia-it/src/main/java/org/nuiton/topia/it/legacy/AbstractTopiaTestEntity.java (rev 0) +++ trunk/topia-it/src/main/java/org/nuiton/topia/it/legacy/AbstractTopiaTestEntity.java 2013-12-19 21:23:49 UTC (rev 2943) @@ -0,0 +1,13 @@ +package org.nuiton.topia.it.legacy; + +import org.nuiton.topia.persistence.TopiaEntityAbstract; + +/** + * Created on 12/19/13. + * + * @author Tony Chemit <chemit@codelutin.com> + * @since 3.0 + */ +public abstract class AbstractTopiaTestEntity extends TopiaEntityAbstract { + private static final long serialVersionUID = 1L; +} Property changes on: trunk/topia-it/src/main/java/org/nuiton/topia/it/legacy/AbstractTopiaTestEntity.java ___________________________________________________________________ Added: svn:keywords + Author Date Id Revision Added: svn:eol-style + native Added: trunk/topia-it/src/main/java/org/nuiton/topia/it/legacy/AbstractTopiaTestPersistenceContext.java =================================================================== --- trunk/topia-it/src/main/java/org/nuiton/topia/it/legacy/AbstractTopiaTestPersistenceContext.java (rev 0) +++ trunk/topia-it/src/main/java/org/nuiton/topia/it/legacy/AbstractTopiaTestPersistenceContext.java 2013-12-19 21:23:49 UTC (rev 2943) @@ -0,0 +1,20 @@ +package org.nuiton.topia.it.legacy; + +import org.nuiton.topia.AbstractTopiaPersistenceContext; +import org.nuiton.topia.TopiaListenableSupport; +import org.nuiton.topia.persistence.HibernateProvider; +import org.nuiton.topia.persistence.TopiaHibernateSessionRegistry; +import org.nuiton.topia.persistence.TopiaIdFactory; + +/** + * Created on 12/19/13. + * + * @author Tony Chemit <chemit@codelutin.com> + * @since 3.0 + */ +public abstract class AbstractTopiaTestPersistenceContext extends AbstractTopiaPersistenceContext { + + protected AbstractTopiaTestPersistenceContext(HibernateProvider hibernateProvider, TopiaListenableSupport listenableSupport, TopiaIdFactory topiaIdFactory, TopiaHibernateSessionRegistry sessionRegistry) { + super(hibernateProvider, listenableSupport, topiaIdFactory, sessionRegistry); + } +} Property changes on: trunk/topia-it/src/main/java/org/nuiton/topia/it/legacy/AbstractTopiaTestPersistenceContext.java ___________________________________________________________________ Added: svn:keywords + Author Date Id Revision Added: svn:eol-style + native Added: trunk/topia-it/src/main/java/org/nuiton/topia/it/legacy/TopiaTestApplicationContext.java =================================================================== --- trunk/topia-it/src/main/java/org/nuiton/topia/it/legacy/TopiaTestApplicationContext.java (rev 0) +++ trunk/topia-it/src/main/java/org/nuiton/topia/it/legacy/TopiaTestApplicationContext.java 2013-12-19 21:23:49 UTC (rev 2943) @@ -0,0 +1,11 @@ +package org.nuiton.topia.it.legacy; + +/** + * Created on 12/19/13. + * + * @author Tony Chemit <chemit@codelutin.com> + * @since 3.0 + */ +public interface TopiaTestApplicationContext { + +} Property changes on: trunk/topia-it/src/main/java/org/nuiton/topia/it/legacy/TopiaTestApplicationContext.java ___________________________________________________________________ Added: svn:keywords + Author Date Id Revision Added: svn:eol-style + native Added: trunk/topia-it/src/main/java/org/nuiton/topia/it/legacy/TopiaTestPersistenceContext.java =================================================================== --- trunk/topia-it/src/main/java/org/nuiton/topia/it/legacy/TopiaTestPersistenceContext.java (rev 0) +++ trunk/topia-it/src/main/java/org/nuiton/topia/it/legacy/TopiaTestPersistenceContext.java 2013-12-19 21:23:49 UTC (rev 2943) @@ -0,0 +1,11 @@ +package org.nuiton.topia.it.legacy; + +/** + * Created on 12/19/13. + * + * @author Tony Chemit <chemit@codelutin.com> + * @since 3.0 + */ +public interface TopiaTestPersistenceContext { + +} Property changes on: trunk/topia-it/src/main/java/org/nuiton/topia/it/legacy/TopiaTestPersistenceContext.java ___________________________________________________________________ Added: svn:keywords + Author Date Id Revision Added: svn:eol-style + native Modified: trunk/topia-it/src/main/xmi/topiatest.properties =================================================================== --- trunk/topia-it/src/main/xmi/topiatest.properties 2013-12-19 21:23:21 UTC (rev 2942) +++ trunk/topia-it/src/main/xmi/topiatest.properties 2013-12-19 21:23:49 UTC (rev 2943) @@ -26,6 +26,10 @@ model.tagvalue.generateOperatorForDAOHelper=true model.tagvalue.constantPrefix=PROPERTY_ model.tagvalue.generateDTOTopiaId=true +model.tagValue.applicationContextSuperClass=org.nuiton.topia.it.legacy.AbstractTopiaTestApplicationContext +model.tagValue.persistenceContextSuperClass=org.nuiton.topia.it.legacy.AbstractTopiaTestPersistenceContext +model.tagValue.daoSuperClass=org.nuiton.topia.it.legacy.AbstractTopiaTestDao +model.tagValue.entitySuperClass=org.nuiton.topia.it.legacy.AbstractTopiaTestEntity #org.nuiton.topia.it.legacy.topiatest.Company.class.tagvalue.naturalIdMutable=false #org.nuiton.topia.it.legacy.topiatest.Company.attribute.siret.tagvalue.naturalId=true Added: trunk/topia-it/src/test/java/org/nuiton/topia/it/GenerateTest.java =================================================================== --- trunk/topia-it/src/test/java/org/nuiton/topia/it/GenerateTest.java (rev 0) +++ trunk/topia-it/src/test/java/org/nuiton/topia/it/GenerateTest.java 2013-12-19 21:23:49 UTC (rev 2943) @@ -0,0 +1,72 @@ +package org.nuiton.topia.it; + +import org.junit.Assert; +import org.junit.Test; +import org.nuiton.topia.it.legacy.AbstractTopiaTestApplicationContext; +import org.nuiton.topia.it.legacy.AbstractTopiaTestDao; +import org.nuiton.topia.it.legacy.AbstractTopiaTestEntity; +import org.nuiton.topia.it.legacy.AbstractTopiaTestPersistenceContext; +import org.nuiton.topia.it.legacy.AbstractTopiaTestTopiaApplicationContext; +import org.nuiton.topia.it.legacy.AbstractTopiaTestTopiaPersistenceContext; +import org.nuiton.topia.it.legacy.TopiaTestApplicationContext; +import org.nuiton.topia.it.legacy.TopiaTestPersistenceContext; +import org.nuiton.topia.it.legacy.TopiaTestTopiaApplicationContext; +import org.nuiton.topia.it.legacy.TopiaTestTopiaPersistenceContext; +import org.nuiton.topia.it.legacy.test.entities.AbstractPetTopiaDao; +import org.nuiton.topia.it.legacy.test.entities.GeneratedPetTopiaDao; +import org.nuiton.topia.it.legacy.test.entities.PetAbstract; +import org.nuiton.topia.it.legacy.test.entities.PetImpl; +import org.nuiton.topia.it.legacy.test.entities.PetTopiaDao; + +/** + * To test generated classes. + * <p/> + * Created on 12/19/13. + * + * @author Tony Chemit <chemit@codelutin.com> + * @since 3.0 + */ +public class GenerateTest { + + @Test + public void testApplicationContext() { + + // add contract from class-path + Assert.assertTrue(TopiaTestApplicationContext.class.isAssignableFrom(AbstractTopiaTestTopiaApplicationContext.class)); + Assert.assertTrue(TopiaTestApplicationContext.class.isAssignableFrom(TopiaTestTopiaApplicationContext.class)); + + // add super-class from tag-value applicationContextSuperClass + Assert.assertTrue(AbstractTopiaTestApplicationContext.class.isAssignableFrom(AbstractTopiaTestTopiaApplicationContext.class)); + Assert.assertTrue(AbstractTopiaTestApplicationContext.class.isAssignableFrom(TopiaTestTopiaApplicationContext.class)); + } + + @Test + public void testPersistenceContext() { + + // add contract from class-path + Assert.assertTrue(TopiaTestPersistenceContext.class.isAssignableFrom(AbstractTopiaTestTopiaPersistenceContext.class)); + Assert.assertTrue(TopiaTestPersistenceContext.class.isAssignableFrom(TopiaTestTopiaPersistenceContext.class)); + + // add super-class from tag-value persistenceContextSuperClass + Assert.assertTrue(AbstractTopiaTestPersistenceContext.class.isAssignableFrom(AbstractTopiaTestTopiaPersistenceContext.class)); + Assert.assertTrue(AbstractTopiaTestPersistenceContext.class.isAssignableFrom(TopiaTestTopiaPersistenceContext.class)); + } + + @Test + public void testDao() { + + // add super-class from tag-value daoSuperClass + Assert.assertTrue(AbstractTopiaTestDao.class.isAssignableFrom(GeneratedPetTopiaDao.class)); + Assert.assertTrue(AbstractTopiaTestDao.class.isAssignableFrom(AbstractPetTopiaDao.class)); + Assert.assertTrue(AbstractTopiaTestDao.class.isAssignableFrom(PetTopiaDao.class)); + } + + @Test + public void testEntity() { + + // add super-class from tag-value entitySuperClass + Assert.assertTrue(AbstractTopiaTestEntity.class.isAssignableFrom(PetAbstract.class)); + Assert.assertTrue(AbstractTopiaTestEntity.class.isAssignableFrom(PetImpl.class)); + } + +} Property changes on: trunk/topia-it/src/test/java/org/nuiton/topia/it/GenerateTest.java ___________________________________________________________________ Added: svn:keywords + Author Date Id Revision Added: svn:eol-style + native
participants (1)
-
tchemit@users.nuiton.org