Re: Contribute new testcase Interface-6B

Arthur Ryman <[email protected]> Thu, 2 Aug 2007 16:28:24 -0400
Newsgroups gmane.comp.web.services.description
Message-ID <OF93174EED.1C0C9580-ON8525732B.00701266-8525732B.007076F5@ca.ibm.com>
--=_mixed 007021AD8525732B_=
Content-Type: multipart/alternative; boundary="=_alternative 007021AD8525732B_="


--=_alternative 007021AD8525732B_=
Content-Type: text/plain; charset="US-ASCII"

John,

Thx. I'll add this to the test suite.

Arthur Ryman, PhD, AoT, DE
Process and Portfolio Management, Rational Division

phone: +1-905-413-3077, TL 969-3077
assistant: +1-905-413-3831 (T/L: 318-8867)
fax: +1-905-413-4920, TL 969-4920
mobile: +1-416-939-5063, text: [email protected]



"John Kaputin (gmail)" <[email protected]> 
Sent by: [email protected]
08/02/2007 08:26 AM

To
"WS-Description WG" <[email protected]>
cc
[email protected]
Subject
Contribute new testcase Interface-6B






Please find attached a patch file containing a new testcase, Interface-6B, 
which I would like to contribute to the WSDL 2.0 assertion test suite. 

This testcase violates interface extension assertion Interface-1009 in a 
similar way to the existing test Interface-3B. However, this new testcase 
includes operations, faults and bindings, so it provides a more thorough 
test in that a WSDL 2.0 processor must not only detect that the assertion 
has been violated, but it must also handle the circular reference 
correctly if it attempts to process the operations, faults and binding to 
avoid an infinite loop.  This testcase is in response to a comment made by 
Jacek on Apache Woden JIRA  http://issues.apache.org/jira/browse/WODEN-159

regards,
John Kaputin

--=_alternative 007021AD8525732B_=
Content-Type: text/html; charset="US-ASCII"


<br><font size=2 face="sans-serif">John,</font>
<br>
<br><font size=2 face="sans-serif">Thx. I'll add this to the test suite.</font>
<br>
<br><font size=2 face="sans-serif">Arthur Ryman, PhD, AoT, DE<br>
Process and Portfolio Management, Rational Division<br>
<br>
phone: +1-905-413-3077, TL 969-3077<br>
assistant: +1-905-413-3831 (T/L: 318-8867)<br>
fax: +1-905-413-4920, TL 969-4920<br>
mobile: +1-416-939-5063, text: [email protected]</font>
<br>
<br>
<br>
<table width=100%>
<tr valign=top>
<td width=40%><font size=1 face="sans-serif"><b>&quot;John Kaputin (gmail)&quot;
&lt;[email protected]&gt;</b> </font>
<br><font size=1 face="sans-serif">Sent by: [email protected]</font>
<p><font size=1 face="sans-serif">08/02/2007 08:26 AM</font>
<td width=59%>
<table width=100%>
<tr valign=top>
<td>
<div align=right><font size=1 face="sans-serif">To</font></div>
<td><font size=1 face="sans-serif">&quot;WS-Description WG&quot; &lt;[email protected]&gt;</font>
<tr valign=top>
<td>
<div align=right><font size=1 face="sans-serif">cc</font></div>
<td><font size=1 face="sans-serif">[email protected]</font>
<tr valign=top>
<td>
<div align=right><font size=1 face="sans-serif">Subject</font></div>
<td><font size=1 face="sans-serif">Contribute new testcase Interface-6B</font></table>
<br>
<table>
<tr valign=top>
<td>
<td></table>
<br></table>
<br>
<br>
<br><font size=3>Please find attached a patch file containing a new testcase,
Interface-6B, which I would like to contribute to the WSDL 2.0 assertion
test suite. &nbsp;<br>
<br>
This testcase violates interface extension assertion Interface-1009 in
a similar way to the existing test Interface-3B. However, this new testcase
includes operations, faults and bindings, so it provides a more thorough
test in that a WSDL 2.0 processor must not only detect that the assertion
has been violated, but it must also handle the circular reference correctly
if it attempts to process the operations, faults and binding to avoid an
infinite loop. &nbsp;This testcase is in response to a comment made by
Jacek on Apache Woden JIRA &nbsp;</font><a href="http://issues.apache.org/jira/browse/WODEN-159"><font size=3 color=blue><u>http://issues.apache.org/jira/browse/WODEN-159</u></font></a><font size=3><br>
<br>
regards,<br>
John Kaputin</font>
<br>
--=_alternative 007021AD8525732B_=--
--=_mixed 007021AD8525732B_=
Content-Type: text/plain; name="Interface-6B.patch.txt"
Content-Disposition: attachment; filename="Interface-6B.patch.txt"
Content-Transfer-Encoding: quoted-printable

### Eclipse Workspace Patch 1.0
#P desc
Index: test-suite/documents/bad/Interface-6B/TestMetadata.xml
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
RCS file: test-suite/documents/bad/Interface-6B/TestMetadata.xml
diff -N test-suite/documents/bad/Interface-6B/TestMetadata.xml
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ test-suite/documents/bad/Interface-6B/TestMetadata.xml	1 Jan 1970 00:00=
:00 -0000
@@ -0,0 +1,32 @@
+<?xml version=3D"1.0"?>
+<TestMetadata xmlns=3D"http://www.w3.org/2006/02/wsdl/TestMetadata">
+	<Identifier>
+		http://dev.w3.org/cvsweb/2002/ws/desc/test-suite/documents/bad/Interface=
-6B
+	</Identifier>
+	<Title>Bad Document Interface-6B</Title>
+	<Purpose>Test circular references in Interface extension</Purpose>
+	<Description>
+	As well as circular interface references, this test includes operations, =

