modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/AlertMetadataManagerBeanTest.java
| 6 +
modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/ContentMetadataManagerBeanTest.java
| 6 +
modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/EventMetadataManagerBeanTest.java
| 6 +
modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/MeasurementMetadataManagerBeanTest.java
| 7 -
modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/MetadataBeanTest.java
| 57 +++++-----
modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/MultiplePluginExtensionMetadataTest.java
| 6 +
modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/MultiplePluginExtensionSinglePluginDescriptorMetadataTest.java
| 6 +
modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/OperationMetadataManagerBeanTest.java
| 6 +
modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/PluginExtensionMetadataTest.java
| 6 +
modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/PluginManagerBeanTest.java
| 38 +++++-
modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/PluginScanningExtensionMetadataTest.java
| 44 ++-----
modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/ResourceMetadataManagerBeanTest.java
| 7 -
modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/test/AbstractEJB3Test.java
| 2
modules/enterprise/server/itests-2/src/test/resources/org/rhq/enterprise/server/resource/metadata/PluginManagerBeanTest/plugin_1.xml
| 1
modules/enterprise/server/itests-2/src/test/resources/org/rhq/enterprise/server/resource/metadata/PluginManagerBeanTest/plugin_2.xml
| 1
modules/enterprise/server/itests-2/src/test/resources/org/rhq/enterprise/server/resource/metadata/PluginManagerBeanTest/plugin_3.1.xml
| 1
modules/enterprise/server/itests-2/src/test/resources/org/rhq/enterprise/server/resource/metadata/PluginManagerBeanTest/plugin_3.xml
| 1
17 files changed, 119 insertions(+), 82 deletions(-)
New commits:
commit 01044f44df613b54d5d5fb36c4b4c713bf1fcd1b
Author: Jay Shaughnessy <jshaughn(a)redhat.com>
Date: Fri Nov 30 17:22:34 2012 -0500
More work on the metadata tests.
- better protect against test interaction issues by using explicit
"AfterClass"
stand-in tests for each subclass.
- work on PluginManagerBeanTest such that it registers plugins to be enabled
before trying to disable them.
- Not passing, maybe a real problem?
diff --git
a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/AlertMetadataManagerBeanTest.java
b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/AlertMetadataManagerBeanTest.java
index 29c146f..26e1cab 100644
---
a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/AlertMetadataManagerBeanTest.java
+++
b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/AlertMetadataManagerBeanTest.java
@@ -41,6 +41,12 @@ public class AlertMetadataManagerBeanTest extends MetadataBeanTest {
assertEquals("Alert templates should have been deleted.", 0,
templates.size());
}
+ // this needs to be the last test executed in the class, it does cleanup
+ @Test(priority = 10, alwaysRun = true, dependsOnGroups = {
"Alerts.UpgradePlugin" })
+ public void afterClassWorkTest() throws Exception {
+ afterClassWork();
+ }
+
void createAlertTemplate(String name, String resourceTypeName, String pluginName)
throws Exception {
SubjectManagerLocal subjectMgr = LookupUtil.getSubjectManager();
ResourceTypeManagerLocal resourceTypeMgr = LookupUtil.getResourceTypeManager();
diff --git
a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/ContentMetadataManagerBeanTest.java
b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/ContentMetadataManagerBeanTest.java
index 6f5582a..c109bf8 100644
---
a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/ContentMetadataManagerBeanTest.java
+++
b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/ContentMetadataManagerBeanTest.java
@@ -108,6 +108,12 @@ public class ContentMetadataManagerBeanTest extends MetadataBeanTest
{
bundleType.getName());
}
+ // this needs to be the last test executed in the class, it does cleanup
+ @Test(priority = 10, alwaysRun = true, dependsOnGroups = {
"Content.UpgradePlugin" })
+ public void afterClassWorkTest() throws Exception {
+ afterClassWork();
+ }
+
PackageType loadPackageType(String resourceType, String plugin, String packageType)
{
return (PackageType) getEntityManager()
.createQuery(
diff --git
a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/EventMetadataManagerBeanTest.java
b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/EventMetadataManagerBeanTest.java
index 99e1e22..8a11e07 100644
---
a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/EventMetadataManagerBeanTest.java
+++
b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/EventMetadataManagerBeanTest.java
@@ -60,6 +60,12 @@ public class EventMetadataManagerBeanTest extends MetadataBeanTest {
assertEquals("The description property should have been updated",
"EVENT ONE", eventDef.getDescription());
}
+ // this needs to be the last test executed in the class, it does cleanup
+ @Test(priority = 10, alwaysRun = true, dependsOnGroups = {
"Events.UpgradePlugin" })
+ public void afterClassWorkTest() throws Exception {
+ afterClassWork();
+ }
+
EventDefinition loadEventDef(String name, String resourceType) {
return (EventDefinition) getEntityManager()
.createQuery("from EventDefinition e where e.name = :name and
e.resourceType.name = :resourceType")
diff --git
a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/MeasurementMetadataManagerBeanTest.java
b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/MeasurementMetadataManagerBeanTest.java
index 2bf2f31..25fbd5c 100644
---
a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/MeasurementMetadataManagerBeanTest.java
+++
b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/MeasurementMetadataManagerBeanTest.java
@@ -16,13 +16,6 @@ import org.rhq.test.AssertUtils;
public class MeasurementMetadataManagerBeanTest extends MetadataBeanTest {
- @Override
- protected void beforeMethod() throws Exception {
- super.beforeMethod();
-
- disableAfterClassStandIn = true;
- }
-
@Test(groups = { "plugin.metadata", "Metrics.NewPlugin" })
void registerMetricsPlugin() throws Exception {
createPlugin("metric-test-plugin", "1.0",
"plugin_v1.xml");
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 cfaf7a8..dbdb765 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
@@ -28,7 +28,6 @@ import org.dbunit.dataset.datatype.IDataTypeFactory;
import org.dbunit.dataset.xml.FlatXmlDataSet;
import org.dbunit.dataset.xml.FlatXmlProducer;
import org.dbunit.operation.DatabaseOperation;
-import org.testng.annotations.Test;
import org.xml.sax.InputSource;
import org.rhq.core.clientapi.descriptor.plugin.PluginDescriptor;
@@ -40,6 +39,7 @@ import org.rhq.core.util.MessageDigestGenerator;
import org.rhq.core.util.stream.StreamUtil;
import org.rhq.enterprise.server.auth.SubjectManagerLocal;
import org.rhq.enterprise.server.bundle.TestBundleServerPluginService;
+import org.rhq.enterprise.server.core.plugin.PluginDeploymentScanner;
import org.rhq.enterprise.server.resource.ResourceTypeManagerLocal;
import org.rhq.enterprise.server.scheduler.jobs.PurgePluginsJob;
import org.rhq.enterprise.server.scheduler.jobs.PurgeResourceTypesJob;
@@ -48,28 +48,21 @@ import org.rhq.enterprise.server.util.LookupUtil;
public class MetadataBeanTest extends AbstractEJB3Test {
+ protected PluginDeploymentScanner pluginScanner;
+
private List<Integer> pluginIds = new ArrayList<Integer>();
- protected boolean disableAfterClassStandIn = false;
- // Arquillian (1.0.2) executes @AfterClass after each test. So, instead turn it into
a low priority
- // test that should execute last.
- /**
- * !! Important !! This should be disabled if the subclass has tests in groups other
than plugin.metadata because<br/>
- * !! priority applies only to the tests in the same grouping.<br/>
- * <br/>
+ /**
+ * <pre>IMPORTANT NOTE FOR SUBCLASS IMPLEMENTORS
+ * Arquillian (1.0.2) executes @AfterXXX after each test. The work below would
normally be done in
+ * an AfterClass method, but instead we'll use mock tests, that perform last for
each subclass, to
+ * perform this cleanup code.
+ * </pre>
* Need to delete rows from RHQ_PLUGINS because subsequent tests in server/jar would
otherwise fail. Some tests look
* at what plugins are in the database, and then look for corresponding plugin files
on the file system. MetadataTest
* however removes the generated plugin files during each test run.
+ *
*/
- @Test(priority = 10, alwaysRun = true, groups = { "plugin.metadata" })
- void afterClassStandIn() throws Exception {
- if (!disableAfterClassStandIn) {
- afterClassWork();
- } else {
- System.out.println("Skipping MetadataBeanTest.afterClassStandIn, it is
disabled by a subclass.");
- }
- }
-
protected void afterClassWork() throws Exception {
PluginManagerLocal pluginMgr = LookupUtil.getPluginManager();
Subject overlord = LookupUtil.getSubjectManager().getOverlord();
@@ -81,9 +74,6 @@ public class MetadataBeanTest extends AbstractEJB3Test {
@Override
protected void beforeMethod() throws Exception {
- if (!inContainer()) {
- return;
- }
setupDB();
@@ -100,9 +90,6 @@ public class MetadataBeanTest extends AbstractEJB3Test {
*/
@Override
protected void afterMethod() throws Exception {
- if (!inContainer()) {
- return;
- }
unprepareServerPluginService();
unprepareScheduler();
@@ -158,8 +145,7 @@ public class MetadataBeanTest extends AbstractEJB3Test {
protected void createPlugin(String pluginFileName, String version, String
descriptorFileName) throws Exception {
URL descriptorURL = getDescriptorURL(descriptorFileName);
PluginDescriptor pluginDescriptor = loadPluginDescriptor(descriptorURL);
- String pluginFilePath = getCurrentWorkingDir() + "/" + pluginFileName +
".jar";
- File pluginFile = new File(pluginFilePath);
+ String pluginFilePath = getPluginWorkDir() + "/" + pluginFileName +
".jar";
Plugin plugin = new Plugin(pluginDescriptor.getName(), pluginFilePath);
plugin.setDisplayName(pluginDescriptor.getName());
@@ -169,7 +155,6 @@ public class MetadataBeanTest extends AbstractEJB3Test {
plugin.setVersion(pluginDescriptor.getVersion());
plugin.setMD5(MessageDigestGenerator.getDigestString(descriptorURL));
- SubjectManagerLocal subjectMgr = LookupUtil.getSubjectManager();
PluginManagerLocal pluginMgr = LookupUtil.getPluginManager();
pluginMgr.registerPlugin(plugin, pluginDescriptor, null, true);
@@ -177,13 +162,31 @@ public class MetadataBeanTest extends AbstractEJB3Test {
pluginIds.add(plugin.getId());
}
+ protected void preparePluginScannerService() {
+ if (this.pluginScanner == null) {
+ this.pluginScanner = new PluginDeploymentScanner();
+
+ String pluginDirPath = null;
+ try {
+ pluginDirPath = getPluginWorkDir();
+ } catch (Exception e) {
+ throw new RuntimeException("Cannot determine where to put the plugin
jar files", e);
+ }
+ this.pluginScanner.setAgentPluginDir(pluginDirPath); // we don't want to
scan for these
+ this.pluginScanner.setServerPluginDir(null); // we don't want to scan for
these
+ this.pluginScanner.setScanPeriod("9999999"); // we want to manually
scan - don't allow for auto-scan to happen
+ }
+
+ preparePluginScannerService(this.pluginScanner);
+ }
+
private URL getDescriptorURL(String descriptor) {
String dir = getClass().getSimpleName();
return getClass().getResource(dir + "/" + descriptor);
}
protected String getPluginWorkDir() throws Exception {
- return getCurrentWorkingDir() + "/rhqtest";
+ return getCurrentWorkingDir() + "/" + this.getClass().getSimpleName() +
"/" + "plugins";
}
protected String getCurrentWorkingDir() throws Exception {
diff --git
a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/MultiplePluginExtensionMetadataTest.java
b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/MultiplePluginExtensionMetadataTest.java
index b395120..b34fa4c 100644
---
a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/MultiplePluginExtensionMetadataTest.java
+++
b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/MultiplePluginExtensionMetadataTest.java
@@ -56,6 +56,12 @@ public class MultiplePluginExtensionMetadataTest extends
MetadataBeanTest {
checkChild2Plugin(); // check that the changes to the parent type propogated to
the child #2
}
+ // this needs to be the last test executed in the class, it does cleanup
+ @Test(priority = 10, alwaysRun = true, dependsOnMethods = {
"testRegisterPlugins" })
+ public void afterClassWorkTest() throws Exception {
+ afterClassWork();
+ }
+
private void registerParentPluginV1() throws Exception {
// register the plugin, load the new type and test to make sure its what we
expect
createPlugin("parent-plugin.jar", "1.0",
"parent_plugin_v1.xml");
diff --git
a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/MultiplePluginExtensionSinglePluginDescriptorMetadataTest.java
b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/MultiplePluginExtensionSinglePluginDescriptorMetadataTest.java
index e381168..337efd2 100644
---
a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/MultiplePluginExtensionSinglePluginDescriptorMetadataTest.java
+++
b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/MultiplePluginExtensionSinglePluginDescriptorMetadataTest.java
@@ -50,6 +50,12 @@ public class MultiplePluginExtensionSinglePluginDescriptorMetadataTest
extends M
checkChildPlugin(); // check that the changes to the parent type propogated to
the child #1 and #2
}
+ // this needs to be the last test executed in the class, it does cleanup
+ @Test(priority = 10, alwaysRun = true, dependsOnMethods = {
"testRegisterPlugins" })
+ public void afterClassWorkTest() throws Exception {
+ afterClassWork();
+ }
+
private void registerParentPluginV1() throws Exception {
// register the plugin, load the new type and test to make sure its what we
expect
createPlugin("parent-plugin.jar", "1.0",
"parent_plugin_v1.xml");
diff --git
a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/OperationMetadataManagerBeanTest.java
b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/OperationMetadataManagerBeanTest.java
index 59f5d44..f863fb1 100644
---
a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/OperationMetadataManagerBeanTest.java
+++
b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/OperationMetadataManagerBeanTest.java
@@ -111,6 +111,12 @@ public class OperationMetadataManagerBeanTest extends
MetadataBeanTest {
assertNull("Results definition should have been removed", resultsDef);
}
+ // this needs to be the last test executed in the class, it does cleanup
+ @Test(priority = 10, alwaysRun = true, dependsOnGroups = {
"Operations.UpgradePlugin" })
+ public void afterClassWorkTest() throws Exception {
+ afterClassWork();
+ }
+
ResourceType loadResourceTypeWithOperationDefs(String resourceType, String plugin) {
return (ResourceType) getEntityManager().createQuery(
"from ResourceType t left join fetch t.operationDefinitions tod
"
diff --git
a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/PluginExtensionMetadataTest.java
b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/PluginExtensionMetadataTest.java
index fedd45e..af24f3c 100644
---
a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/PluginExtensionMetadataTest.java
+++
b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/PluginExtensionMetadataTest.java
@@ -123,6 +123,12 @@ public class PluginExtensionMetadataTest extends MetadataBeanTest {
checkChildPlugin(); // check that the changes to the parent type propogated to
the child
}
+ // this needs to be the last test executed in the class, it does cleanup
+ @Test(priority = 10, alwaysRun = true, dependsOnMethods = {
"testRegisterPlugins" })
+ public void afterClassWorkTest() throws Exception {
+ afterClassWork();
+ }
+
private void registerParentPluginV1() throws Exception {
// register the plugin, load the new type and test to make sure its what we
expect
createPlugin("parent-plugin.jar", "1.0",
"parent_plugin_v1.xml");
diff --git
a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/PluginManagerBeanTest.java
b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/PluginManagerBeanTest.java
index ff279d9..2df0d96 100644
---
a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/PluginManagerBeanTest.java
+++
b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/PluginManagerBeanTest.java
@@ -21,6 +21,7 @@ package org.rhq.enterprise.server.resource.metadata;
import static java.util.Arrays.asList;
+import java.io.File;
import java.util.List;
import javax.ejb.EJBException;
@@ -30,6 +31,7 @@ import org.testng.annotations.Test;
import org.rhq.core.domain.plugin.Plugin;
import org.rhq.core.domain.plugin.PluginStatusType;
import org.rhq.core.domain.resource.ResourceType;
+import org.rhq.core.util.file.FileUtil;
import org.rhq.enterprise.server.auth.SubjectManagerLocal;
import org.rhq.enterprise.server.inventory.InventoryManagerLocal;
import org.rhq.enterprise.server.resource.ResourceTypeManagerLocal;
@@ -53,7 +55,14 @@ public class PluginManagerBeanTest extends MetadataBeanTest {
subjectMgr = LookupUtil.getSubjectManager();
pluginMgr = LookupUtil.getPluginManager();
- disableAfterClassStandIn = true;
+ FileUtil.purge(new File(getPluginWorkDir()), true);
+
+ preparePluginScannerService();
+ }
+
+ @Override
+ protected void afterMethod() throws Exception {
+ unpreparePluginScannerService();
}
public void registerPlugins() throws Exception {
@@ -71,16 +80,24 @@ public class PluginManagerBeanTest extends MetadataBeanTest {
new PurgeResourceTypesJob().execute(null);
new PurgePluginsJob().execute(null);
}
+
+ //createPluginJarFile("child1-plugin.jar",
"child1_plugin_v1.xml"));
+
+ createPluginJarFile("test-plugin1.jar", "plugin_1.xml");
+ createPluginJarFile("test-plugin2.jar", "plugin_2.xml");
+ createPluginJarFile("test-plugin3.jar", "plugin_3.xml");
+ createPluginJarFile("test-plugin3.1.jar", "plugin_3.1.xml");
+
+ System.out.println("***** SLEEP");
+ Thread.sleep(60000);
- createPlugin("test-plugin1", "1.0",
"plugin_1.xml");
- createPlugin("test-plugin2", "1.0",
"plugin_2.xml");
- createPlugin("test-plugin3", "1.0",
"plugin_3.xml");
- createPlugin("test-plugin3.1", "1.0",
"plugin_3.1.xml");
+ pluginScanner.startDeployment();
}
@Test(dependsOnMethods = { "registerPlugins" })
public void disablePlugin() throws Exception {
Plugin plugin = getPlugin("PluginManagerBeanTestPlugin3");
+ assertTrue("Plugin should not already be disabled",
plugin.isEnabled());
pluginMgr.disablePlugins(subjectMgr.getOverlord(), asList(plugin.getId()));
plugin = pluginMgr.getPlugin("PluginManagerBeanTestPlugin3");
@@ -92,18 +109,23 @@ public class PluginManagerBeanTest extends MetadataBeanTest {
@Test(dependsOnMethods = { "registerPlugins" })
public void doNotDisablePluginIfDependentPluginsAreNotAlsoDisabled() throws Exception
{
Plugin plugin = getPlugin("PluginManagerBeanTestPlugin1");
- EJBException exception = null;
+ assertTrue("Plugin should not already be disabled",
plugin.isEnabled());
+
+ Exception exception = null;
try {
pluginMgr.disablePlugins(subjectMgr.getOverlord(), asList(plugin.getId()));
- } catch (EJBException e) {
+ } catch (Exception e) {
exception = e;
}
+ plugin = getPlugin("PluginManagerBeanTestPlugin1");
+ assertTrue("Plugin should not have been disabled",
plugin.isEnabled());
+
assertNotNull("Expected exception to be thrown when trying to disable a
plugin that has dependent plugins",
exception);
assertTrue("Expected an IllegalArgumentException when trying to disable a
plugin with dependent plugins",
- exception.getCausedByException() instanceof IllegalArgumentException);
+ exception.getCause() instanceof IllegalArgumentException);
}
@Test(dependsOnMethods = {
"doNotDisablePluginIfDependentPluginsAreNotAlsoDisabled" })
diff --git
a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/PluginScanningExtensionMetadataTest.java
b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/PluginScanningExtensionMetadataTest.java
index 4e19f85..5417305 100644
---
a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/PluginScanningExtensionMetadataTest.java
+++
b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/PluginScanningExtensionMetadataTest.java
@@ -4,15 +4,12 @@ import java.io.File;
import java.util.ArrayList;
import java.util.List;
-import org.testng.annotations.AfterMethod;
-import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
import org.rhq.core.domain.criteria.ResourceTypeCriteria;
import org.rhq.core.domain.operation.OperationDefinition;
import org.rhq.core.domain.resource.ResourceType;
import org.rhq.enterprise.server.auth.SubjectManagerLocal;
-import org.rhq.enterprise.server.core.plugin.PluginDeploymentScanner;
import org.rhq.enterprise.server.resource.ResourceTypeManagerLocal;
import org.rhq.enterprise.server.util.LookupUtil;
@@ -54,13 +51,10 @@ public class PluginScanningExtensionMetadataTest extends
MetadataBeanTest {
private ResourceTypeManagerLocal resourceTypeMgr;
private List<File> createdJarFiles = new ArrayList<File>();
- private PluginDeploymentScanner pluginScanner;
- @BeforeMethod(groups = { "plugin.metadata" }, dependsOnGroups = {
"integration.ejb3" })
- protected void beforeTestMethod() throws Exception {
- if (!inContainer()) {
- return;
- }
+ @Override
+ protected void beforeMethod() throws Exception {
+ super.beforeMethod();
preparePluginScannerService();
@@ -76,11 +70,8 @@ public class PluginScanningExtensionMetadataTest extends
MetadataBeanTest {
createdJarFiles.clear();
}
- @AfterMethod(groups = { "plugin.metadata" }, dependsOnGroups = {
"integration.ejb3" })
- protected void afterTestMethod() throws Exception {
- if (!inContainer()) {
- return;
- }
+ @Override
+ protected void afterMethod() throws Exception {
// clean up any generated jar files - we want to remove these so they don't
get in the way of a future test run
if (!createdJarFiles.isEmpty()) {
for (File doomed : createdJarFiles) {
@@ -90,25 +81,8 @@ public class PluginScanningExtensionMetadataTest extends
MetadataBeanTest {
createdJarFiles.clear();
unpreparePluginScannerService();
- }
- // this method isn't a test method
- private void preparePluginScannerService() {
- if (this.pluginScanner == null) {
- this.pluginScanner = new PluginDeploymentScanner();
-
- String pluginDirPath = null;
- try {
- pluginDirPath = getPluginWorkDir();
- } catch (Exception e) {
- throw new RuntimeException("Cannot determine where to put the plugin
jar files", e);
- }
- this.pluginScanner.setAgentPluginDir(pluginDirPath); // we don't want to
scan for these
- this.pluginScanner.setServerPluginDir(null); // we don't want to scan for
these
- this.pluginScanner.setScanPeriod("9999999"); // we want to manually
scan - don't allow for auto-scan to happen
- }
-
- preparePluginScannerService(this.pluginScanner);
+ super.afterMethod();
}
public void testRegisterPlugins() throws Exception {
@@ -127,6 +101,12 @@ public class PluginScanningExtensionMetadataTest extends
MetadataBeanTest {
}
}
+ // this needs to be the last test executed in the class, it does cleanup
+ @Test(priority = 10, alwaysRun = true, dependsOnMethods = {
"testRegisterPlugins" })
+ public void afterClassWorkTest() throws Exception {
+ afterClassWork();
+ }
+
private void registerParentPluginV1() throws Exception {
// register the plugin, load the new type and test to make sure its what we
expect
createdJarFiles.add(createPluginJarFile("parent-plugin.jar",
"parent_plugin_v1.xml"));
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 5f2acd8..a5e23ff 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
@@ -53,13 +53,6 @@ import org.rhq.enterprise.server.util.LookupUtil;
@Test(groups = { "plugin.metadata" })
public class ResourceMetadataManagerBeanTest extends MetadataBeanTest {
- @Override
- protected void beforeMethod() throws Exception {
- super.beforeMethod();
-
- disableAfterClassStandIn = true;
- }
-
@Test(groups = { "plugin.resource.metadata.test", "NewPlugin" })
public void testRemovalOfObsoleteBundleAndDriftConfig() throws Exception {
// create the initial type that has bundle and drift definitions
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 6fc8350..975efb8 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
@@ -341,7 +341,7 @@ public abstract class AbstractEJB3Test extends Arquillian {
testEar.addAsLibraries(dependencies);
// Print out the test EAR structure
- // System.out.println("** The Deployment EAR: " + ear.toString(true) +
"\n");
+ //System.out.println("** The Deployment EAR: " + testEar.toString(true)
+ "\n");
// Save the test EAR to a zip file for inspection (set file explicitly)
//exportZip(testEar, new File("/home/jshaughn/temp/test-ear.ear"));
diff --git
a/modules/enterprise/server/itests-2/src/test/resources/org/rhq/enterprise/server/resource/metadata/PluginManagerBeanTest/plugin_1.xml
b/modules/enterprise/server/itests-2/src/test/resources/org/rhq/enterprise/server/resource/metadata/PluginManagerBeanTest/plugin_1.xml
index 6680aa6..a639a3b 100644
---
a/modules/enterprise/server/itests-2/src/test/resources/org/rhq/enterprise/server/resource/metadata/PluginManagerBeanTest/plugin_1.xml
+++
b/modules/enterprise/server/itests-2/src/test/resources/org/rhq/enterprise/server/resource/metadata/PluginManagerBeanTest/plugin_1.xml
@@ -1,4 +1,5 @@
<plugin name="PluginManagerBeanTestPlugin1"
+ version="1.0"
package="org.rhq.plugins.test"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="urn:xmlns:rhq-plugin"
diff --git
a/modules/enterprise/server/itests-2/src/test/resources/org/rhq/enterprise/server/resource/metadata/PluginManagerBeanTest/plugin_2.xml
b/modules/enterprise/server/itests-2/src/test/resources/org/rhq/enterprise/server/resource/metadata/PluginManagerBeanTest/plugin_2.xml
index c6f8736..e2c7b22 100644
---
a/modules/enterprise/server/itests-2/src/test/resources/org/rhq/enterprise/server/resource/metadata/PluginManagerBeanTest/plugin_2.xml
+++
b/modules/enterprise/server/itests-2/src/test/resources/org/rhq/enterprise/server/resource/metadata/PluginManagerBeanTest/plugin_2.xml
@@ -1,4 +1,5 @@
<plugin name="PluginManagerBeanTestPlugin2"
+ version="1.0"
package="org.rhq.plugins.test"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="urn:xmlns:rhq-plugin"
diff --git
a/modules/enterprise/server/itests-2/src/test/resources/org/rhq/enterprise/server/resource/metadata/PluginManagerBeanTest/plugin_3.1.xml
b/modules/enterprise/server/itests-2/src/test/resources/org/rhq/enterprise/server/resource/metadata/PluginManagerBeanTest/plugin_3.1.xml
index e885167..ec2aef1 100644
---
a/modules/enterprise/server/itests-2/src/test/resources/org/rhq/enterprise/server/resource/metadata/PluginManagerBeanTest/plugin_3.1.xml
+++
b/modules/enterprise/server/itests-2/src/test/resources/org/rhq/enterprise/server/resource/metadata/PluginManagerBeanTest/plugin_3.1.xml
@@ -1,4 +1,5 @@
<plugin name="PluginManagerBeanTestPlugin3.1"
+ version="1.0"
package="org.rhq.plugins.test"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="urn:xmlns:rhq-plugin"
diff --git
a/modules/enterprise/server/itests-2/src/test/resources/org/rhq/enterprise/server/resource/metadata/PluginManagerBeanTest/plugin_3.xml
b/modules/enterprise/server/itests-2/src/test/resources/org/rhq/enterprise/server/resource/metadata/PluginManagerBeanTest/plugin_3.xml
index 78184bf..c2bde29 100644
---
a/modules/enterprise/server/itests-2/src/test/resources/org/rhq/enterprise/server/resource/metadata/PluginManagerBeanTest/plugin_3.xml
+++
b/modules/enterprise/server/itests-2/src/test/resources/org/rhq/enterprise/server/resource/metadata/PluginManagerBeanTest/plugin_3.xml
@@ -1,4 +1,5 @@
<plugin name="PluginManagerBeanTestPlugin3"
+ version="1.0"
package="org.rhq.plugins.test"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="urn:xmlns:rhq-plugin"