You are viewing a plain text version of this content. The canonical link for it is here.
Posted to wsrf-dev@ws.apache.org by sc...@apache.org on 2005/03/02 22:44:50 UTC

svn commit: r155962 - in incubator/apollo/trunk/src/site/content/example/src: java/org/oasisOpen/docs/wsrf/x2005/x01/wsrfInterop20Draft03Wsdl/ test/org/oasisOpen/docs/wsrf/

Author: scamp
Date: Wed Mar  2 13:44:48 2005
New Revision: 155962

URL: http://svn.apache.org/viewcvs?view=rev&rev=155962
Log: (empty)


Modified:
    incubator/apollo/trunk/src/site/content/example/src/java/org/oasisOpen/docs/wsrf/x2005/x01/wsrfInterop20Draft03Wsdl/JobPortHome.java
    incubator/apollo/trunk/src/site/content/example/src/test/org/oasisOpen/docs/wsrf/AllScenarios.java
    incubator/apollo/trunk/src/site/content/example/src/test/org/oasisOpen/docs/wsrf/DScenario.java
    incubator/apollo/trunk/src/site/content/example/src/test/org/oasisOpen/docs/wsrf/EScenario.java
    incubator/apollo/trunk/src/site/content/example/src/test/org/oasisOpen/docs/wsrf/InteropTestCase.java

