modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/TestServerPluginService.java | 6 -- modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/alert/AlertDefinitionWithComplexNotificationsTest.java | 4 - modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/alert/TestAlertSenderPluginService.java | 5 ++ modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/bundle/BundleManagerBeanTest.java | 2 modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/bundle/TestBundleServerPluginService.java | 5 -- modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/core/plugin/DatabaseAndFilePluginDeploymentTest.java | 7 +-- modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/drift/AbstractDriftServerTest.java | 2 modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/drift/DriftManagerBeanTest.java | 2 modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/drift/DriftServerPluginService.java | 5 ++ modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/measurement/MeasurementDataManagerBeanTest.java | 2 modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/measurement/MeasurementOOBManagerBeanTest.java | 2 modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/measurement/test/AvailabilityManagerTest.java | 2 modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/plugin/ServerPluginsBeanTest.java | 2 modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/plugin/pc/content/TestContentServerPluginService.java | 7 +-- modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/plugin/pc/generic/GenericServerPluginTest.java | 2 modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/plugin/pc/generic/TestGenericServerPluginService.java | 15 +++--- modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/group/test/LdapGroupManagerBeanTest.java | 2 modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/MetadataBeanTest.java | 2 modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/ResourceMetadataManagerBeanTest.java | 12 +++-- modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/test/UpdatePluginMetadataTestBase.java | 2 modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/test/ResourceFactoryManagerBeanTest.java | 2 modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/scheduler/jobs/DataPurgeJobTest.java | 2 modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/sync/test/SynchronizationManagerBeanTest.java | 2 modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/system/SystemManagerBeanTest.java | 2 modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/test/AbstractEJB3Test.java | 23 +++++----- modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/test/StandardServerPluginService.java | 11 ++-- modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/test/TestServerPluginService.java | 5 -- 27 files changed, 75 insertions(+), 60 deletions(-)
New commits: commit a74896a61f3b8ad1b9372469368c86f115f80b28 Author: Jay Shaughnessy jshaughn@redhat.com Date: Wed Jan 30 17:31:12 2013 -0500
Fix test failure, when I beefed up type removal checking I neglected to notice a dependent test that also needed updating.
diff --git a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/ResourceMetadataManagerBeanTest.java b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/ResourceMetadataManagerBeanTest.java index dd5311b..7392758 100644 --- a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/ResourceMetadataManagerBeanTest.java +++ b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/ResourceMetadataManagerBeanTest.java @@ -385,6 +385,7 @@ public class ResourceMetadataManagerBeanTest extends MetadataBeanTest { resourcesServiceE1.get(0)); List<Resource> resourcesServiceE3 = createResources(2, "RemoveTypesPlugin", "ServiceE3", resourcesServiceE2.get(0)); + // Intentionally greater than 200 to test an issue with Criteria fetch defaults List<Resource> resourcesServiceE4 = createResources(205, "RemoveTypesPlugin", "ServiceE4", resourcesServiceE3.get(0));
@@ -426,6 +427,7 @@ public class ResourceMetadataManagerBeanTest extends MetadataBeanTest { @Test(dependsOnMethods = { "upgradePluginWithTypesRemoved" }, groups = { "plugin.resource.metadata.test", "RemoveTypes" }) public void deleteParent() throws Exception { + SubjectManagerLocal subjectMgr = LookupUtil.getSubjectManager(); ResourceTypeManagerLocal resourceTypeMgr = LookupUtil.getResourceTypeManager();
@@ -459,12 +461,16 @@ public class ResourceMetadataManagerBeanTest extends MetadataBeanTest {
@Test(dependsOnMethods = { "upgradePluginWithTypesRemoved" }, groups = { "plugin.resource.metadata.test", "RemoveTypes" }) - public void deleteTypeAndAllItsDescedantTypes() throws Exception { + public void deleteTypeAndAllItsDescendantTypes() throws Exception { + List<?> typesNotRemoved = getEntityManager() .createQuery("from ResourceType t where t.plugin = :plugin and t.name in (:resourceTypes)") .setParameter("plugin", "RemoveTypesPlugin") - .setParameter("resourceTypes", asList("ServerE", "ServerE1", "ServerE2", "ServerE3", "ServerE4")) - .getResultList(); + // the types that should have been removed, if any show up we have a problem + .setParameter( + "resourceTypes", + asList("ServerC", "ServiceC1", "ServiceE4", "ServerF", "ServiceF1", "ServiceF2", "ServiceF3", + "ServiceF4")).getResultList();
assertEquals("Failed to delete resource type or one or more of its descendant types", 0, typesNotRemoved.size()); }
commit e8fd5fbf7013a34fa75c761e26a86d9a1956da99 Author: Jay Shaughnessy jshaughn@redhat.com Date: Wed Jan 30 17:30:28 2013 -0500
More test interaction work for the server itests. Many tests need a work area on disk. The test area being used was typically ${java.io.tmpdir}/rhq/testClassName. There were two issues with this: - Different test jobs running concurrently would end up using the same work directory. This is something that may have been happening on Jenkins. - An mvn clean had no effect on anything hanging around in those directories, so if test cleanup was poor it may have left legacy data that could possibly impact future test runs.
This commit moves all of the tmpdir generation under itests-2/target/test-tmpdir/
diff --git a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/TestServerPluginService.java b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/TestServerPluginService.java index 796a562..5bfff2d 100644 --- a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/TestServerPluginService.java +++ b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/TestServerPluginService.java @@ -51,10 +51,8 @@ public abstract class TestServerPluginService extends ServerPluginService implem public TestMasterServerPluginContainer master; public MasterServerPluginContainerConfiguration masterConfig;
- protected TestServerPluginService() { - // build the config at constructor time so tests have it even before the PC is initialized - File dir = new File(System.getProperty("java.io.tmpdir") + "/rhq", this.getClass().getSimpleName()); - this.masterConfig = new MasterServerPluginContainerConfiguration(dir, dir, dir, null); + protected TestServerPluginService(File tmpdir) { + this.masterConfig = new MasterServerPluginContainerConfiguration(tmpdir, tmpdir, tmpdir, null); }
@Override diff --git a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/alert/AlertDefinitionWithComplexNotificationsTest.java b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/alert/AlertDefinitionWithComplexNotificationsTest.java index 7e43862..69ffc44 100644 --- a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/alert/AlertDefinitionWithComplexNotificationsTest.java +++ b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/alert/AlertDefinitionWithComplexNotificationsTest.java @@ -224,7 +224,7 @@ public class AlertDefinitionWithComplexNotificationsTest extends AbstractEJB3Tes em.persist(resourceAlertDefinition);
//only need this for a short time now, so that we can precreate the plugin structure - alertSenderService = new TestAlertSenderPluginService(); + alertSenderService = new TestAlertSenderPluginService(getTempDir()); prepareCustomServerPluginService(alertSenderService); alertSenderService.masterConfig.getPluginDirectory().mkdirs(); unprepareServerPluginService(); @@ -247,7 +247,7 @@ public class AlertDefinitionWithComplexNotificationsTest extends AbstractEJB3Tes
//@BeforeMethod private void containerSetup() { - alertSenderService = new TestAlertSenderPluginService(); + alertSenderService = new TestAlertSenderPluginService(getTempDir()); prepareCustomServerPluginService(alertSenderService); alertSenderService.masterConfig.getPluginDirectory().mkdirs();
diff --git a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/alert/TestAlertSenderPluginService.java b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/alert/TestAlertSenderPluginService.java index 9aae985..ac04276 100644 --- a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/alert/TestAlertSenderPluginService.java +++ b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/alert/TestAlertSenderPluginService.java @@ -19,6 +19,7 @@
package org.rhq.enterprise.server.alert;
+import java.io.File; import java.util.Collections; import java.util.List;
@@ -38,6 +39,10 @@ import org.rhq.enterprise.server.plugin.pc.alert.AlertServerPluginContainer; */ public class TestAlertSenderPluginService extends TestServerPluginService {
+ protected TestAlertSenderPluginService(File tmpdir) { + super(tmpdir); + } + @Override protected List<AbstractTypeServerPluginContainer> createPluginContainers(MasterServerPluginContainer master) { return Collections.<AbstractTypeServerPluginContainer>singletonList(new TestAlertServerPluginContainer(master)); diff --git a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/bundle/BundleManagerBeanTest.java b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/bundle/BundleManagerBeanTest.java index c411671..062d91a 100644 --- a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/bundle/BundleManagerBeanTest.java +++ b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/bundle/BundleManagerBeanTest.java @@ -116,7 +116,7 @@ public class BundleManagerBeanTest extends AbstractEJB3Test { agentServiceContainer = prepareForTestAgents(); agentServiceContainer.bundleService = new TestAgentClient(null, agentServiceContainer);
- this.ps = new TestBundleServerPluginService(); + this.ps = new TestBundleServerPluginService(getTempDir()); prepareCustomServerPluginService(this.ps); bundleManager = LookupUtil.getBundleManager(); resourceManager = LookupUtil.getResourceManager(); diff --git a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/bundle/TestBundleServerPluginService.java b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/bundle/TestBundleServerPluginService.java index 45f210c..7481496 100644 --- a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/bundle/TestBundleServerPluginService.java +++ b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/bundle/TestBundleServerPluginService.java @@ -66,10 +66,9 @@ public class TestBundleServerPluginService extends ServerPluginService implement public RecipeParseResults parseRecipe_returnValue = null; public BundleDistributionInfo processBundleDistributionFile_returnValue;
- public TestBundleServerPluginService() { + public TestBundleServerPluginService(File tmpdir) { // build the config at constructor time so tests have it even before the PC is initialized - File dir = new File(System.getProperty("java.io.tmpdir") + "/rhq", this.getClass().getSimpleName()); - this.masterConfig = new MasterServerPluginContainerConfiguration(dir, dir, dir, null); + this.masterConfig = new MasterServerPluginContainerConfiguration(tmpdir, tmpdir, tmpdir, null); }
@Override diff --git a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/core/plugin/DatabaseAndFilePluginDeploymentTest.java b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/core/plugin/DatabaseAndFilePluginDeploymentTest.java index d031926..b594f61 100644 --- a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/core/plugin/DatabaseAndFilePluginDeploymentTest.java +++ b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/core/plugin/DatabaseAndFilePluginDeploymentTest.java @@ -53,8 +53,8 @@ public class DatabaseAndFilePluginDeploymentTest extends AbstractEJB3Test {
private static final String PLUGIN_NAME = "DeployTest"; // as defined in our test descriptors private static final String DESCRIPTORS_LOCATION = "test/deployment/"; - private static final String TEST_DIR = System.getProperty("java.io.tmpdir") + "/rhq/" - + DatabaseAndFilePluginDeploymentTest.class.getName() + "/"; + private static final String TEST_DIR = tmpdirRoot + "/" + DatabaseAndFilePluginDeploymentTest.class.getName() + + "/"; private static final String JARS_LOCATION = TEST_DIR + "jars"; private static final String DEPLOY_LOCATION = TEST_DIR + "deploy"; private static final String TESTPLUGIN_1_0_FEB = "1.0-feb"; @@ -199,7 +199,8 @@ public class DatabaseAndFilePluginDeploymentTest extends AbstractEJB3Test { buildPluginJar(descriptor, file); assert file.exists();
- PluginDescriptor pluginDescriptor = AgentPluginDescriptorUtil.loadPluginDescriptorFromUrl(file.toURI().toURL()); + PluginDescriptor pluginDescriptor = AgentPluginDescriptorUtil.loadPluginDescriptorFromUrl(file.toURI() + .toURL()); testPluginDescriptors.put(entry.getKey(), pluginDescriptor);
Plugin pluginPojo = new Plugin(PLUGIN_NAME, file.getName()); diff --git a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/drift/AbstractDriftServerTest.java b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/drift/AbstractDriftServerTest.java index 5f7d95c..a95079b 100644 --- a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/drift/AbstractDriftServerTest.java +++ b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/drift/AbstractDriftServerTest.java @@ -82,7 +82,7 @@ public abstract class AbstractDriftServerTest extends AbstractEJB3Test { }
private void initDriftServer() throws Exception { - driftServerPluginService = new DriftServerPluginService(); + driftServerPluginService = new DriftServerPluginService(getTempDir()); prepareCustomServerPluginService(driftServerPluginService); driftServerPluginService.masterConfig.getPluginDirectory().mkdirs();
diff --git a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/drift/DriftManagerBeanTest.java b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/drift/DriftManagerBeanTest.java index aa42a11..fe2ced3 100644 --- a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/drift/DriftManagerBeanTest.java +++ b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/drift/DriftManagerBeanTest.java @@ -94,7 +94,7 @@ public class DriftManagerBeanTest extends AbstractEJB3Test {
prepareScheduler();
- DriftServerPluginService driftServerPluginService = new DriftServerPluginService(); + DriftServerPluginService driftServerPluginService = new DriftServerPluginService(getTempDir()); prepareCustomServerPluginService(driftServerPluginService); driftServerPluginService.masterConfig.getPluginDirectory().mkdirs();
diff --git a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/drift/DriftServerPluginService.java b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/drift/DriftServerPluginService.java index 46d725f..de206d4 100644 --- a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/drift/DriftServerPluginService.java +++ b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/drift/DriftServerPluginService.java @@ -19,6 +19,7 @@
package org.rhq.enterprise.server.drift;
+import java.io.File; import java.util.Collections; import java.util.List;
@@ -33,6 +34,10 @@ import org.rhq.enterprise.server.plugin.pc.drift.DriftServerPluginManager;
public class DriftServerPluginService extends TestServerPluginService {
+ public DriftServerPluginService(File tmpDir) { + super(tmpDir); + } + @Override protected List<AbstractTypeServerPluginContainer> createPluginContainers(MasterServerPluginContainer master) { return Collections.<AbstractTypeServerPluginContainer>singletonList(new TestDriftServerPluginContainer(master)); diff --git a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/measurement/MeasurementDataManagerBeanTest.java b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/measurement/MeasurementDataManagerBeanTest.java index 9e8b4e3..1c4b780 100644 --- a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/measurement/MeasurementDataManagerBeanTest.java +++ b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/measurement/MeasurementDataManagerBeanTest.java @@ -122,7 +122,7 @@ public class MeasurementDataManagerBeanTest extends AbstractEJB3Test {
// MeasurementDataManagerUtility looks up config settings from SystemManagerBean. // SystemManagerBean.getDriftServerPluginManager method requires drift server plugin. - DriftServerPluginService driftServerPluginService = new DriftServerPluginService(); + DriftServerPluginService driftServerPluginService = new DriftServerPluginService(getTempDir()); prepareCustomServerPluginService(driftServerPluginService); driftServerPluginService.masterConfig.getPluginDirectory().mkdirs();
diff --git a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/measurement/MeasurementOOBManagerBeanTest.java b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/measurement/MeasurementOOBManagerBeanTest.java index 067614e..a7f16ef 100644 --- a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/measurement/MeasurementOOBManagerBeanTest.java +++ b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/measurement/MeasurementOOBManagerBeanTest.java @@ -110,7 +110,7 @@ public class MeasurementOOBManagerBeanTest extends AbstractEJB3Test { protected void beforeMethod() throws Exception { // MeasurementDataManagerUtility looks up config settings from SystemManagerBean. // SystemManagerBean.getDriftServerPluginManager method requires drift server plugin. - DriftServerPluginService driftServerPluginService = new DriftServerPluginService(); + DriftServerPluginService driftServerPluginService = new DriftServerPluginService(getTempDir()); prepareCustomServerPluginService(driftServerPluginService); driftServerPluginService.masterConfig.getPluginDirectory().mkdirs();
diff --git a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/measurement/test/AvailabilityManagerTest.java b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/measurement/test/AvailabilityManagerTest.java index ff1193d..d6ac8b2 100644 --- a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/measurement/test/AvailabilityManagerTest.java +++ b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/measurement/test/AvailabilityManagerTest.java @@ -90,7 +90,7 @@ public class AvailabilityManagerTest extends AbstractEJB3Test { this.overlord = LookupUtil.getSubjectManager().getOverlord(); additionalResources = new ArrayList<Resource>();
- testServerPluginService = new TestServerPluginService(); + testServerPluginService = new TestServerPluginService(getTempDir()); prepareCustomServerPluginService(testServerPluginService); testServerPluginService.masterConfig.getPluginDirectory().mkdirs(); testServerPluginService.startMasterPluginContainer(); diff --git a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/plugin/ServerPluginsBeanTest.java b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/plugin/ServerPluginsBeanTest.java index b12d90c..e7f9da5 100644 --- a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/plugin/ServerPluginsBeanTest.java +++ b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/plugin/ServerPluginsBeanTest.java @@ -54,7 +54,7 @@ public class ServerPluginsBeanTest extends AbstractEJB3Test { @Override protected void beforeMethod() { TestGenericServerPluginService pluginService; - pluginService = new TestGenericServerPluginService(); + pluginService = new TestGenericServerPluginService(getTempDir()); prepareCustomServerPluginService(pluginService);
serverPluginsBean = LookupUtil.getServerPlugins(); diff --git a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/plugin/pc/content/TestContentServerPluginService.java b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/plugin/pc/content/TestContentServerPluginService.java index 5850985..7642ec1 100644 --- a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/plugin/pc/content/TestContentServerPluginService.java +++ b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/plugin/pc/content/TestContentServerPluginService.java @@ -42,6 +42,7 @@ public class TestContentServerPluginService extends ServerPluginService implemen
private Map<Integer, ContentProvider> providers = new HashMap<Integer, ContentProvider>(); private TestContentProvider defaultTestContentProvider; + private File tmpdir;
/** * Creates and initializes the content server plugin container for use with the given test case. @@ -50,6 +51,7 @@ public class TestContentServerPluginService extends ServerPluginService implemen */ public TestContentServerPluginService(AbstractEJB3Test testContainer) { super(); + tmpdir = testContainer.getTempDir(); testContainer.prepareCustomServerPluginService(this); startMasterPluginContainer();
@@ -86,9 +88,8 @@ public class TestContentServerPluginService extends ServerPluginService implemen
protected MasterServerPluginContainer createMasterPluginContainer() { MasterServerPluginContainer master = new TestMasterServerPluginContainer(); - File dir = new File(System.getProperty("java.io.tmpdir") + "/rhq", this.getClass().getSimpleName()); - MasterServerPluginContainerConfiguration config = new MasterServerPluginContainerConfiguration(dir, dir, dir, - null); + MasterServerPluginContainerConfiguration config = new MasterServerPluginContainerConfiguration(tmpdir, tmpdir, + tmpdir, null); master.initialize(config); return master; } diff --git a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/plugin/pc/generic/GenericServerPluginTest.java b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/plugin/pc/generic/GenericServerPluginTest.java index e8ece2e..1bbe447 100644 --- a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/plugin/pc/generic/GenericServerPluginTest.java +++ b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/plugin/pc/generic/GenericServerPluginTest.java @@ -55,7 +55,7 @@ public class GenericServerPluginTest extends AbstractEJB3Test {
@Override protected void beforeMethod() throws Exception { - this.pluginService = new TestGenericServerPluginService(); + this.pluginService = new TestGenericServerPluginService(getTempDir()); deleteAllTestPluginJars(); // remove any old server plugins that might be still around prepareCustomServerPluginService(this.pluginService); } diff --git a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/plugin/pc/generic/TestGenericServerPluginService.java b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/plugin/pc/generic/TestGenericServerPluginService.java index 85f45d0..736b615 100644 --- a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/plugin/pc/generic/TestGenericServerPluginService.java +++ b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/plugin/pc/generic/TestGenericServerPluginService.java @@ -55,10 +55,9 @@ public class TestGenericServerPluginService extends ServerPluginService implemen public TestGenericServerPluginContainer genericPC; public MasterServerPluginContainerConfiguration masterConfig;
- public TestGenericServerPluginService() { + public TestGenericServerPluginService(File tmpdir) { // build the config at constructor time so tests have it even before the PC is initialized - File dir = new File(System.getProperty("java.io.tmpdir" + "/rhq"), this.getClass().getSimpleName()); - this.masterConfig = new MasterServerPluginContainerConfiguration(dir, dir, dir, null); + this.masterConfig = new MasterServerPluginContainerConfiguration(tmpdir, tmpdir, tmpdir, null); }
@Override @@ -197,11 +196,11 @@ public class TestGenericServerPluginService extends ServerPluginService implemen
File pluginFile = new File(env.getPluginUrl().toURI()); ServerPlugin plugin = new ServerPlugin(0, env.getPluginKey().getPluginName(), pluginFile.getName(), - pluginDescriptor.getDisplayName(), true, PluginStatusType.INSTALLED, pluginDescriptor - .getDescription(), "", MessageDigestGenerator.getDigestString(pluginFile), pluginDescriptor - .getVersion(), pluginDescriptor.getVersion(), pluginConfig, scheduledJobsConfig, - new ServerPluginType(pluginDescriptor).stringify(), System.currentTimeMillis(), System - .currentTimeMillis()); + pluginDescriptor.getDisplayName(), true, PluginStatusType.INSTALLED, + pluginDescriptor.getDescription(), "", MessageDigestGenerator.getDigestString(pluginFile), + pluginDescriptor.getVersion(), pluginDescriptor.getVersion(), pluginConfig, scheduledJobsConfig, + new ServerPluginType(pluginDescriptor).stringify(), System.currentTimeMillis(), + System.currentTimeMillis()); return plugin; } catch (Exception e) { throw new RuntimeException(e); diff --git a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/group/test/LdapGroupManagerBeanTest.java b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/group/test/LdapGroupManagerBeanTest.java index 6f8c497..6c0fd5e 100644 --- a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/group/test/LdapGroupManagerBeanTest.java +++ b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/group/test/LdapGroupManagerBeanTest.java @@ -101,7 +101,7 @@ public class LdapGroupManagerBeanTest extends AbstractEJB3Test { ldapGroupManager = LookupUtil.getLdapGroupManager();
//we need this because the drift plugins are referenced from the system settings that we use in our tests - testServerPluginService = new TestServerPluginService(); + testServerPluginService = new TestServerPluginService(getTempDir()); prepareCustomServerPluginService(testServerPluginService); testServerPluginService.startMasterPluginContainer();
diff --git a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/MetadataBeanTest.java b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/MetadataBeanTest.java index 5d3bf77..8afabf2 100644 --- a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/MetadataBeanTest.java +++ b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/MetadataBeanTest.java @@ -79,7 +79,7 @@ public class MetadataBeanTest extends AbstractEJB3Test {
setupDB();
- TestBundleServerPluginService bundleService = new TestBundleServerPluginService(); + TestBundleServerPluginService bundleService = new TestBundleServerPluginService(getTempDir()); prepareCustomServerPluginService(bundleService); bundleService.startMasterPluginContainerWithoutSchedulingJobs(); prepareScheduler(); diff --git a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/test/UpdatePluginMetadataTestBase.java b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/test/UpdatePluginMetadataTestBase.java index f05e079..23e8efe 100644 --- a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/test/UpdatePluginMetadataTestBase.java +++ b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/test/UpdatePluginMetadataTestBase.java @@ -79,7 +79,7 @@ public class UpdatePluginMetadataTestBase extends AbstractEJB3Test { preparePluginScannerService(); // we perform lookups of config settings from SystemManagerBean. // SystemManagerBean.getDriftServerPluginManager method requires drift server plugin. - DriftServerPluginService driftServerPluginService = new DriftServerPluginService(); + DriftServerPluginService driftServerPluginService = new DriftServerPluginService(getTempDir()); prepareCustomServerPluginService(driftServerPluginService); driftServerPluginService.masterConfig.getPluginDirectory().mkdirs();
diff --git a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/test/ResourceFactoryManagerBeanTest.java b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/test/ResourceFactoryManagerBeanTest.java index 7036dc5..e835a2e 100644 --- a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/test/ResourceFactoryManagerBeanTest.java +++ b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/test/ResourceFactoryManagerBeanTest.java @@ -100,7 +100,7 @@ public class ResourceFactoryManagerBeanTest extends AbstractEJB3Test { agentServiceContainer.resourceFactoryService = mockAgentService;
//the server plugins are in play when package types are involved - StandardServerPluginService serverPluginService = new StandardServerPluginService(); + StandardServerPluginService serverPluginService = new StandardServerPluginService(getTempDir()); prepareCustomServerPluginService(serverPluginService); serverPluginService.startMasterPluginContainer();
diff --git a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/scheduler/jobs/DataPurgeJobTest.java b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/scheduler/jobs/DataPurgeJobTest.java index 2d37c66..9cc4bc9 100644 --- a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/scheduler/jobs/DataPurgeJobTest.java +++ b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/scheduler/jobs/DataPurgeJobTest.java @@ -98,7 +98,7 @@ public class DataPurgeJobTest extends AbstractEJB3Test { protected void beforeMethod() throws Exception { try { //we need this because the drift plugins are referenced from the system settings that we use in our tests - testServerPluginService = new TestServerPluginService(); + testServerPluginService = new TestServerPluginService(getTempDir()); prepareCustomServerPluginService(testServerPluginService); testServerPluginService.startMasterPluginContainer();
diff --git a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/sync/test/SynchronizationManagerBeanTest.java b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/sync/test/SynchronizationManagerBeanTest.java index f00fe27..c870dc9 100644 --- a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/sync/test/SynchronizationManagerBeanTest.java +++ b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/sync/test/SynchronizationManagerBeanTest.java @@ -299,7 +299,7 @@ public class SynchronizationManagerBeanTest extends AbstractEJB3Test { }
//we need this because the drift plugins are referenced from the system settings that we use in our tests - testData.testServerPluginService = new TestServerPluginService(); + testData.testServerPluginService = new TestServerPluginService(getTempDir()); prepareCustomServerPluginService(testData.testServerPluginService); testData.testServerPluginService.startMasterPluginContainer();
diff --git a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/system/SystemManagerBeanTest.java b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/system/SystemManagerBeanTest.java index 557c787..104ff85 100644 --- a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/system/SystemManagerBeanTest.java +++ b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/system/SystemManagerBeanTest.java @@ -45,7 +45,7 @@ public class SystemManagerBeanTest extends AbstractEJB3Test { overlord = LookupUtil.getSubjectManager().getOverlord();
//we need this because the drift plugins are referenced from the system settings that we use in our tests - testServerPluginService = new TestServerPluginService(); + testServerPluginService = new TestServerPluginService(getTempDir()); prepareCustomServerPluginService(testServerPluginService); testServerPluginService.startMasterPluginContainer(); } diff --git a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/test/AbstractEJB3Test.java b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/test/AbstractEJB3Test.java index e4dbc4b..270b053 100644 --- a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/test/AbstractEJB3Test.java +++ b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/test/AbstractEJB3Test.java @@ -78,6 +78,8 @@ public abstract class AbstractEJB3Test extends Arquillian {
protected static final String JNDI_RHQDS = "java:jboss/datasources/RHQDS";
+ protected static File tmpdirRoot = new File("./target/test-tmpdir"); + private TestServerCommunicationsService agentService; private SchedulerService schedulerService; private ServerPluginService serverPluginService; @@ -90,16 +92,19 @@ public abstract class AbstractEJB3Test extends Arquillian { protected InitialContext initialContext;
// We originally (in 4.2.3 days) ran these tests as "unit" tests in the server/jar module using - // the embedded conatiner. With Arquillian it makes sense to actually deploy an EAR because + // the embedded container. With Arquillian it makes sense to actually deploy an EAR because // we need a way to deploy dependent ears needed to support the server/jar classes. But // building this jar up (as is done in core/domain) was too difficult due to the huge number - // of dependencies. It was easier, and probably more sensical, to use the already built rhq.ear + // of dependencies. It was easier, and made sense, to use the already built rhq.ear // and run as true integration tests. We do thin rhq.ear by removing all of the WAR files, and // deploy only the EJB jars, and the services, which are really the objects under test.
@Deployment protected static EnterpriseArchive getBaseDeployment() {
+ // Ensure the test working dir exists + tmpdirRoot.mkdirs(); + // deploy the test classes in their own jar, under /lib JavaArchive testClassesJar = ShrinkWrap.create(JavaArchive.class, "test-classes.jar"); testClassesJar = addClasses(testClassesJar, new File("target/test-classes/org"), null); @@ -122,8 +127,7 @@ public abstract class AbstractEJB3Test extends Arquillian { testClassesJar.addAsResource("test-ldap.properties"); testClassesJar.addAsResource("test-scheduler.properties"); testClassesJar - .addAsResource( - "org/rhq/enterprise/server/configuration/metadata/configuration_metadata_manager_bean_test_v1.xml"); + .addAsResource("org/rhq/enterprise/server/configuration/metadata/configuration_metadata_manager_bean_test_v1.xml"); testClassesJar .addAsResource("org/rhq/enterprise/server/configuration/metadata/configuration_metadata_manager_bean_test_v2.xml"); testClassesJar.addAsResource("org/rhq/enterprise/server/discovery/DiscoveryBossBeanTest.xml"); @@ -321,8 +325,7 @@ public abstract class AbstractEJB3Test extends Arquillian { testEar.add(new ClassAsset(StrippedDownStartupBeanPreparation.class), ArchivePaths .create("/rhq-enterprise-server-ejb3.jar/org/rhq/enterprise/server/test/" + "StrippedDownStartupBeanPreparation.class")); - testEar.addAsManifestResource(new ByteArrayAsset("<beans/>".getBytes()), - ArchivePaths.create("beans.xml")); + testEar.addAsManifestResource(new ByteArrayAsset("<beans/>".getBytes()), ArchivePaths.create("beans.xml"));
// add the test classes to the deployment testEar.addAsLibrary(testClassesJar); @@ -1105,11 +1108,11 @@ public abstract class AbstractEJB3Test extends Arquillian { return file.delete(); }
- /** - * @return a temp directory for testing that is specific to this test class. + /** + * @return a temp directory for testing that is specific to this test class. Specifically tmpdirRoot/this.getClass().getSimpleName(). */ - protected File getTempDir() { - return new File(System.getProperty("java.io.tmpdir") + "/rhq", this.getClass().getSimpleName()); + public File getTempDir() { + return new File(tmpdirRoot, this.getClass().getSimpleName()); }
} diff --git a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/test/StandardServerPluginService.java b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/test/StandardServerPluginService.java index adcde42..6b938fd 100644 --- a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/test/StandardServerPluginService.java +++ b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/test/StandardServerPluginService.java @@ -50,10 +50,10 @@ public class StandardServerPluginService extends ServerPluginService implements
public static class TestMasterServerPluginContainer extends MasterServerPluginContainer { private List<AbstractTypeServerPluginContainer> serverPluginContainers = new ArrayList<AbstractTypeServerPluginContainer>(); - + public TestMasterServerPluginContainer( List<Class<? extends AbstractTypeServerPluginContainer>> pluginContainerClasses) { - + for (Class<? extends AbstractTypeServerPluginContainer> cls : pluginContainerClasses) { try { Constructor<? extends AbstractTypeServerPluginContainer> ctor = cls @@ -65,7 +65,7 @@ public class StandardServerPluginService extends ServerPluginService implements } } } - + @Override protected List<AbstractTypeServerPluginContainer> createPluginContainers() { return serverPluginContainers; @@ -83,9 +83,8 @@ public class StandardServerPluginService extends ServerPluginService implements */ public List<Class<? extends AbstractTypeServerPluginContainer>> pluginContainerClasses;
- public StandardServerPluginService() { - File dir = new File(System.getProperty("java.io.tmpdir") + "/rhq", this.getClass().getSimpleName()); - this.masterConfig = new MasterServerPluginContainerConfiguration(dir, dir, dir, null); + public StandardServerPluginService(File tmpdir) { + this.masterConfig = new MasterServerPluginContainerConfiguration(tmpdir, tmpdir, tmpdir, null); pluginContainerClasses = new ArrayList<Class<? extends AbstractTypeServerPluginContainer>>(); pluginContainerClasses.add(AlertServerPluginContainer.class); pluginContainerClasses.add(BundleServerPluginContainer.class); diff --git a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/test/TestServerPluginService.java b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/test/TestServerPluginService.java index a8b134e..6e62b99 100644 --- a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/test/TestServerPluginService.java +++ b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/test/TestServerPluginService.java @@ -44,10 +44,9 @@ public class TestServerPluginService extends ServerPluginService implements Test public TestMasterServerPluginContainer master; public MasterServerPluginContainerConfiguration masterConfig;
- public TestServerPluginService() { + public TestServerPluginService(File tmpdir) { // build the config at constructor time so tests have it even before the PC is initialized - File dir = new File(System.getProperty("java.io.tmpdir") + "/rhq", this.getClass().getSimpleName()); - this.masterConfig = new MasterServerPluginContainerConfiguration(dir, dir, dir, null); + this.masterConfig = new MasterServerPluginContainerConfiguration(tmpdir, tmpdir, tmpdir, null); }
@Override
rhq-commits@lists.fedorahosted.org