[jboss-cvs] jbosstest/src/main/org/jboss/test/jaxr/scout/query/infomodel ...
Anil Saldhana
anil.saldhana at jboss.com
Thu Jul 20 13:19:17 EDT 2006
User: asaldhana
Date: 06/07/20 13:19:17
Added: src/main/org/jboss/test/jaxr/scout/query/infomodel
JaxrFindAssociationsTestCase.java
Log:
JBAS-2621: JAXR testcases
Revision Changes Path
1.2 +210 -0 jbosstest/src/main/org/jboss/test/jaxr/scout/query/infomodel/JaxrFindAssociationsTestCase.java
(In the diff below, changes in quantity of whitespace are not shown.)
Index: JaxrFindAssociationsTestCase.java
===================================================================
RCS file: JaxrFindAssociationsTestCase.java
diff -N JaxrFindAssociationsTestCase.java
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ JaxrFindAssociationsTestCase.java 20 Jul 2006 17:19:17 -0000 1.2
@@ -0,0 +1,210 @@
+/*
+* JBoss, Home of Professional Open Source
+* Copyright 2005, JBoss Inc., and individual contributors as indicated
+* by the @authors tag. See the copyright.txt in the distribution for a
+* full listing of individual contributors.
+*
+* This is free software; you can redistribute it and/or modify it
+* under the terms of the GNU Lesser General Public License as
+* published by the Free Software Foundation; either version 2.1 of
+* the License, or (at your option) any later version.
+*
+* This software 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
+* Lesser General Public License for more details.
+*
+* You should have received a copy of the GNU Lesser General Public
+* License along with this software; if not, write to the Free
+* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+*/
+package org.jboss.test.jaxr.scout.query.infomodel;
+
+import org.jboss.test.jaxr.scout.JaxrBaseTestCase;
+import org.jboss.test.jaxr.scout.util.ScoutUtil;
+
+import javax.xml.registry.BulkResponse;
+import javax.xml.registry.BusinessLifeCycleManager;
+import javax.xml.registry.BusinessQueryManager;
+import javax.xml.registry.Connection;
+import javax.xml.registry.JAXRException;
+import javax.xml.registry.LifeCycleManager;
+import javax.xml.registry.RegistryService;
+import javax.xml.registry.infomodel.Association;
+import javax.xml.registry.infomodel.Concept;
+import javax.xml.registry.infomodel.Key;
+import javax.xml.registry.infomodel.Organization;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Iterator;
+
+/**
+ * Tests FindAssociation using JAXR API
+ * @author <mailto:Anil.Saldhana at jboss.org>Anil Saldhana
+ * @since Mar 9, 2005
+ */
+public class JaxrFindAssociationsTestCase extends JaxrBaseTestCase
+{
+ public void testFindAssociations() throws JAXRException
+ {
+
+ String orgSource = "Source Organization";
+ String type = "Implements";
+
+ Key savekey = null;
+ Key assockey = null;
+
+ BusinessQueryManager bqm2 = null;
+ BusinessLifeCycleManager blm2 = null;
+ Collection associationKeys = null;
+ Collection sourceKeys = null;
+ Collection targetKeys = null;
+ String targetId = null;
+ String sourceId = null;
+ String orgTarget = "Target Organization";
+
+ try
+ {
+ login();
+ getJAXREssentials();
+ // Authenticate second user
+ Connection con2 = loginSecondUser();
+ RegistryService rs2 = con2.getRegistryService();
+ blm2 = rs2.getBusinessLifeCycleManager();
+ bqm2 = rs2.getBusinessQueryManager();
+
+ Organization source = blm.createOrganization(blm.createInternationalString(orgSource));
+ Organization target = blm2.createOrganization(blm.createInternationalString(orgTarget));
+
+ // publish the source organization
+ Collection orgs = new ArrayList();
+ orgs.add(source);
+ br = blm.saveOrganizations(orgs);
+ if (br.getExceptions() != null)
+ {
+ fail(" Source:Save Orgs failed");
+ }
+
+ sourceKeys = br.getCollection();
+ Iterator iter = sourceKeys.iterator();
+ while (iter.hasNext())
+ {
+ savekey = (Key)iter.next();
+ }
+ sourceId = savekey.getId();
+ String objectType = LifeCycleManager.ORGANIZATION;
+ Organization pubSource = (Organization)bqm.getRegistryObject(sourceId, objectType);
+ assertNotNull(pubSource.getName().getValue());
+
+ // publish the target
+ orgs.clear();
+ orgs.add(target);
+ br = blm2.saveOrganizations(orgs);
+ if (br.getExceptions() != null)
+ {
+ fail(" Target:Save Orgs failed");
+ }
+ targetKeys = br.getCollection();
+ iter = targetKeys.iterator();
+ while (iter.hasNext())
+ {
+ savekey = (Key)iter.next();
+ }
+ targetId = savekey.getId();
+ Organization pubTarget = (Organization)bqm2.getRegistryObject(targetId, objectType);
+
+ Concept associationType = getAssociationConcept(type);
+ if (associationType == null)
+ fail(" getAssociationConcept returned null associationType");
+
+ Association a = blm.createAssociation(pubTarget, associationType);
+ a.setSourceObject(pubSource);
+
+ blm.confirmAssociation(a); //First user
+ blm2.confirmAssociation(a); //Second user
+
+ // publish Association
+ Collection associations = new ArrayList();
+ associations.add(a);
+ // Second user saves the association.
+ br = blm2.saveAssociations(associations, false);
+
+ if (br.getExceptions() != null)
+ {
+ fail("Error:Save Associations failed \n");
+ }
+ BulkResponse targetAssoc = bqm.findCallerAssociations(null,
+ new Boolean(true),
+ new Boolean(true),
+ null);
+
+ if (targetAssoc.getExceptions() == null)
+ {
+ Collection targetCol = targetAssoc.getCollection();
+ if (targetCol.size() > 0)
+ {
+ iter = targetCol.iterator();
+ while (iter.hasNext())
+ {
+ Association a1 = (Association)iter.next();
+ Organization o = (Organization)a1.getSourceObject();
+ o = (Organization)a1.getTargetObject();
+ Concept atype = a1.getAssociationType();
+ assertNotNull("Concept Type stored in Association", atype);
+ }
+ }
+ }
+
+
+ br = null;
+ Collection associationTypes = new ArrayList();
+ associationTypes.add(type);
+ br = bqm.findAssociations(null, sourceId, targetId, null);
+ if (br.getExceptions() != null)
+ {
+ fail("Error: findAssociations failed ");
+ }
+ associations = null;
+ associations = br.getCollection();
+ if (associations.size() > 0)
+ {
+ iter = associations.iterator();
+ while (iter.hasNext())
+ {
+ Association a1 = (Association)iter.next();
+ assockey = a1.getKey();
+ ScoutUtil.validateAssociation(a1,orgSource);
+ }
+ }
+ }
+ catch (Exception e)
+ {
+ e.printStackTrace();
+ fail(" Test failed ");
+ }
+ finally
+ {
+ //Clean Up
+ try
+ {
+ if (assockey != null)
+ {
+ associationKeys = new ArrayList();
+ associationKeys.add(assockey);
+ blm.deleteAssociations(associationKeys);
+ }
+ blm2.deleteOrganizations(targetKeys);
+ blm.deleteOrganizations(sourceKeys);
+ }
+ catch (JAXRException ex)
+ {
+ ex.printStackTrace();
+ fail("Error: Cleanup failed");
+ }
+ }
+
+ } // end of method
+
+
+}
More information about the jboss-cvs-commits
mailing list