Modified: incubator/apollo/trunk/src/site/content/example/src/java/org/oasisOpen/docs/wsrf/x2005/x01/wsrfInterop20Draft03Wsdl/JobPortHome.java
URL: http://svn.apache.org/viewcvs/incubator/apollo/trunk/src/site/content/example/src/java/org/oasisOpen/docs/wsrf/x2005/x01/wsrfInterop20Draft03Wsdl/JobPortHome.java?view=diff&r1=155961&r2=155962
==============================================================================
--- incubator/apollo/trunk/src/site/content/example/src/java/org/oasisOpen/docs/wsrf/x2005/x01/wsrfInterop20Draft03Wsdl/JobPortHome.java (original)
+++ incubator/apollo/trunk/src/site/content/example/src/java/org/oasisOpen/docs/wsrf/x2005/x01/wsrfInterop20Draft03Wsdl/JobPortHome.java Wed Mar  2 13:44:48 2005
@@ -122,10 +122,8 @@
                                      PrinterPortResource  printerResource )
    {
       ++m_jobId; //todo generate a job id.....counter?
-      SimpleTypeResourceKey key    =
-         new SimpleTypeResourceKey( QName.valueOf( "{http://docs.oasis-open.org/wsrf/2005/01/wsrf-Interop-2.0-draft-03.wsdl}ResourceID" ),
-                                    Long.toString( m_jobId ) );
-      EndpointReferenceType jobEpr = getEprForResource( key,
+       SimpleTypeResourceKey key = createResourceKey();
+       EndpointReferenceType jobEpr = getEprForResource( key,
                                                         resourceContext.getBaseURL(  ) );
       JobPortResource       job    = new JobPortResource( jobEpr, m_jobId, jobName, origUserName, printerResource );
       job.init(  );
@@ -133,7 +131,15 @@
       return job;
    }
 
-   /**
+    private SimpleTypeResourceKey createResourceKey()
+    {
+        SimpleTypeResourceKey key    =
+           new SimpleTypeResourceKey( QName.valueOf( "{http://docs.oasis-open.org/wsrf/2005/01/wsrf-Interop-2.0-draft-03.wsdl}ResourceID" ),
+                                      "Job" + Integer.toString( (int) m_jobId ) );
+        return key;
+    }
+
+    /**
     * DOCUMENT_ME
     *
     * @param resourceContext DOCUMENT_ME
@@ -147,10 +153,8 @@
                                      PrinterPortResource printerResource )
    {
       ++m_jobId;
-      SimpleTypeResourceKey key    =
-         new SimpleTypeResourceKey( QName.valueOf( "{http://docs.oasis-open.org/wsrf/2005/01/wsrf-Interop-2.0-draft-03.wsdl}ResourceID" ),
-                                    "Job" + Integer.toString( (int) m_jobId ) );
-      EndpointReferenceType jobEpr = getEprForResource( key,
+       SimpleTypeResourceKey key = createResourceKey();
+       EndpointReferenceType jobEpr = getEprForResource( key,
                                                         resourceContext.getBaseURL(  ) );
       JobPortResource       job    = new JobPortResource( jobEpr, m_jobId, jobName, printerResource );
       job.init(  );

Modified: incubator/apollo/trunk/src/site/content/example/src/test/org/oasisOpen/docs/wsrf/AllScenarios.java
URL: http://svn.apache.org/viewcvs/incubator/apollo/trunk/src/site/content/example/src/test/org/oasisOpen/docs/wsrf/AllScenarios.java?view=diff&r1=155961&r2=155962
==============================================================================
--- incubator/apollo/trunk/src/site/content/example/src/test/org/oasisOpen/docs/wsrf/AllScenarios.java (original)
+++ incubator/apollo/trunk/src/site/content/example/src/test/org/oasisOpen/docs/wsrf/AllScenarios.java Wed Mar  2 13:44:48 2005
@@ -2,22 +2,52 @@
 
 import junit.framework.Test;
 import junit.framework.TestSuite;
+import junit.framework.TestCase;
+
+import java.io.IOException;
 
 
 /**
  * @author Sal Campana
  */
-public class AllScenarios
+public class AllScenarios extends TestCase
 {
-    public static Test suite()
+    public void testAllScenarios() throws Exception
     {
-        TestSuite suite = new TestSuite();
-        suite.addTestSuite(AScenarios.class);
-        suite.addTestSuite(BScenarios.class);
-        suite.addTestSuite(CScenarios.class);
-        suite.addTestSuite(DScenario.class);
-        suite.addTestSuite(EScenario.class);
-        return suite;
+        InteropTestCase testCase = new InteropTestCase();
+        testCase.setUp();
+
+        //create printer
+        testCase.createPrinter();
+
+        //A scenarios
+        testCase.testValidatePrinterInitialState();
+        testCase.testGetPrinterQueueCount_SCENARIO_A1();
+        testCase.testGetPrinterStateAndQueueCount_SCENARIO_A2();
+        testCase.testGetPrinterResourcePropertiesDocument_SCENARIO_A3();
+        testCase.testQueryResourceProperties_SCENARIO_A4();
+
+        //B scenarios
+        testCase.testUpdateResourceProperties_SCENARIO_B1();
+        testCase.testFailInsertResourceProps_SCENARIO_B1_FAIL();
+        testCase.testSetResourceProperties_SCENARIO_B2();
+        testCase.testMultiSetResourceProps_SCENARIO_B3();
+        testCase.testFailMultiSetResourceProps_SCENARIO_B3_VARIANT();
+        testCase.testResetToInitialState_SCENARIO_B3_RESET();
+
+        //C scenarios
+        testCase.testPrintJob_SCENARIO_C();
+        testCase.testValidatePrinterJobProperties();
+
+        //D scenarios
+        testCase.testDestroy_SCENARIO_D();        
+
+        //E scenarios
+        testCase.testCreateJob_SCENARIO_E();
+        testCase.testSetTerminationTime_SCENARIO_E_CONTINUED();
+        testCase.testSendDocument_SCENARIO_E_CONTINUED();
+
+        testCase.tearDown();
     }
 
 }

Modified: incubator/apollo/trunk/src/site/content/example/src/test/org/oasisOpen/docs/wsrf/DScenario.java
URL: http://svn.apache.org/viewcvs/incubator/apollo/trunk/src/site/content/example/src/test/org/oasisOpen/docs/wsrf/DScenario.java?view=diff&r1=155961&r2=155962
==============================================================================
--- incubator/apollo/trunk/src/site/content/example/src/test/org/oasisOpen/docs/wsrf/DScenario.java (original)
+++ incubator/apollo/trunk/src/site/content/example/src/test/org/oasisOpen/docs/wsrf/DScenario.java Wed Mar  2 13:44:48 2005
@@ -19,8 +19,7 @@
         testCase.testUpdateResourceProperties_SCENARIO_B1();
         testCase.testPrintJob_SCENARIO_C();
 
-        testCase.testDestroy_SCENARIO_D();
-        testCase.testFailDestroy_SCENARIO_D_FAIL();
+        testCase.testDestroy_SCENARIO_D();        
 
         testCase.tearDown();
     }

