[305215] fix for ejb tests
diff --git a/tests/org.eclipse.jst.j2ee.tests/j2ee-tests/org/eclipse/jst/j2ee/dependency/tests/ProjectCreationTests.java b/tests/org.eclipse.jst.j2ee.tests/j2ee-tests/org/eclipse/jst/j2ee/dependency/tests/ProjectCreationTests.java
index 51fb83f..f60dc2e 100644
--- a/tests/org.eclipse.jst.j2ee.tests/j2ee-tests/org/eclipse/jst/j2ee/dependency/tests/ProjectCreationTests.java
+++ b/tests/org.eclipse.jst.j2ee.tests/j2ee-tests/org/eclipse/jst/j2ee/dependency/tests/ProjectCreationTests.java
@@ -70,7 +70,7 @@
DependencyVerificationUtil.verifyComponentReference(earProject, ejbClient, DependencyVerificationUtil.ROOT, true);
// check dependencies from EJB to EJB client
- DependencyVerificationUtil.verifyModuleDependency(ejbProject, ejbClient);
+ //DependencyVerificationUtil.verifyModuleDependency(ejbProject, ejbClient);
DependencyVerificationUtil.verifyManifestReference(ejbProject, ejbClient.getName() + ".jar", true);
}
diff --git a/tests/org.eclipse.jst.j2ee.tests/j2ee-verifiers/org/eclipse/wtp/j2ee/headless/tests/ejb/verifiers/EJBProjectCreationDataModelVerifier.java b/tests/org.eclipse.jst.j2ee.tests/j2ee-verifiers/org/eclipse/wtp/j2ee/headless/tests/ejb/verifiers/EJBProjectCreationDataModelVerifier.java
index 4a11f33..1738f3f 100644
--- a/tests/org.eclipse.jst.j2ee.tests/j2ee-verifiers/org/eclipse/wtp/j2ee/headless/tests/ejb/verifiers/EJBProjectCreationDataModelVerifier.java
+++ b/tests/org.eclipse.jst.j2ee.tests/j2ee-verifiers/org/eclipse/wtp/j2ee/headless/tests/ejb/verifiers/EJBProjectCreationDataModelVerifier.java
@@ -22,15 +22,20 @@
import org.eclipse.core.resources.IFolder;
import org.eclipse.core.resources.IProject;
import org.eclipse.jem.util.emf.workbench.ProjectUtilities;
+import org.eclipse.jst.j2ee.dependency.tests.util.DependencyVerificationUtil;
import org.eclipse.jst.j2ee.ejb.project.operations.IEjbFacetInstallDataModelProperties;
import org.eclipse.jst.j2ee.internal.J2EEConstants;
import org.eclipse.jst.j2ee.internal.J2EEVersionConstants;
import org.eclipse.jst.j2ee.internal.project.J2EEProjectUtilities;
+import org.eclipse.jst.j2ee.project.EarUtilities;
import org.eclipse.jst.j2ee.project.facet.IJ2EEFacetProjectCreationDataModelProperties;
import org.eclipse.jst.j2ee.project.facet.IJ2EEModuleFacetInstallDataModelProperties;
import org.eclipse.jst.javaee.ejb.EJBJar;
+import org.eclipse.wst.common.componentcore.ComponentCore;
import org.eclipse.wst.common.componentcore.datamodel.properties.IFacetProjectCreationDataModelProperties;
import org.eclipse.wst.common.componentcore.datamodel.properties.IFacetProjectCreationDataModelProperties.FacetDataModelMap;
+import org.eclipse.wst.common.componentcore.resources.IVirtualComponent;
+import org.eclipse.wst.common.componentcore.resources.IVirtualReference;
import org.eclipse.wst.common.frameworks.datamodel.IDataModel;
import org.eclipse.wtp.j2ee.headless.tests.j2ee.verifiers.ModuleProjectCreationDataModelVerifier;
@@ -83,39 +88,28 @@
String clientName = facetModel.getStringProperty(IEjbFacetInstallDataModelProperties.CLIENT_NAME);
IProject clientProject = ProjectUtilities.getProject(clientName);
Assert.assertTrue("Client project should exist", clientProject.exists());
-
- //be sure project has reference to client project
- IProject[] referencedProjs = project.getReferencedProjects();
- boolean foundRef = false;
- for(int i = 0; i < referencedProjs.length && !foundRef; i++) {
- foundRef = referencedProjs[i].getName().equals(clientProject.getName());
- }
- Assert.assertTrue("EJB should have a reference to its client", foundRef);
-
- //be sure that both the EAR and the EJB reference the client
+
String earName = model.getStringProperty(IJ2EEFacetProjectCreationDataModelProperties.EAR_PROJECT_NAME);
- IProject[] clientReferencingProjs = clientProject.getReferencingProjects();
- boolean foundClientReferencingEAR = false;
- boolean foundClientReferencingEJB = false;
- for(int i = 0; i < clientReferencingProjs.length && (!foundClientReferencingEAR || !foundClientReferencingEJB); i++) {
- if(clientReferencingProjs[i].getName().equals(project.getName())) {
- foundClientReferencingEJB = true;
- } else if (clientReferencingProjs[i].getName().equals(earName)) {
- foundClientReferencingEAR = true;
- }
- }
- Assert.assertTrue("The created EAR should be referencing the EJB client project", foundClientReferencingEAR);
- Assert.assertTrue("The crated EJB should be referencing the EJB client project", foundClientReferencingEJB);
//be sure the created EAR has reference to the created EJB client
IProject ear = ProjectUtilities.getProject(earName);
- IProject[] earReferencedProjs = ear.getReferencedProjects();
boolean foundEARRefToClient = false;
- for(int i = 0; i < earReferencedProjs.length && !foundEARRefToClient; i++) {
- foundEARRefToClient = earReferencedProjs[i].getName().equals(clientName);
+ IVirtualReference[] refs = EarUtilities.getUtilityModuleReferences(ComponentCore.createComponent(ear));
+ IVirtualComponent clientComp = ComponentCore.createComponent(clientProject);
+ for (int i = 0; i < refs.length; i++) {
+ IVirtualReference virtualReference = refs[i];
+ if (virtualReference.getReferencedComponent().equals(clientComp))
+ foundEARRefToClient = true;
}
Assert.assertTrue("The created EAR should have a reference to the created EJB client project", foundEARRefToClient);
+ //be sure EJB has a MANIFEST entry to the EJB client
+ String ejbName = facetModel.getStringProperty(IEjbFacetInstallDataModelProperties.FACET_PROJECT_NAME);
+ String ejbClientName = facetModel.getStringProperty(IEjbFacetInstallDataModelProperties.CLIENT_NAME);
+ IProject ejbProject = ProjectUtilities.getProject(ejbName);
+ DependencyVerificationUtil.verifyManifestReference(ejbProject,ejbClientName + ".jar", true);
+
+
//be sure the EJB client source folder was created
String clientSourceFolderPath = facetModel.getStringProperty(IJ2EEModuleFacetInstallDataModelProperties.CONFIG_FOLDER);
IFolder clientSourceFolder = clientProject.getFolder(clientSourceFolderPath);