SCOUT-52 refactoring unittests

git-svn-id: https://svn.apache.org/repos/asf/webservices/scout/trunk/scout@591890 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/src/test/java/org/apache/ws/scout/Creator.java b/src/test/java/org/apache/ws/scout/Creator.java
index 01aac65..b471168 100644
--- a/src/test/java/org/apache/ws/scout/Creator.java
+++ b/src/test/java/org/apache/ws/scout/Creator.java
@@ -89,9 +89,9 @@
      * @return JAXR Service
      * @throws JAXRException
      */
-    public Service createService() throws JAXRException
+    public Service createService(String name) throws JAXRException
     {
-        Service service = blm.createService(getIString("JAXRTestService"));
+        Service service = blm.createService(getIString(name));
         service.setDescription(getIString("Test Services of UDDI Registry"));
         return service;
     }
@@ -115,12 +115,10 @@
      * @return JAXR ClassificationScheme
      * @throws JAXRException
      */
-    public ClassificationScheme createClassificationScheme() throws JAXRException
+    public ClassificationScheme createClassificationScheme(String name) throws JAXRException
     {
-        ClassificationScheme cs = blm.createClassificationScheme(getIString("apache-org:scout"),
+        ClassificationScheme cs = blm.createClassificationScheme(getIString(name),
                 getIString(""));
-        //Key cKey = blm.createKey("uuid:C0B9FE13-324F-413D-5A5B-2004DB8E5CC2");
-        //cs.setKey(cKey);
         return cs;
     }
     /**
@@ -130,9 +128,8 @@
      * @return
      * @throws JAXRException
      */
-    public Classification createClassification() throws JAXRException
+    public Classification createClassification(ClassificationScheme classificationScheme) throws JAXRException
     {
-        ClassificationScheme classificationScheme = createClassificationScheme();
         Classification classification = blm.createClassification(classificationScheme,
                 "Java Api for Xml Registries Services","1234");
         return classification;
diff --git a/src/test/java/org/apache/ws/scout/Finder.java b/src/test/java/org/apache/ws/scout/Finder.java
index 62ca1b6..e309a2a 100644
--- a/src/test/java/org/apache/ws/scout/Finder.java
+++ b/src/test/java/org/apache/ws/scout/Finder.java
@@ -84,6 +84,25 @@
         
         return response.getCollection();
     }
+    
+    public ClassificationScheme findClassificationSchemeByName(String queryStr) throws JAXRException {
+        // Define find qualifiers and name patterns
+        Collection<String> findQualifiers = new ArrayList<String>();
+        findQualifiers.add(FindQualifier.SORT_BY_NAME_ASC);
+        Collection<String> namePatterns = new ArrayList<String>();
+        namePatterns.add("%" + queryStr + "%");
+        
+        // Find based upon qualifier type and values
+        System.out.println("\n-- searching the registry --\n");
+        BulkResponse response =
+            bqm.findClassificationSchemes(findQualifiers,
+                    namePatterns,
+                    null,
+                    null);
+        
+        return (ClassificationScheme) response.getCollection().iterator().next();
+    }
+    
     /**
      * Search a service, by matching the name and the classification.
      * 
diff --git a/src/test/java/org/apache/ws/scout/registry/BusinessLifeCyleManagerlTest.java b/src/test/java/org/apache/ws/scout/registry/BusinessLifeCyleManagerlTest.java
index ee31547..5b1ace0 100644
--- a/src/test/java/org/apache/ws/scout/registry/BusinessLifeCyleManagerlTest.java
+++ b/src/test/java/org/apache/ws/scout/registry/BusinessLifeCyleManagerlTest.java
@@ -7,10 +7,13 @@
 import java.util.Collection;
 
 import javax.xml.registry.BulkResponse;
+import javax.xml.registry.JAXRException;
 import javax.xml.registry.JAXRResponse;
 import javax.xml.registry.RegistryService;
+import javax.xml.registry.infomodel.ClassificationScheme;
 import javax.xml.registry.infomodel.Key;
 import javax.xml.registry.infomodel.Organization;
+import javax.xml.registry.infomodel.Service;
 
 import junit.framework.JUnit4TestAdapter;
 
@@ -51,7 +54,7 @@
             Organization organization = creator.createOrganization(this.getClass().getName());
             orgs.add(organization);
 
-            //Now save the Organization along with a Service, ServiceBinding and Classification
+            //save the Organization
             BulkResponse br = blm.saveOrganizations(orgs);
             assertEquals(JAXRResponse.STATUS_SUCCESS, br.getStatus());
             orgKeys = (Collection<Key>) br.getCollection();
@@ -70,30 +73,84 @@
             fail(e.getMessage());
         }
     }
+    
+    @SuppressWarnings("unchecked")
+    @Test
+    public void saveDeleteClassificationSchemes() 
+    {
+        login();
+       
+        try {
+            RegistryService rs = connection.getRegistryService();
+            blm = rs.getBusinessLifeCycleManager();
+            
+            ClassificationScheme cScheme = blm.createClassificationScheme("testScheme -- APACHE SCOUT TEST", "Sample Classification Scheme");
+
+            ArrayList<ClassificationScheme> cSchemes = new ArrayList<ClassificationScheme>();
+            cSchemes.add(cScheme);
+            //save
+            BulkResponse br = blm.saveClassificationSchemes(cSchemes);
+            assertEquals(BulkResponse.STATUS_SUCCESS, br.getStatus());
+            //remove
+            BulkResponse br2 = blm.deleteClassificationSchemes((Collection<Key>)br.getCollection());
+            assertEquals(BulkResponse.STATUS_SUCCESS, br2.getStatus());
+        } catch (JAXRException je) {
+            fail(je.getMessage());
+        }
+    }
+    
+    @SuppressWarnings("unchecked")
+    @Test
+    public void saveDeleteServices() 
+    {
+        login();
+       
+        try {
+            RegistryService rs = connection.getRegistryService();
+            blm = rs.getBusinessLifeCycleManager();
+            Creator creator = new Creator(blm);
+            Collection<Organization> orgs = new ArrayList<Organization>();
+            Organization organization = creator.createOrganization(this.getClass().getName());
+            orgs.add(organization);
+//          save the Organization
+            BulkResponse br = blm.saveOrganizations(orgs);
+            assertEquals(JAXRResponse.STATUS_SUCCESS, br.getStatus());
+            organization.setKey((Key)br.getCollection().iterator().next());
+            
+            Service service = creator.createService(this.getClass().getName());
+            ArrayList<Service> services = new ArrayList<Service>();
+            organization.addService(service);
+            services.add(service);
+            //save service
+            BulkResponse br2 = blm.saveServices(services);
+            assertEquals(BulkResponse.STATUS_SUCCESS, br2.getStatus());
+            //remove service
+            BulkResponse br3 = blm.deleteServices((Collection<Key>)br2.getCollection());
+            assertEquals(BulkResponse.STATUS_SUCCESS, br3.getStatus());
+            //remove organization
+            BulkResponse br4 = blm.deleteOrganizations((Collection<Key>)br.getCollection());
+            assertEquals(JAXRResponse.STATUS_SUCCESS, br4.getStatus());
+        } catch (JAXRException je) {
+            fail(je.getMessage());
+        }
+    }
+        
+            
+            
     //TODO cover these methods
     
 //    BulkResponse deleteAssociations(Collection<Key> associationKeys) throws JAXRException;
 //
-//    BulkResponse deleteClassificationSchemes(Collection<Key> schemeKeys) throws JAXRException;
-//
 //    BulkResponse deleteConcepts(Collection<Key> conceptKeys) throws JAXRException;
 //
 //    BulkResponse deleteServiceBindings(Collection<Key> bindingKeys) throws JAXRException;
 //
-//    BulkResponse deleteServices(Collection<Key> serviceKeys) throws JAXRException;
-//
 //    BulkResponse saveAssociations(Collection<Association> associations, boolean replace) throws JAXRException;
 //
-//    BulkResponse saveClassificationSchemes(Collection<ClassificationScheme> schemes) throws JAXRException;
-//
-//    BulkResponse saveConcepts(Collection<Concept> concepts) throws JAXRException;
-//
-      
+//    BulkResponse saveConcepts(Collection<Concept> concepts) throws JAXRException;  
 //
 //    BulkResponse saveServiceBindings(Collection<ServiceBinding> bindings) throws JAXRException;
 //
-//    BulkResponse saveServices(Collection<Service> services) throws JAXRException;
-//
 //    void unConfirmAssociation(Association assoc) throws JAXRException, InvalidRequestException;
     
     public static junit.framework.Test suite() {
diff --git a/src/test/java/org/apache/ws/scout/registry/qa/JAXR010OrganizationTest.java b/src/test/java/org/apache/ws/scout/registry/qa/JAXR010OrganizationTest.java
index e03b400..878b214 100644
--- a/src/test/java/org/apache/ws/scout/registry/qa/JAXR010OrganizationTest.java
+++ b/src/test/java/org/apache/ws/scout/registry/qa/JAXR010OrganizationTest.java
@@ -79,7 +79,7 @@
             Creator creator = new Creator(blm);
             
             Collection<ClassificationScheme> schemes = new ArrayList<ClassificationScheme>();
-            ClassificationScheme classificationScheme = creator.createClassificationScheme();
+            ClassificationScheme classificationScheme = creator.createClassificationScheme(this.getClass().getName());
             schemes.add(classificationScheme);
             
             BulkResponse bulkResponse = blm.saveClassificationSchemes(schemes);
@@ -101,17 +101,20 @@
         {
             RegistryService rs = connection.getRegistryService();
             blm = rs.getBusinessLifeCycleManager();
+            bqm = rs.getBusinessQueryManager();
             Creator creator = new Creator(blm);
+            Finder finder = new Finder(bqm);
             
             Collection<Organization> orgs = new ArrayList<Organization>();
             Organization organization = creator.createOrganization(this.getClass().getName());
 //          Add a Service
-            Service service = creator.createService();
+            Service service = creator.createService(this.getClass().getName());
             ServiceBinding serviceBinding = creator.createServiceBinding();
             service.addServiceBinding(serviceBinding);
             organization.addService(service);
             //Add a classification
-            Classification classification = creator.createClassification();
+            ClassificationScheme cs = finder.findClassificationSchemeByName(this.getClass().getName());
+            Classification classification = creator.createClassification(cs);
             organization.addClassification(classification);
             
             orgs.add(organization);
@@ -151,6 +154,7 @@
     @Test
     public void queryOrganization()
     {
+        login();
         try
         {
             // Get registry service and business query manager
@@ -213,6 +217,7 @@
     @Test
     public void deleteClassificationScheme()
     {
+        login();
         try {
             RegistryService rs = connection.getRegistryService();
             bqm = rs.getBusinessQueryManager();