Modified: incubator/apollo/trunk/src/site/content/example/src/test/org/oasisOpen/docs/wsrf/EScenario.java
URL: http://svn.apache.org/viewcvs/incubator/apollo/trunk/src/site/content/example/src/test/org/oasisOpen/docs/wsrf/EScenario.java?view=diff&r1=155961&r2=155962
==============================================================================
--- incubator/apollo/trunk/src/site/content/example/src/test/org/oasisOpen/docs/wsrf/EScenario.java (original)
+++ incubator/apollo/trunk/src/site/content/example/src/test/org/oasisOpen/docs/wsrf/EScenario.java Wed Mar  2 13:44:48 2005
@@ -18,7 +18,7 @@
         testCase.testUpdateResourceProperties_SCENARIO_B1();
         testCase.testSetResourceProperties_SCENARIO_B2();
 
-        testCase.testScheduledTermination_SCENARIO_E();
+        testCase.testCreateJob_SCENARIO_E();
         testCase.testSetTerminationTime_SCENARIO_E_CONTINUED();
 
         testCase.testSendDocument_SCENARIO_E_CONTINUED();

Modified: incubator/apollo/trunk/src/site/content/example/src/test/org/oasisOpen/docs/wsrf/InteropTestCase.java
URL: http://svn.apache.org/viewcvs/incubator/apollo/trunk/src/site/content/example/src/test/org/oasisOpen/docs/wsrf/InteropTestCase.java?view=diff&r1=155961&r2=155962
==============================================================================
--- incubator/apollo/trunk/src/site/content/example/src/test/org/oasisOpen/docs/wsrf/InteropTestCase.java (original)
+++ incubator/apollo/trunk/src/site/content/example/src/test/org/oasisOpen/docs/wsrf/InteropTestCase.java Wed Mar  2 13:44:48 2005
@@ -1,26 +1,28 @@
 package org.oasisOpen.docs.wsrf;
 
+import junit.framework.TestCase;
 import org.apache.axis.ConfigurationException;
 import org.apache.axis.configuration.FileProvider;
+import org.apache.ws.util.XmlBeanUtils;
 import org.apache.ws.util.jndi.XmlBeanJndiUtils;
 import org.apache.ws.util.soap.SoapClient;
 import org.apache.ws.util.test.axis.AbstractOneAxisTestCase;
-import org.apache.ws.util.XmlBeanUtils;
-import org.apache.xmlbeans.XmlObject;
 import org.apache.xmlbeans.XmlException;
-import org.apache.xmlbeans.XmlCursor;
+import org.apache.xmlbeans.XmlObject;
 import org.oasisOpen.docs.wsrf.x2004.x11.wsrfWSResourceLifetime12Draft04.SetTerminationTimeDocument;
-import org.xmlsoap.schemas.soap.envelope.EnvelopeDocument;
+import org.oasisOpen.docs.wsrf.x2005.x01.wsrfInterop20Draft03Wsdl.PrinterPortService;
+import org.oasisOpen.docs.wsrf.x2005.x01.wsrfInterop20Draft03Wsdl.JobPortService;
+import org.oasisOpen.docs.wsrf.x2005.x01.wsrfInterop20Draft03Wsdl.JobPortPropertyQNames;
 import org.xmlsoap.schemas.soap.envelope.Envelope;
+import org.xmlsoap.schemas.soap.envelope.EnvelopeDocument;
 
+import javax.xml.namespace.QName;
 import java.io.File;
 import java.io.IOException;
 import java.io.InputStream;
 import java.net.URL;
 import java.util.Calendar;
 
