CCM NG: Test for the module system

git-svn-id: https://svn.libreccm.org/ccm/ccm_ng@3598 8810af33-2d31-482b-a856-94f89814c4df
pull/2/head
jensp 2015-09-02 18:16:00 +00:00
parent 1c7a7af8cb
commit c9da290b9f
4 changed files with 54 additions and 40 deletions

View File

@ -25,6 +25,8 @@ import org.libreccm.core.modules.Module;
import org.libreccm.core.modules.ShutdownEvent; import org.libreccm.core.modules.ShutdownEvent;
import org.libreccm.core.modules.UnInstallEvent; import org.libreccm.core.modules.UnInstallEvent;
import javax.persistence.EntityManager;
/** /**
* *
* @author <a href="mailto:jens.pelzetter@googlemail.com">Jens Pelzetter</a> * @author <a href="mailto:jens.pelzetter@googlemail.com">Jens Pelzetter</a>
@ -49,7 +51,19 @@ public class CcmCore implements CcmModule {
@Override @Override
public void install(final InstallEvent event) { public void install(final InstallEvent event) {
//Nothing final EntityManager entityManager = event.getEntityManager();
final User user = new User();
user.setScreenName("public-user");
final PersonName name = new PersonName();
name.setFamilyName("ccm");
name.setGivenName("public user");
user.setName(name);
final EmailAddress email = new EmailAddress();
email.setAddress("public-user@localhost");
user.addEmailAddress(email);
entityManager.persist(user);
} }
@Override @Override

View File

@ -151,8 +151,9 @@ public class CcmIntegrator implements Integrator {
final Statement statement = connection.createStatement(); final Statement statement = connection.createStatement();
statement.execute(String.format( statement.execute(String.format(
"INSERT INTO flyhydra_core.installed_modules " "INSERT INTO flyhydra_core.installed_modules "
+ "(module_class_name, status) " + "(module_id, module_class_name, status) "
+ "VALUES ('%s', 'NEW')", + "VALUES (%d, %s', 'NEW')",
module.getName().hashCode(),
module.getName())); module.getName()));
} }
} }

View File

@ -52,7 +52,7 @@ public class InstalledModule implements Serializable {
@Column(name = "module_class_name", length = 2048, unique = true) @Column(name = "module_class_name", length = 2048, unique = true)
private String moduleClassName; private String moduleClassName;
@Column @Column(name = "status")
@Enumerated(EnumType.STRING) @Enumerated(EnumType.STRING)
private ModuleStatus status; private ModuleStatus status;

View File

@ -18,7 +18,6 @@
*/ */
package org.libreccm.core; package org.libreccm.core;
import static org.hamcrest.CoreMatchers.*; import static org.hamcrest.CoreMatchers.*;
import org.jboss.arquillian.container.test.api.Deployment; import org.jboss.arquillian.container.test.api.Deployment;
@ -93,10 +92,10 @@ public class CcmObjectRepositoryTest {
@Deployment @Deployment
public static WebArchive createDeployment() { public static WebArchive createDeployment() {
final PomEquippedResolveStage pom = Maven final PomEquippedResolveStage pom = Maven
.resolver() .resolver()
.loadPomFromFile("pom.xml"); .loadPomFromFile("pom.xml");
final PomEquippedResolveStage dependencies = pom final PomEquippedResolveStage dependencies = pom
.importCompileAndRuntimeDependencies(); .importCompileAndRuntimeDependencies();
final File[] libs = dependencies.resolve().withTransitivity().asFile(); final File[] libs = dependencies.resolve().withTransitivity().asFile();
for (File lib : libs) { for (File lib : libs) {
@ -105,26 +104,26 @@ public class CcmObjectRepositoryTest {
} }
return ShrinkWrap return ShrinkWrap
.create(WebArchive.class, .create(WebArchive.class,
"LibreCCM-org.libreccm.core.CcmObjectRepositoryTest.war"). "LibreCCM-org.libreccm.core.CcmObjectRepositoryTest.war")
addPackages(false, CcmObject.class.getPackage()) .addPackage(CcmObject.class.getPackage())
.addPackage(org.libreccm.web.Application.class.getPackage()) .addPackage(org.libreccm.web.Application.class.getPackage())
.addPackage(org.libreccm.categorization.Category.class. .addPackage(org.libreccm.categorization.Category.class.
getPackage()) getPackage())
.addPackage(org.libreccm.l10n.LocalizedString.class.getPackage()). .addPackage(org.libreccm.l10n.LocalizedString.class.getPackage()).
addPackage(org.libreccm.jpa.EntityManagerProducer.class addPackage(org.libreccm.jpa.EntityManagerProducer.class
.getPackage()) .getPackage())
.addPackage(org.libreccm.jpa.utils.MimeTypeConverter.class .addPackage(org.libreccm.jpa.utils.MimeTypeConverter.class
.getPackage()) .getPackage())
.addPackage(org.libreccm.testutils.EqualsVerifier.class. .addPackage(org.libreccm.testutils.EqualsVerifier.class.
getPackage()) getPackage())
.addPackage(org.libreccm.tests.categories.IntegrationTest.class .addPackage(org.libreccm.tests.categories.IntegrationTest.class
.getPackage()) .getPackage())
.addAsLibraries(libs) .addAsLibraries(libs)
.addAsResource("test-persistence.xml", .addAsResource("test-persistence.xml",
"META-INF/persistence.xml") "META-INF/persistence.xml")
.addAsWebInfResource("test-web.xml", "WEB-INF/web.xml") .addAsWebInfResource("test-web.xml", "WEB-INF/web.xml")
.addAsWebInfResource(EmptyAsset.INSTANCE, "WEB-INF/beans.xml"); .addAsWebInfResource(EmptyAsset.INSTANCE, "WEB-INF/beans.xml");
} }
@Test @Test
@ -141,7 +140,7 @@ public class CcmObjectRepositoryTest {
@Test @Test
@UsingDataSet( @UsingDataSet(
"datasets/org/libreccm/core/CcmObjectRepositoryTest/data.yml") "datasets/org/libreccm/core/CcmObjectRepositoryTest/data.yml")
@InSequence(3) @InSequence(3)
public void datasetOnly() { public void datasetOnly() {
System.out.println("Dataset loaded successfully."); System.out.println("Dataset loaded successfully.");
@ -149,7 +148,7 @@ public class CcmObjectRepositoryTest {
@Test @Test
@UsingDataSet( @UsingDataSet(
"datasets/org/libreccm/core/CcmObjectRepositoryTest/after-save-changed.yml") "datasets/org/libreccm/core/CcmObjectRepositoryTest/after-save-changed.yml")
@InSequence(4) @InSequence(4)
public void datasetOnly2() { public void datasetOnly2() {
System.out.println("Dataset loaded successfully."); System.out.println("Dataset loaded successfully.");
@ -157,7 +156,7 @@ public class CcmObjectRepositoryTest {
@Test @Test
@UsingDataSet( @UsingDataSet(
"datasets/org/libreccm/core/CcmObjectRepositoryTest/data.yml") "datasets/org/libreccm/core/CcmObjectRepositoryTest/data.yml")
@InSequence(5) @InSequence(5)
public void entityManagerFindCcmObjectByLongPrimitive() { public void entityManagerFindCcmObjectByLongPrimitive() {
final CcmObject obj1 = entityManager.find(CcmObject.class, -10L); final CcmObject obj1 = entityManager.find(CcmObject.class, -10L);
@ -182,7 +181,7 @@ public class CcmObjectRepositoryTest {
@Test @Test
@UsingDataSet( @UsingDataSet(
"datasets/org/libreccm/core/CcmObjectRepositoryTest/data.yml") "datasets/org/libreccm/core/CcmObjectRepositoryTest/data.yml")
@InSequence(6) @InSequence(6)
public void entityManagerFindCcmObjectByLongClass() { public void entityManagerFindCcmObjectByLongClass() {
final CcmObject obj1 = entityManager.find(CcmObject.class, final CcmObject obj1 = entityManager.find(CcmObject.class,
@ -211,7 +210,7 @@ public class CcmObjectRepositoryTest {
@Test @Test
@UsingDataSet( @UsingDataSet(
"datasets/org/libreccm/core/CcmObjectRepositoryTest/data.yml") "datasets/org/libreccm/core/CcmObjectRepositoryTest/data.yml")
@InSequence(10) @InSequence(10)
public void findCcmObjectById() { public void findCcmObjectById() {
final CcmObject obj1 = ccmObjectRepository.findById(-10L); final CcmObject obj1 = ccmObjectRepository.findById(-10L);
@ -236,7 +235,7 @@ public class CcmObjectRepositoryTest {
@Test @Test
@UsingDataSet( @UsingDataSet(
"datasets/org/libreccm/core/CcmObjectRepositoryTest/data.yml") "datasets/org/libreccm/core/CcmObjectRepositoryTest/data.yml")
@InSequence(10) @InSequence(10)
public void findAllCcmObjects() { public void findAllCcmObjects() {
final List<CcmObject> objects = ccmObjectRepository.findAll(); final List<CcmObject> objects = ccmObjectRepository.findAll();
@ -246,9 +245,9 @@ public class CcmObjectRepositoryTest {
@Test @Test
@UsingDataSet( @UsingDataSet(
"datasets/org/libreccm/core/CcmObjectRepositoryTest/data.yml") "datasets/org/libreccm/core/CcmObjectRepositoryTest/data.yml")
@ShouldMatchDataSet(value @ShouldMatchDataSet(value
= "datasets/org/libreccm/core/CcmObjectRepositoryTest/after-save-new.yml", = "datasets/org/libreccm/core/CcmObjectRepositoryTest/after-save-new.yml",
excludeColumns = {"object_id"}) excludeColumns = {"object_id"})
@InSequence(300) @InSequence(300)
public void saveNewCcmObject() { public void saveNewCcmObject() {
@ -260,9 +259,9 @@ public class CcmObjectRepositoryTest {
@Test @Test
@UsingDataSet( @UsingDataSet(
"datasets/org/libreccm/core/CcmObjectRepositoryTest/data.yml") "datasets/org/libreccm/core/CcmObjectRepositoryTest/data.yml")
@ShouldMatchDataSet(value @ShouldMatchDataSet(value
= "datasets/org/libreccm/core/CcmObjectRepositoryTest/after-save-changed.yml", = "datasets/org/libreccm/core/CcmObjectRepositoryTest/after-save-changed.yml",
excludeColumns = {"object_id"}) excludeColumns = {"object_id"})
@InSequence(400) @InSequence(400)
public void saveChangedCcmObject() { public void saveChangedCcmObject() {
@ -281,9 +280,9 @@ public class CcmObjectRepositoryTest {
@Test @Test
@UsingDataSet( @UsingDataSet(
"datasets/org/libreccm/core/CcmObjectRepositoryTest/data.yml") "datasets/org/libreccm/core/CcmObjectRepositoryTest/data.yml")
@ShouldMatchDataSet(value @ShouldMatchDataSet(value
= "datasets/org/libreccm/core/CcmObjectRepositoryTest/after-delete.yml", = "datasets/org/libreccm/core/CcmObjectRepositoryTest/after-delete.yml",
excludeColumns = {"object_id"}) excludeColumns = {"object_id"})
@InSequence(600) @InSequence(600)
public void deleteCcmObject() { public void deleteCcmObject() {