+	faults and bindings. If the processor does not handle the circular refere=
nce
+	correctly, an infinite loop may occur.
+	</Description>
+	<Status>accepted</Status>
+	<SpecRef></SpecRef>
+	<Preconditions>none</Preconditions>
+	<Inputs>
+		<Input role=3D"root">reservation.wsdl</Input>
+	</Inputs>
+	<ExpectedResults>
+		<Successful>false</Successful>
+		<ViolatesAssertion>Interface-1009</ViolatesAssertion>
+	</ExpectedResults>
+	<Version>1.0</Version>
+	<Contributor>
+		<Name>John Kaputin</Name>
+		<Affiliation>IBM</Affiliation>
+		<EMail>[email protected]</EMail>
+	</Contributor>
+	<Rights>http://www.w3.org/Consortium/Legal/2002/copyright-documents-20021=
231</Rights>
+	<Grouping>/documents/bad</Grouping>
+	<SeeAlso><Reference>http://www.w3.org/TR/wsdl20#Interface-1009</Reference=
></SeeAlso>
+</TestMetadata>
Index: test-suite/documents/bad/Interface-6B/reservation.wsdl
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
RCS file: test-suite/documents/bad/Interface-6B/reservation.wsdl
diff -N test-suite/documents/bad/Interface-6B/reservation.wsdl
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ test-suite/documents/bad/Interface-6B/reservation.wsdl	1 Jan 1970 00:00=
:00 -0000
@@ -0,0 +1,71 @@
+<?xml version=3D"1.0" encoding=3D"utf-8" ?>
+<description xmlns=3D"http://www.w3.org/ns/wsdl"
+	targetNamespace=3D"http://greath.example.com/2004/services/reservation"
+	xmlns:tns=3D"http://greath.example.com/2004/services/reservation"
+	xmlns:details=3D"http://greath.example.com/2004/schemas/reservationDetail=
s"
+	xmlns:xs=3D"http://www.w3.org/2001/XMLSchema">
+
+	<documentation>
+		This test shows an invalid use of a WSDL 2.0 interface. The
+		interface extends itself. As specified in section 2.1.1 "an
+		interface MUST NOT appear as an element of the set of interfaces
+		it extends, either directly or indirectly."
+	=09
+		This document violates assertion Interface-1009.
+	=09
+		This test includes interface faults and operations and bindings,
+		so any attempt to process these must detect the circular reference
+		correctly to avoid an infinite loop.
+	</documentation>
+
+	<types>
+
+		<xs:schema
+			targetNamespace=3D"http://greath.example.com/2004/schemas/reservationDe=
tails">
+
+			<xs:element name=3D"confirmationNumber" type=3D"string" />
+			<xs:element name=3D"checkInDate" type=3D"date" />
+			<xs:element name=3D"checkOutDate" type=3D"date" />
+			<xs:element name=3D"roomType" type=3D"string" />
+			<xs:element name=3D"smoking" type=3D"boolean" />
+			<xs:element name=3D"reservationDetails" type=3D"string" />
+		</xs:schema>
+
+	</types>
+
+	<interface name=3D"retrieveDetailsInterface" extends=3D"tns:retrieveDetai=
lsInterface2">
+	    <fault name=3D"retrieveFault" element=3D"details:reservationDetails"/>
+		<operation name=3D"retrieve"
+			pattern=3D"http://www.w3.org/2004/03/wsdl/in-out">
+			<input messageLabel=3D"In" element=3D"details:checkInDate" />
+			<output messageLabel=3D"Out"
+				element=3D"details:reservationDetails" />
+		</operation>
+	</interface>
+=09
+	<interface name=3D"retrieveDetailsInterface2" extends=3D"tns:retrieveDeta=
ilsInterface">
+	    <fault name=3D"retrieveFault2" element=3D"details:reservationDetails"=
/>
+		<operation name=3D"retrieve2"
+			pattern=3D"http://www.w3.org/2004/03/wsdl/in-out">
+			<input messageLabel=3D"In" element=3D"details:roomType" />
+			<output messageLabel=3D"Out"
+				element=3D"details:confirmationNumber" />
+		</operation>
+	</interface>
+=09
+    <binding name=3D"retrieveDetailsBinding"=20
+        interface=3D"tns:retrieveDetailsInterface"
+        type=3D"http://www.w3.org/2005/12/wsdl/soap">
+        <fault ref=3D"tns:retrieveFault"/>
+        <fault ref=3D"tns:retrieveFault2"/>
+        <operation ref=3D"tns:retrieve">
+            <input messageLabel=3D"In"/>
+            <output messageLabel=3D"Out"/>
+        </operation>=20
+        <operation ref=3D"tns:retrieve2">
+            <input messageLabel=3D"In"/>
+            <output messageLabel=3D"Out"/>
+        </operation>=20
+    </binding>
+
+</description>
--=_mixed 007021AD8525732B_=--