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