modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/auth/test/SubjectManagerBeanTest.java
| 26 +++++-----
modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/resource/metadata/MetadataBeanTest.java
| 16 +++++-
2 files changed, 27 insertions(+), 15 deletions(-)
New commits:
commit 092450d568cf8137e25a69337ea1669582dcd2df
Author: Jay Shaughnessy <jshaughn(a)jshaughn.csb>
Date: Wed Oct 31 17:44:14 2012 -0400
Get more tests running by altering BeforeXXXX/AfterXXX
stuff as needed.
diff --git
a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/auth/test/SubjectManagerBeanTest.java
b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/auth/test/SubjectManagerBeanTest.java
index 8426843..6d0a071 100644
---
a/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/auth/test/SubjectManagerBeanTest.java
+++
b/modules/enterprise/server/itests-2/src/test/java/org/rhq/enterprise/server/auth/test/SubjectManagerBeanTest.java
@@ -27,8 +27,6 @@ import java.util.UUID;
import javax.security.auth.login.LoginException;
-import org.testng.annotations.AfterMethod;
-import org.testng.annotations.BeforeClass;
import org.testng.annotations.Test;
import org.rhq.core.domain.auth.Subject;
@@ -53,7 +51,7 @@ import org.rhq.enterprise.server.util.LookupUtil;
*/
@Test
public class SubjectManagerBeanTest extends AbstractEJB3Test {
-
+
private SubjectManagerLocal subjectManager;
private AuthorizationManagerLocal authorizationManager;
private RoleManagerLocal roleManager;
@@ -61,8 +59,8 @@ public class SubjectManagerBeanTest extends AbstractEJB3Test {
/**
* Prepares things for the entire test class.
*/
- @BeforeClass
- public void beforeClass() {
+ @Override
+ public void beforeMethod() {
subjectManager = LookupUtil.getSubjectManager();
authorizationManager = LookupUtil.getAuthorizationManager();
roleManager = LookupUtil.getRoleManager();
@@ -71,8 +69,8 @@ public class SubjectManagerBeanTest extends AbstractEJB3Test {
/**
* This runs after each test method. It clears out all sessions.
*/
- @AfterMethod
- public void purgeAllSessions() {
+ @Override
+ public void afterMethod() {
// create a list of all users we know our tests have used
List<String> usernames = new ArrayList<String>();
usernames.add("admin");
@@ -469,7 +467,7 @@ public class SubjectManagerBeanTest extends AbstractEJB3Test {
}
}
-
+
public void testViewUsersPermission_subjectWithViewUsersRoleCanViewOtherUsers()
throws Exception {
getTransactionManager().begin();
@@ -489,7 +487,8 @@ public class SubjectManagerBeanTest extends AbstractEJB3Test {
Subject anotherSubject = new Subject("subject" + UUID.randomUUID(),
true, false);
anotherSubject = subjectManager.createSubject(overlord, anotherSubject,
"password");
- PageList<Subject> subjects =
subjectManager.findSubjectsByCriteria(subjectWithViewUsersRole, new SubjectCriteria());
+ PageList<Subject> subjects =
subjectManager.findSubjectsByCriteria(subjectWithViewUsersRole,
+ new SubjectCriteria());
Set<Subject> subjectSet = new HashSet<Subject>(subjects);
assertTrue(subjectSet.contains(subjectWithViewUsersRole));
assertTrue(subjectSet.contains(anotherSubject));
@@ -531,13 +530,15 @@ public class SubjectManagerBeanTest extends AbstractEJB3Test {
Subject subjectWithNonViewUsersRole = new Subject("subject" +
UUID.randomUUID(), true, false);
subjectWithNonViewUsersRole.addRole(roleWithoutViewUsersPerm);
- subjectWithNonViewUsersRole = subjectManager.createSubject(overlord,
subjectWithNonViewUsersRole, "password");
+ subjectWithNonViewUsersRole = subjectManager.createSubject(overlord,
subjectWithNonViewUsersRole,
+ "password");
subjectWithNonViewUsersRole =
subjectManager.loginUnauthenticated(subjectWithNonViewUsersRole.getName());
Subject anotherSubject = new Subject("subject" + UUID.randomUUID(),
true, false);
anotherSubject = subjectManager.createSubject(overlord, anotherSubject,
"password");
- PageList<Subject> subjects =
subjectManager.findSubjectsByCriteria(subjectWithNonViewUsersRole, new
SubjectCriteria());
+ PageList<Subject> subjects =
subjectManager.findSubjectsByCriteria(subjectWithNonViewUsersRole,
+ new SubjectCriteria());
Set<Subject> subjectSet = new HashSet<Subject>(subjects);
assertEquals(1, subjectSet.size());
assertTrue(subjectSet.contains(subjectWithNonViewUsersRole));
@@ -559,7 +560,8 @@ public class SubjectManagerBeanTest extends AbstractEJB3Test {
Subject anotherSubject = new Subject("subject" + UUID.randomUUID(),
true, false);
anotherSubject = subjectManager.createSubject(overlord, anotherSubject,
"password");
- PageList<Subject> subjects =
subjectManager.findSubjectsByCriteria(subjectWithNoRoles, new SubjectCriteria());
+ PageList<Subject> subjects =
subjectManager.findSubjectsByCriteria(subjectWithNoRoles,
+ new SubjectCriteria());
Set<Subject> subjectSet = new HashSet<Subject>(subjects);
assertEquals(1, subjectSet.size());
assertTrue(subjectSet.contains(subjectWithNoRoles));
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 755f910..a3ca64c 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
@@ -30,7 +30,6 @@ import org.dbunit.dataset.xml.FlatXmlProducer;
import org.dbunit.operation.DatabaseOperation;
import org.testng.annotations.AfterClass;
import org.testng.annotations.AfterMethod;
-import org.testng.annotations.BeforeGroups;
import org.testng.annotations.BeforeMethod;
import org.xml.sax.InputSource;
@@ -53,8 +52,10 @@ public class MetadataBeanTest extends AbstractEJB3Test {
private List<Integer> pluginIds = new ArrayList<Integer>();
-
- @BeforeGroups(groups = { "plugin.metadata" }, dependsOnGroups = {
"integration.ejb3" })
+ // @BeforeGroups currently executes only as client (remote) only with
Arquillian/testNg. So,
+ // we can't get DS here. Now called from BeforeMethod.
+ //
+ //@BeforeGroups(groups = { "plugin.metadata" }, dependsOnGroups = {
"integration.ejb3" })
public void beforeGroups() throws Exception {
setupDB();
}
@@ -66,6 +67,12 @@ public class MetadataBeanTest extends AbstractEJB3Test {
*/
@AfterClass(alwaysRun = true, groups = { "plugin.metadata" })
void afterClass() throws Exception {
+ // Although its documented that AfterXXX don't execute in-container (only as
client), in practice this is not true
+ // and we perform in-container work here.
+ if (!inContainer()) {
+ return;
+ }
+
PluginManagerLocal pluginMgr = LookupUtil.getPluginManager();
Subject overlord = LookupUtil.getSubjectManager().getOverlord();
pluginMgr.deletePlugins(overlord, pluginIds);
@@ -80,6 +87,9 @@ public class MetadataBeanTest extends AbstractEJB3Test {
return;
}
+ // @BeforeGroups currently executed only as client (remote) only with
Arquillian/testNg, so call from here instead
+ beforeGroups();
+
TestBundleServerPluginService bundleService = new
TestBundleServerPluginService();
prepareCustomServerPluginService(bundleService);
bundleService.startMasterPluginContainerWithoutSchedulingJobs();