-import junit.framework.TestCase;
-
 /**
  * Created by IntelliJ IDEA.
  * User: sacam
@@ -202,7 +204,7 @@
 
     public void testPrintJob_SCENARIO_C() throws IOException
     {
-        String response = sendRequest(m_printerURL, "PrintJobRequest.soap");
+        String response = printJob();
         assertTrue(response.indexOf("CreationResponse") > -1);
         assertTrue(response.indexOf("successful-ok") > -1);
 
@@ -218,63 +220,136 @@
 
     public void testDestroy_SCENARIO_D() throws IOException
     {
-        //note a second destroy should fail
-        String response = sendRequest(m_jobURL, "Destroy_Job.soap");
+        String jobResponse = printJob();
+        String resourceID = null;
+        EnvelopeDocument envelope = loadResponseEnvelope(jobResponse);
+        resourceID = getResourceID(envelope);
+        EnvelopeDocument destroyEnvelopeDocument = loadDocument("Destroy_Job.soap");
+        setResourceID(destroyEnvelopeDocument, resourceID);
+
+
+        System.out.println("Destroying JOB: " + resourceID);
+        String response = sendRequest(m_jobURL, destroyEnvelopeDocument.newInputStream());
         assertTrue(response.indexOf("DestroyResponse") > -1);
-    }
 
-    public void testFailDestroy_SCENARIO_D_FAIL() throws IOException
-    {
-        //note a second destroy should fail
-        String response = sendRequest(m_jobURL, "Destroy_Job.soap");
+        //should fail
+        response = sendRequest(m_jobURL, destroyEnvelopeDocument.newInputStream());
         assertTrue(response.indexOf("fault") > -1);
     }
 
-    public void testScheduledTermination_SCENARIO_E() throws IOException
+    public void testCreateJob_SCENARIO_E() throws IOException
     {
-        String response = sendRequest(m_printerURL, "Create_Job.soap");
+        String response = createJob();
         assertTrue(response.indexOf("CreationResponse") > -1);
         assertTrue(response.indexOf("successful-ok") > -1);
 
         response = sendRequest(m_printerURL, "GetPrinterPropertiesDoc.soap");
+        //job id should be gotten for reponse
         assertTrue(response.indexOf("job_id>1") > -1);
     }
 
+
+
     public void testSetTerminationTime_SCENARIO_E_CONTINUED() throws IOException
     {
-        //may need to do this in code to account for date time change
+        String response = createJob();
+        EnvelopeDocument envelope = loadResponseEnvelope(response);
+        String resourceID = getResourceID(envelope);
+
         EnvelopeDocument envelopeDoc = null;
-        try
-        {
-            envelopeDoc = (EnvelopeDocument) XmlObject.Factory.parse(new File(m_requestsDir, "SetTerminationTime.soap"));
-        }
-        catch (XmlException e)
-        {            
-            fail(e.getMessage());
-        }
+        envelopeDoc = loadDocument("SetTerminationTime.soap");
+        setResourceID(envelopeDoc, resourceID);
         Calendar instance = Calendar.getInstance();
         instance.set(Calendar.MINUTE, instance.get(Calendar.MINUTE) + 5);
 
-        Envelope envelope = envelopeDoc.getEnvelope();
-        XmlObject[] childElements = XmlBeanUtils.getChildElements(envelope.getBody());
+        Envelope requestEnvelope = envelopeDoc.getEnvelope();
+        XmlObject[] childElements = XmlBeanUtils.getChildElements(requestEnvelope.getBody());
         SetTerminationTimeDocument.SetTerminationTime childElement = (SetTerminationTimeDocument.SetTerminationTime) childElements[0];
         childElement.setRequestedTerminationTime(instance);
 
-        String response = sendRequest(m_jobURL, envelopeDoc.newInputStream());
+        System.out.println("Setting termination time on JOB: " + resourceID);
+        response = sendRequest(m_jobURL, envelopeDoc.newInputStream());
         assertTrue(response.indexOf("SetTerminationTimeResponse") > -1);
 
     }
 
     public void testSendDocument_SCENARIO_E_CONTINUED() throws IOException
     {
-        String response = sendRequest(m_jobURL, "SendDocument.soap");
+        String response = createJob();
+        EnvelopeDocument envelope = loadResponseEnvelope(response);
+        String resourceID = getResourceID(envelope);
+        //todo use the job response to get the resourceid of the job
+        EnvelopeDocument envelopeDocument = loadDocument("SendDocument.soap");
+        setResourceID(envelopeDocument,resourceID);
+        response = sendRequest(m_jobURL, envelopeDocument.newInputStream());
         assertTrue(response.indexOf("CreationResponse") > -1);
         assertTrue(response.indexOf("successful-ok") > -1);
-
     }
 
     //***** end tests ********
 
+      private EnvelopeDocument loadResponseEnvelope(String response)
+    {
+        EnvelopeDocument envelope = null;
+        try
+        {
+            envelope = EnvelopeDocument.Factory.parse(response);
+
+        }
+        catch (XmlException e)
+        {
+            e.printStackTrace();
+        }
+        return envelope;
+    }
+     protected String createJob() throws IOException
+    {
+        return sendRequest(m_printerURL, "Create_Job.soap");
+    }
+    protected String printJob() throws IOException
+    {
+       return sendRequest(m_printerURL, "PrintJobRequest.soap");
+    }
+    private String getResourceID(EnvelopeDocument envelope)
+      {
+          String resourceKeyId;
+          resourceKeyId = XmlBeanUtils.getValue(getResourceIDFromJobReference(envelope));
+          return resourceKeyId;
+      }
+
+      private XmlObject getResourceIDFromJobReference(EnvelopeDocument envelope)
+      {
+          XmlObject[] childElements = XmlBeanUtils.getChildElements(envelope.getEnvelope().getBody(), new QName(JobPortPropertyQNames.JOB_REFERENCE.getNamespaceURI(),"CreationResponse"));
+          childElements = XmlBeanUtils.getChildElements(childElements[0], JobPortPropertyQNames.JOB_REFERENCE);
+          childElements = XmlBeanUtils.getChildElements(childElements[0], new QName("http://schemas.xmlsoap.org/ws/2004/08/addressing", "ReferenceProperties"));
+          return XmlBeanUtils.getChildElements(childElements[0], new QName(JobPortService.TARGET_NSURI, "ResourceID"))[0];
+      }
+
+      private XmlObject getResourceIDFromHeader(EnvelopeDocument envelope)
+      {
+          XmlObject[] childElements = XmlBeanUtils.getChildElements(envelope.getEnvelope().getHeader(), new QName(JobPortService.TARGET_NSURI,"ResourceID"));
+          return childElements[0];
+      }
+      private void setResourceID(EnvelopeDocument envelope, String resourceKeyId)
+      {
+          XmlObject resourceIDXmlObject = getResourceIDFromHeader(envelope);
+          XmlBeanUtils.setValue(resourceIDXmlObject, resourceKeyId);
+      }
+
+     private EnvelopeDocument loadDocument(String requestFile)
+            throws IOException
+    {
+        EnvelopeDocument envelopeDoc = null;
+        try
+        {
+            envelopeDoc = (EnvelopeDocument) XmlObject.Factory.parse(new File(m_requestsDir, requestFile));
+        }
+        catch (XmlException e)
+        {
+            fail(e.getMessage());
+        }
+        return envelopeDoc;
+    }
     public void setRunAxisServer(boolean RUN_AXIS_SERVER)
     {
         this.RUN_AXIS_SERVER = RUN_AXIS_SERVER;
@@ -312,6 +387,8 @@
 
     public String sendRequest(String requestURL, InputStream is) throws IOException
     {
-        return SoapClient.sendRequest(new URL(requestURL), is, null);
+        String response = SoapClient.sendRequest(new URL(requestURL), is, null);
+        is.close();
+        return response;
     }
 }



---------------------------------------------------------------------
To unsubscribe, e-mail: apollo-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: apollo-dev-help@ws.apache.org