modules/core/domain/pom.xml
| 24 -
modules/core/domain/src/test/java/org/rhq/core/domain/drift/DriftDataAccessTest.java
| 77 ----
modules/core/domain/src/test/java/org/rhq/core/domain/drift/DriftDefinitionTemplateTest.java
| 62 +--
modules/core/domain/src/test/java/org/rhq/core/domain/drift/DriftFileTest.java
| 162 ++++------
modules/core/domain/src/test/java/org/rhq/core/domain/drift/JPADriftChangeSetTest.java
| 88 ++---
modules/core/domain/src/test/resources/arquillian.xml
| 1
6 files changed, 168 insertions(+), 246 deletions(-)
New commits:
commit f69ee11476dd5930ea6efb34e59d9a41b2aeb39f
Author: Jay Shaughnessy <jshaughn(a)redhat.com>
Date: Mon Mar 4 15:48:22 2013 -0500
Make sure we have sufficent memory for the tests to run
diff --git a/modules/core/domain/pom.xml b/modules/core/domain/pom.xml
index 44dd0c2..ef7c906 100644
--- a/modules/core/domain/pom.xml
+++ b/modules/core/domain/pom.xml
@@ -18,7 +18,7 @@
<jboss.zip>${settings.localRepository}/org/jboss/as/jboss-as-dist/${jboss.version}/jboss-as-dist-${jboss.version}.zip</jboss.zip>
<jboss.unzip.location>${basedir}/target/jboss-as-${jboss.version}</jboss.unzip.location>
<rhq.internal>false</rhq.internal>
- <jboss.vm.args></jboss.vm.args>
+ <jboss.vm.args>-Xmx700m -XX:MaxPermSize=200m</jboss.vm.args>
<jboss.vm.args.debug></jboss.vm.args.debug> <!-- -Ditest.debug can
override this, see below -->
<!-- These properties guide which datasources are used for integration tests.
Only one should be true.
The default is Postgres, specify -Pitest.oracle to use Oracle -->
commit c42180bd646fffe2621b5ea6298e48180ba8a0cb
Author: Jay Shaughnessy <jshaughn(a)redhat.com>
Date: Mon Mar 4 15:20:13 2013 -0500
Fix some Drift domain itests, they stepped all over everything in
setup/cleanup.
diff --git
a/modules/core/domain/src/test/java/org/rhq/core/domain/drift/DriftDataAccessTest.java
b/modules/core/domain/src/test/java/org/rhq/core/domain/drift/DriftDataAccessTest.java
deleted file mode 100644
index 083a756..0000000
---
a/modules/core/domain/src/test/java/org/rhq/core/domain/drift/DriftDataAccessTest.java
+++ /dev/null
@@ -1,77 +0,0 @@
-/*
- * RHQ Management Platform
- * Copyright (C) 2011 Red Hat, Inc.
- * All rights reserved.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation version 2 of the License.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- */
-
-package org.rhq.core.domain.drift;
-
-import javax.persistence.EntityManager;
-
-import org.testng.annotations.AfterGroups;
-import org.testng.annotations.BeforeMethod;
-
-import org.rhq.core.domain.shared.TransactionCallback;
-import org.rhq.core.domain.test.AbstractEJB3Test;
-
-public class DriftDataAccessTest extends AbstractEJB3Test {
-
- @BeforeMethod(groups = "drift.ejb")
- public final void initDB() {
- if (!inContainer()) {
- return;
- }
-
- executeInTransaction(false, new TransactionCallback() {
- @Override
- public void execute() throws Exception {
- try {
- purgeDB();
-
- } catch (Exception e) {
- System.out.println("BEFORE METHOD FAILURE, TEST DID NOT
RUN!!!");
- e.printStackTrace();
- throw e;
- }
- }
- });
- }
-
- @AfterGroups(groups = "drift.ejb")
- public void resetDB() {
- if (!inContainer()) {
- return;
- }
-
- executeInTransaction(false, new TransactionCallback() {
- @Override
- public void execute() throws Exception {
- purgeDB();
- }
- });
- }
-
- private void purgeDB() {
- EntityManager em = getEntityManager();
- em.createQuery("delete from JPADrift ").executeUpdate();
- em.createQuery("delete from JPADriftChangeSet").executeUpdate();
- em.createQuery("delete from JPADriftSet").executeUpdate();
- em.createQuery("delete from JPADriftFile").executeUpdate();
- em.createQuery("delete from DriftDefinition").executeUpdate();
- em.createQuery("delete from DriftDefinitionTemplate").executeUpdate();
- }
-
-}
diff --git
a/modules/core/domain/src/test/java/org/rhq/core/domain/drift/DriftDefinitionTemplateTest.java
b/modules/core/domain/src/test/java/org/rhq/core/domain/drift/DriftDefinitionTemplateTest.java
index 49e4e26..3908284 100644
---
a/modules/core/domain/src/test/java/org/rhq/core/domain/drift/DriftDefinitionTemplateTest.java
+++
b/modules/core/domain/src/test/java/org/rhq/core/domain/drift/DriftDefinitionTemplateTest.java
@@ -28,32 +28,29 @@ import static org.rhq.test.AssertUtils.assertPropertiesMatch;
import java.util.List;
import org.testng.Assert;
-import org.testng.annotations.AfterClass;
-import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
import org.rhq.core.domain.configuration.Configuration;
import org.rhq.core.domain.resource.ResourceType;
import org.rhq.core.domain.shared.ResourceTypeBuilder;
import org.rhq.core.domain.shared.TransactionCallback;
+import org.rhq.core.domain.test.AbstractEJB3Test;
-public class DriftDefinitionTemplateTest extends DriftDataAccessTest {
+public class DriftDefinitionTemplateTest extends AbstractEJB3Test {
private final String RESOURCE_TYPE_NAME =
DriftDefinitionTemplateTest.class.getName();
private ResourceType resourceType;
- @BeforeMethod(groups = { "DriftDefinitionTemplate", "drift.ejb"
})
- public void init() {
- if (!inContainer()) {
- return;
- }
+ @Override
+ protected void beforeMethod() {
+
+ purgeDB();
executeInTransaction(false, new TransactionCallback() {
@Override
public void execute() throws Exception {
try {
- purgeDB();
createResourceType();
em.persist(resourceType);
@@ -66,33 +63,30 @@ public class DriftDefinitionTemplateTest extends DriftDataAccessTest
{
});
}
- @AfterClass(groups = { "DriftDefinitionTemplate", "drift.ejb" })
- public void cleanUp() {
- if (!inContainer()) {
- return;
- }
+ @Override
+ protected void afterMethod() {
+ purgeDB();
+ }
+ private void purgeDB() {
executeInTransaction(false, new TransactionCallback() {
@Override
public void execute() throws Exception {
- purgeDB();
+ List<?> results = em.createQuery("select t from ResourceType t
where t.name = :name")
+ .setParameter("name", RESOURCE_TYPE_NAME).getResultList();
+ if (results.isEmpty()) {
+ return;
+ }
+
+ ResourceType type = (ResourceType) results.get(0);
+ for (DriftDefinitionTemplate template :
type.getDriftDefinitionTemplates()) {
+ em.remove(template);
+ }
+ em.remove(type);
}
});
}
- private void purgeDB() {
- List<?> results = em.createQuery("select t from ResourceType t where
t.name = :name")
- .setParameter("name", RESOURCE_TYPE_NAME).getResultList();
- if (results.isEmpty()) {
- return;
- }
- ResourceType type = (ResourceType) results.get(0);
- for (DriftDefinitionTemplate template : type.getDriftDefinitionTemplates()) {
- em.remove(template);
- }
- em.remove(type);
- }
-
private void createResourceType() {
resourceType = new ResourceTypeBuilder().createResourceType().withId(0)
.withName(DriftDefinitionTemplateTest.class.getName()).withCategory(SERVER)
@@ -114,7 +108,7 @@ public class DriftDefinitionTemplateTest extends DriftDataAccessTest
{
driftDef.setBasedir(new DriftDefinition.BaseDirectory(fileSystem,
"/foo/bar/test"));
template.setTemplateDefinition(driftDef);
- executeInTransaction(false, new TransactionCallback() {
+ executeInTransaction(new TransactionCallback() {
@Override
public void execute() throws Exception {
em.persist(template);
@@ -145,7 +139,7 @@ public class DriftDefinitionTemplateTest extends DriftDataAccessTest
{
driftDef.setBasedir(new DriftDefinition.BaseDirectory(fileSystem,
"/foo/bar/test"));
template.setTemplateDefinition(driftDef);
- executeInTransaction(false, new TransactionCallback() {
+ executeInTransaction(new TransactionCallback() {
@Override
public void execute() throws Exception {
em.persist(template);
@@ -184,7 +178,7 @@ public class DriftDefinitionTemplateTest extends DriftDataAccessTest
{
driftDef.setBasedir(new DriftDefinition.BaseDirectory(fileSystem,
"/foo/bar/test"));
template.setTemplateDefinition(driftDef);
- executeInTransaction(false, new TransactionCallback() {
+ executeInTransaction(new TransactionCallback() {
@Override
public void execute() throws Exception {
resourceType.addDriftDefinitionTemplate(template);
@@ -217,7 +211,7 @@ public class DriftDefinitionTemplateTest extends DriftDataAccessTest
{
driftDef.setBasedir(new DriftDefinition.BaseDirectory(fileSystem,
"/foo/bar/test"));
template.setTemplateDefinition(driftDef);
- executeInTransaction(false, new TransactionCallback() {
+ executeInTransaction(new TransactionCallback() {
@Override
public void execute() throws Exception {
@@ -252,7 +246,7 @@ public class DriftDefinitionTemplateTest extends DriftDataAccessTest
{
template.setChangeSetId("1");
template.setTemplateDefinition(driftDef);
- executeInTransaction(false, new TransactionCallback() {
+ executeInTransaction(new TransactionCallback() {
@Override
public void execute() throws Exception {
@@ -289,7 +283,7 @@ public class DriftDefinitionTemplateTest extends DriftDataAccessTest
{
template.setChangeSetId("1");
template.setTemplateDefinition(driftDef);
- executeInTransaction(false, new TransactionCallback() {
+ executeInTransaction(new TransactionCallback() {
@Override
public void execute() throws Exception {
diff --git
a/modules/core/domain/src/test/java/org/rhq/core/domain/drift/DriftFileTest.java
b/modules/core/domain/src/test/java/org/rhq/core/domain/drift/DriftFileTest.java
index e3fa25f..4cecf06 100644
--- a/modules/core/domain/src/test/java/org/rhq/core/domain/drift/DriftFileTest.java
+++ b/modules/core/domain/src/test/java/org/rhq/core/domain/drift/DriftFileTest.java
@@ -13,22 +13,22 @@ import java.sql.Blob;
import java.util.ArrayList;
import java.util.List;
-import javax.persistence.EntityManager;
-
import org.apache.commons.io.IOUtils;
+import org.hibernate.LobHelper;
import org.hibernate.Session;
import org.testng.annotations.Test;
import org.rhq.core.domain.shared.TransactionCallback;
+import org.rhq.core.domain.test.AbstractEJB3Test;
import org.rhq.core.util.MessageDigestGenerator;
-public class DriftFileTest extends DriftDataAccessTest {
+public class DriftFileTest extends AbstractEJB3Test {
static private final MessageDigestGenerator digestGen = new
MessageDigestGenerator(MessageDigestGenerator.SHA_256);
// Note, this test is more of a general Blob handling test. A real JPADriftFile never
has its content updated.
// But this is a useful test to just ensure Blob handling is working as expected.
- @Test(groups = {"driftFile", "drift.ejb"})
+ @Test(groups = { "driftFile", "drift.ejb" })
public void updateDriftFileData() throws Exception {
String content = "driftFile data";
String hashId = digestGen.calcDigestString(content);
@@ -36,36 +36,24 @@ public class DriftFileTest extends DriftDataAccessTest {
// Create the initial driftFile
final JPADriftFileBits df1 = new JPADriftFileBits(hashId);
df1.setDataSize((long) content.length());
- EntityManager em = getEntityManager();
Session session = (Session) em.getDelegate();
df1.setData(session.getLobHelper().createBlob(toInputStream(content),
content.length()));
- executeInTransaction(false, new TransactionCallback() {
+ executeInTransaction(new TransactionCallback() {
@Override
public void execute() {
- getEntityManager().persist(df1);
- }
- });
+ em.persist(df1);
+
+ // Make the update
+ final String newContent = "driftFile data updated...";
- // Make the update
- final String newContent = "driftFile data updated...";
- executeInTransaction(false, new TransactionCallback() {
- @Override
- public void execute() {
- EntityManager em = getEntityManager();
Session session = (Session) em.getDelegate();
JPADriftFileBits df2 = em.find(JPADriftFileBits.class, df1.getHashId());
df2.setData(session.getLobHelper().createBlob(toInputStream(newContent),
newContent.length()));
- getEntityManager().merge(df2);
- }
- });
+ em.merge(df2);
- // Fetch the driftFile to verify that the update was persisted
- executeInTransaction(false, new TransactionCallback() {
- @Override
- public void execute() {
try {
- JPADriftFileBits df3 =
getEntityManager().find(JPADriftFileBits.class, df1.getHashId());
+ JPADriftFileBits df3 = em.find(JPADriftFileBits.class,
df1.getHashId());
String expected = newContent;
String actual = IOUtils.toString(df3.getData());
@@ -73,6 +61,7 @@ public class DriftFileTest extends DriftDataAccessTest {
} catch (Exception e) {
fail("Failed to load driftFile data: " + e.getMessage());
}
+
}
});
}
@@ -82,100 +71,105 @@ public class DriftFileTest extends DriftDataAccessTest {
// In other words, to ensure LazyLoad semantics are working for Blobs
// Because of the amount data involved is very large the test is long
// running and should be moved to an integration test suite.
- @Test(groups = {"driftFile", "drift.ejb"})
+ @Test(groups = { "driftFile", "drift.ejb" })
public void loadMultipleDriftFilesWithoutLoadingData() throws Exception {
- int numDriftFiles = 3;
- final List<String> driftFileHashIds = new ArrayList<String>();
- for (int i = 0; i < numDriftFiles; ++i) {
- File dataFile = createDataFile("test_data.txt", 1, (char)
('a' + i));
- String hashId = digestGen.calcDigestString(dataFile);
- final JPADriftFileBits driftFile = new JPADriftFileBits(hashId);
- driftFile.setDataSize(dataFile.length());
- EntityManager em = getEntityManager();
- Session session = (Session) em.getDelegate();
- driftFile.setData(session.getLobHelper().createBlob(new
BufferedInputStream(new FileInputStream(dataFile)),
- dataFile.length()));
- dataFile.delete();
+ executeInTransaction(new TransactionCallback() {
+ @Override
+ public void execute() throws Exception {
- executeInTransaction(false, new TransactionCallback() {
- @Override
- public void execute() {
- getEntityManager().persist(driftFile);
+ int numDriftFiles = 3;
+ final List<String> driftFileHashIds = new
ArrayList<String>();
+
+ for (int i = 0; i < numDriftFiles; ++i) {
+ File dataFile = createDataFile("test_data.txt", 1, (char)
('a' + i));
+ String hashId = digestGen.calcDigestString(dataFile);
+ final JPADriftFileBits driftFile = new JPADriftFileBits(hashId);
+ driftFile.setDataSize(dataFile.length());
+
+ Session session = (Session) em.getDelegate();
+ driftFile.setData(session.getLobHelper().createBlob(
+ new BufferedInputStream(new FileInputStream(dataFile)),
dataFile.length()));
+ dataFile.delete();
+
+ em.persist(driftFile);
driftFileHashIds.add(driftFile.getHashId());
}
- });
- }
- final List<Blob> blobs = new ArrayList<Blob>();
- final List<JPADriftFileBits> driftFiles = new
ArrayList<JPADriftFileBits>();
- for (final String hashId : driftFileHashIds) {
- executeInTransaction(false, new TransactionCallback() {
- @Override
- public void execute() {
- EntityManager em = getEntityManager();
+ final List<Blob> blobs = new ArrayList<Blob>();
+ final List<JPADriftFileBits> driftFiles = new
ArrayList<JPADriftFileBits>();
+ for (final String hashId : driftFileHashIds) {
+
JPADriftFileBits driftFileBits = em.find(JPADriftFileBits.class,
hashId);
blobs.add(driftFileBits.getBlob());
driftFiles.add(driftFileBits);
}
- });
- }
- assertEquals("Failed to save or load " + numDriftFiles + "
driftFiles", numDriftFiles, driftFiles.size());
+ assertEquals("Failed to save or load " + numDriftFiles + "
driftFiles", numDriftFiles,
+ driftFiles.size());
+ }
+ });
}
// The purpose of this test is to ensure we won't store two drift files for
// the same content.
- @Test(groups = {"driftFile", "drift.ejb"})
+ @Test(groups = { "driftFile", "drift.ejb" })
public void loadSameFile() throws Exception {
+
int numDriftFiles = 2;
+ final List<JPADriftFileBits> driftFiles = new
ArrayList<JPADriftFileBits>();
final List<String> driftFileHashIds = new ArrayList<String>();
+ Session session = (Session) em.getDelegate();
+ LobHelper lobHelper = session.getLobHelper();
for (int driftFileNum = 0; driftFileNum < numDriftFiles; ++driftFileNum) {
File dataFile = createDataFile("test_data.txt", 10, 'X');
String hashId = digestGen.calcDigestString(dataFile);
final JPADriftFileBits driftFile = new JPADriftFileBits(hashId);
driftFile.setDataSize(dataFile.length());
- EntityManager em = getEntityManager();
- Session session = (Session) em.getDelegate();
- driftFile.setData(session.getLobHelper().createBlob(new
BufferedInputStream(new FileInputStream(dataFile)),
+
+ driftFile.setData(lobHelper.createBlob(new BufferedInputStream(new
FileInputStream(dataFile)),
dataFile.length()));
+ driftFiles.add(driftFile);
dataFile.delete();
-
- try {
- executeInTransaction(false, new TransactionCallback() {
- @Override
- public void execute() {
- getEntityManager().persist(driftFile);
- driftFileHashIds.add(driftFile.getHashId());
- }
- });
- if (driftFileNum >= 1) {
- fail("Should not be able to store JPADriftFile with same hashId
more than once.");
- }
-
- } catch (Exception e) {
- // expected for second file
- if (driftFileNum == 0) {
- fail("Should be able to store JPADriftFile with unique hashId -
cause: " + e);
- }
- }
}
- final List<Blob> blobs = new ArrayList<Blob>();
- final List<JPADriftFileBits> driftFiles = new
ArrayList<JPADriftFileBits>();
- for (final String hashId : driftFileHashIds) {
- executeInTransaction(false, new TransactionCallback() {
+ try {
+ executeInTransaction(new TransactionCallback() {
@Override
- public void execute() {
- JPADriftFileBits driftFileBits =
getEntityManager().find(JPADriftFileBits.class, hashId);
- blobs.add(driftFileBits.getBlob());
- driftFiles.add(driftFileBits);
+ public void execute() throws Exception {
+
+ for (JPADriftFileBits driftFile : driftFiles) {
+ try {
+ em.persist(driftFile);
+ driftFileHashIds.add(driftFile.getHashId());
+
+ if (driftFileHashIds.size() > 1) {
+ fail("Should not be able to store JPADriftFile with
same hashId more than once.");
+ }
+
+ } catch (Exception e) {
+ // expected for second file
+ if (driftFileHashIds.size() != 1) {
+ fail("Should be able to store JPADriftFile with
unique hashId - cause: " + e);
+ }
+ }
+ }
+
+ final List<Blob> blobs = new ArrayList<Blob>();
+ final List<JPADriftFileBits> driftFiles = new
ArrayList<JPADriftFileBits>();
+ for (final String hashId : driftFileHashIds) {
+ JPADriftFileBits driftFileBits = em.find(JPADriftFileBits.class,
hashId);
+ blobs.add(driftFileBits.getBlob());
+ driftFiles.add(driftFileBits);
+ }
}
});
+ } catch (Exception e) {
+ // expected because the rollback will fail as the transaction has already
terminated
}
- assertEquals("Failed to save or load " + numDriftFiles + "
driftFiles", numDriftFiles, driftFiles.size());
+ assertEquals("Failed to save or load " + driftFiles.size() + "
driftFiles", 2, driftFiles.size());
}
File workDir() throws URISyntaxException {
diff --git
a/modules/core/domain/src/test/java/org/rhq/core/domain/drift/JPADriftChangeSetTest.java
b/modules/core/domain/src/test/java/org/rhq/core/domain/drift/JPADriftChangeSetTest.java
index 2709158..fe30175 100644
---
a/modules/core/domain/src/test/java/org/rhq/core/domain/drift/JPADriftChangeSetTest.java
+++
b/modules/core/domain/src/test/java/org/rhq/core/domain/drift/JPADriftChangeSetTest.java
@@ -27,9 +27,6 @@ import static org.rhq.core.domain.resource.ResourceCategory.SERVER;
import java.util.List;
-import javax.persistence.EntityManager;
-
-import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
import org.rhq.core.domain.configuration.Configuration;
@@ -40,8 +37,9 @@ import org.rhq.core.domain.resource.ResourceType;
import org.rhq.core.domain.shared.ResourceBuilder;
import org.rhq.core.domain.shared.ResourceTypeBuilder;
import org.rhq.core.domain.shared.TransactionCallback;
+import org.rhq.core.domain.test.AbstractEJB3Test;
-public class JPADriftChangeSetTest extends DriftDataAccessTest {
+public class JPADriftChangeSetTest extends AbstractEJB3Test {
private final String RESOURCE_TYPE_NAME = JPADriftChangeSetTest.class.getName();
@@ -55,20 +53,15 @@ public class JPADriftChangeSetTest extends DriftDataAccessTest {
private DriftDefinition definition;
- @BeforeMethod(groups = {"JPADriftChangeSet", "drift.ejb"})
- public void init() {
- if (!inContainer()) {
- return;
- }
+ @Override
+ protected void beforeMethod() {
+
+ purgeDB();
executeInTransaction(false, new TransactionCallback() {
@Override
public void execute() throws Exception {
try {
- purgeDB();
-
- EntityManager em = getEntityManager();
-
resourceType = createResourceType();
em.persist(resourceType);
@@ -87,25 +80,45 @@ public class JPADriftChangeSetTest extends DriftDataAccessTest {
});
}
+ @Override
+ protected void afterMethod() {
+ purgeDB();
+ }
+
private void purgeDB() {
- EntityManager em = getEntityManager();
-
- List<Availability> avails = (List<Availability>)
em.createQuery("SELECT a FROM Availability a").getResultList();
- for (Availability a : avails) {
- em.remove(a);
- }
-
- List<Resource> resources = (List<Resource>) em.createQuery("from
Resource where resourceType.name = :name")
- .setParameter("name", RESOURCE_TYPE_NAME).getResultList();
- for (Resource resource : resources) {
- em.remove(resource);
- }
-
- List<ResourceType> resourceTypes = (List<ResourceType>)
em.createQuery("from ResourceType where name = :name")
- .setParameter("name", RESOURCE_TYPE_NAME).getResultList();
- for (ResourceType type : resourceTypes) {
- em.remove(type);
- }
+ executeInTransaction(false, new TransactionCallback() {
+ @Override
+ public void execute() throws Exception {
+ try {
+ // get rid of mandatory avail records on a resource
+ List<Availability> avails = (List<Availability>) em
+ .createQuery("SELECT a FROM Availability a WHERE
a.resource.resourceType.name = :name")
+ .setParameter("name",
RESOURCE_TYPE_NAME).getResultList();
+ for (Availability a : avails) {
+ em.remove(a);
+ }
+
+ List<Resource> resources = (List<Resource>) em
+ .createQuery("SELECT r from Resource r where
r.resourceType.name = :name")
+ .setParameter("name",
RESOURCE_TYPE_NAME).getResultList();
+ for (Resource resource : resources) {
+ em.remove(resource);
+ }
+
+ List<ResourceType> resourceTypes = (List<ResourceType>)
em
+ .createQuery("Select rt from ResourceType rt where rt.name =
:name")
+ .setParameter("name",
RESOURCE_TYPE_NAME).getResultList();
+ for (ResourceType type : resourceTypes) {
+ em.remove(type);
+ }
+
+ } catch (Exception e) {
+ System.out.println("AFTER METHOD FAILURE, TEST DID NOT
COMPLETE!!!");
+ e.printStackTrace();
+ throw e;
+ }
+ }
+ });
}
private ResourceType createResourceType() {
@@ -117,9 +130,7 @@ public class JPADriftChangeSetTest extends DriftDataAccessTest {
return new ResourceBuilder().createResource().withId(0)
.withName(JPADriftChangeSetTest.class.getSimpleName() + "_" +
resourceCount++)
.withResourceKey(JPADriftChangeSetTest.class.getSimpleName() + "_"
+ resourceCount)
- .withUuid(JPADriftChangeSetTest.class.getSimpleName() + "_" +
resourceCount)
- .withResourceType(type)
- .build();
+ .withUuid(JPADriftChangeSetTest.class.getSimpleName() + "_" +
resourceCount).withResourceType(type).build();
}
private DriftDefinition createDriftDefinition() {
@@ -133,12 +144,11 @@ public class JPADriftChangeSetTest extends DriftDataAccessTest {
return def;
}
- @Test(groups = {"JPADriftChangeSet", "drift.ejb"})
+ @Test(groups = { "JPADriftChangeSet", "drift.ejb" })
public void saveAndLoadInitialChangeSet() {
- executeInTransaction(false, new TransactionCallback() {
+ executeInTransaction(new TransactionCallback() {
@Override
public void execute() throws Exception {
- EntityManager em = getEntityManager();
JPADriftChangeSet changeSet = new JPADriftChangeSet(resource, 0,
COVERAGE, definition);
changeSet.setDriftHandlingMode(DriftHandlingMode.normal);
@@ -155,9 +165,7 @@ public class JPADriftChangeSetTest extends DriftDataAccessTest {
em.flush();
em.clear();
-
- JPADriftChangeSet savedChangeSet = em
- .find(JPADriftChangeSet.class, Integer.parseInt(changeSet.getId()));
+ JPADriftChangeSet savedChangeSet = em.find(JPADriftChangeSet.class,
Integer.parseInt(changeSet.getId()));
assertNotNull("Failed to persist change set", savedChangeSet);
JPADriftSet savedDriftSet = savedChangeSet.getInitialDriftSet();
commit de5cf74864f7f2b69d5e7cf15a4372b97e0c8728
Author: Jay Shaughnessy <jshaughn(a)redhat.com>
Date: Mon Mar 4 15:11:58 2013 -0500
Fix itest.debug support for domain [integration] tests
diff --git a/modules/core/domain/pom.xml b/modules/core/domain/pom.xml
index 9775aa6..44dd0c2 100644
--- a/modules/core/domain/pom.xml
+++ b/modules/core/domain/pom.xml
@@ -18,6 +18,8 @@
<jboss.zip>${settings.localRepository}/org/jboss/as/jboss-as-dist/${jboss.version}/jboss-as-dist-${jboss.version}.zip</jboss.zip>
<jboss.unzip.location>${basedir}/target/jboss-as-${jboss.version}</jboss.unzip.location>
<rhq.internal>false</rhq.internal>
+ <jboss.vm.args></jboss.vm.args>
+ <jboss.vm.args.debug></jboss.vm.args.debug> <!-- -Ditest.debug can
override this, see below -->
<!-- These properties guide which datasources are used for integration tests.
Only one should be true.
The default is Postgres, specify -Pitest.oracle to use Oracle -->
<skip.postgres>false</skip.postgres>
@@ -680,17 +682,17 @@
</build>
</profile>
- <profile>
- <id>itest.debug</id>
- <activation>
- <property>
- <name>itest.debug</name>
- </property>
- </activation>
- <properties>
-
<jboss.vm.args.debug>-Xrunjdwp:transport=dt_socket,address=8798,server=y,suspend=y</jboss.vm.args.debug>
- </properties>
- </profile>
+ <profile>
+ <id>itest.debug</id>
+ <activation>
+ <property>
+ <name>itest.debug</name>
+ </property>
+ </activation>
+ <properties>
+
<jboss.vm.args.debug>-Xrunjdwp:transport=dt_socket,address=8798,server=y,suspend=y</jboss.vm.args.debug>
+ </properties>
+ </profile>
<!-- These two properties allow Arquillian to inspect AS7 through the mgmt port,
to determine the ports it needs to interact
with when spawning the AS7 instance. This allows the AS7 to run on non-default
ports. If these properties are not set (for
diff --git a/modules/core/domain/src/test/resources/arquillian.xml
b/modules/core/domain/src/test/resources/arquillian.xml
index d0744f3..a55e28c 100644
--- a/modules/core/domain/src/test/resources/arquillian.xml
+++ b/modules/core/domain/src/test/resources/arquillian.xml
@@ -21,6 +21,7 @@
<configuration>
<property
name="jbossHome">${jboss.unzip.location}</property>
+ <property name="javaVmArguments">${jboss.vm.args}
${jboss.vm.args.debug}</property>
<!-- These two properties allow Arquillian to inspect AS7 through the mgmt port,
to determine the ports it needs
to interact with when spawning the AS7 instance. This allows the AS7 to run on
non-default ports. -->
<property name="managementAddress">127.0.0.1</property>