Contribute new testcase Interface-6B

View: New views
4 Messages — Rating Filter:   Alert me  

Contribute new testcase Interface-6B

by John Kaputin (gmail) :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

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

### Eclipse Workspace Patch 1.0
#P desc
Index: test-suite/documents/bad/Interface-6B/TestMetadata.xml
===================================================================
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="1.0"?>
+<TestMetadata xmlns="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 reference
+ correctly, an infinite loop may occur.
+ </Description>
+ <Status>accepted</Status>
+ <SpecRef></SpecRef>
+ <Preconditions>none</Preconditions>
+ <Inputs>
+ <Input role="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>jkaputin@...</EMail>
+ </Contributor>
+ <Rights>http://www.w3.org/Consortium/Legal/2002/copyright-documents-20021231</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
===================================================================
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="1.0" encoding="utf-8" ?>
+<description xmlns="http://www.w3.org/ns/wsdl"
+ targetNamespace="http://greath.example.com/2004/services/reservation"
+ xmlns:tns="http://greath.example.com/2004/services/reservation"
+ xmlns:details="http://greath.example.com/2004/schemas/reservationDetails"
+ xmlns:xs="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."
+
+ This document violates assertion Interface-1009.
+
+ 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="http://greath.example.com/2004/schemas/reservationDetails">
+
+ <xs:element name="confirmationNumber" type="string" />
+ <xs:element name="checkInDate" type="date" />
+ <xs:element name="checkOutDate" type="date" />
+ <xs:element name="roomType" type="string" />
+ <xs:element name="smoking" type="boolean" />
+ <xs:element name="reservationDetails" type="string" />
+ </xs:schema>
+
+ </types>
+
+ <interface name="retrieveDetailsInterface" extends="tns:retrieveDetailsInterface2">
+    <fault name="retrieveFault" element="details:reservationDetails"/>
+ <operation name="retrieve"
+ pattern="http://www.w3.org/2004/03/wsdl/in-out">
+ <input messageLabel="In" element="details:checkInDate" />
+ <output messageLabel="Out"
+ element="details:reservationDetails" />
+ </operation>
+ </interface>
+
+ <interface name="retrieveDetailsInterface2" extends="tns:retrieveDetailsInterface">
+    <fault name="retrieveFault2" element="details:reservationDetails"/>
+ <operation name="retrieve2"
+ pattern="http://www.w3.org/2004/03/wsdl/in-out">
+ <input messageLabel="In" element="details:roomType" />
+ <output messageLabel="Out"
+ element="details:confirmationNumber" />
+ </operation>
+ </interface>
+
+    <binding name="retrieveDetailsBinding"
+        interface="tns:retrieveDetailsInterface"
+        type="http://www.w3.org/2005/12/wsdl/soap">
+        <fault ref="tns:retrieveFault"/>
+        <fault ref="tns:retrieveFault2"/>
+        <operation ref="tns:retrieve">
+            <input messageLabel="In"/>
+            <output messageLabel="Out"/>
+        </operation>
+        <operation ref="tns:retrieve2">
+            <input messageLabel="In"/>
+            <output messageLabel="Out"/>
+        </operation>
+    </binding>
+
+</description>

Re: Contribute new testcase Interface-6B

by Arthur Ryman-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


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: 4169395063@...



"John Kaputin (gmail)" <jakaputin@...>
Sent by: www-ws-desc-request@...

08/02/2007 08:26 AM

To
"WS-Description WG" <www-ws-desc@...>
cc
woden-dev@...
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


### Eclipse Workspace Patch 1.0
#P desc
Index: test-suite/documents/bad/Interface-6B/TestMetadata.xml
===================================================================
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="1.0"?>
+<TestMetadata xmlns="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 reference
+ correctly, an infinite loop may occur.
+ </Description>
+ <Status>accepted</Status>
+ <SpecRef></SpecRef>
+ <Preconditions>none</Preconditions>
+ <Inputs>
+ <Input role="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>jkaputin@...</EMail>
+ </Contributor>
+ <Rights>http://www.w3.org/Consortium/Legal/2002/copyright-documents-20021231</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
===================================================================
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="1.0" encoding="utf-8" ?>
+<description xmlns="http://www.w3.org/ns/wsdl"
+ targetNamespace="http://greath.example.com/2004/services/reservation"
+ xmlns:tns="http://greath.example.com/2004/services/reservation"
+ xmlns:details="http://greath.example.com/2004/schemas/reservationDetails"
+ xmlns:xs="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."
+
+ This document violates assertion Interface-1009.
+
+ 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="http://greath.example.com/2004/schemas/reservationDetails">
+
+ <xs:element name="confirmationNumber" type="string" />
+ <xs:element name="checkInDate" type="date" />
+ <xs:element name="checkOutDate" type="date" />
+ <xs:element name="roomType" type="string" />
+ <xs:element name="smoking" type="boolean" />
+ <xs:element name="reservationDetails" type="string" />
+ </xs:schema>
+
+ </types>
+
+ <interface name="retrieveDetailsInterface" extends="tns:retrieveDetailsInterface2">
+    <fault name="retrieveFault" element="details:reservationDetails"/>
+ <operation name="retrieve"
+ pattern="http://www.w3.org/2004/03/wsdl/in-out">
+ <input messageLabel="In" element="details:checkInDate" />
+ <output messageLabel="Out"
+ element="details:reservationDetails" />
+ </operation>
+ </interface>
+
+ <interface name="retrieveDetailsInterface2" extends="tns:retrieveDetailsInterface">
+    <fault name="retrieveFault2" element="details:reservationDetails"/>
+ <operation name="retrieve2"
+ pattern="http://www.w3.org/2004/03/wsdl/in-out">
+ <input messageLabel="In" element="details:roomType" />
+ <output messageLabel="Out"
+ element="details:confirmationNumber" />
+ </operation>
+ </interface>
+
+    <binding name="retrieveDetailsBinding"
+        interface="tns:retrieveDetailsInterface"
+        type="http://www.w3.org/2005/12/wsdl/soap">
+        <fault ref="tns:retrieveFault"/>
+        <fault ref="tns:retrieveFault2"/>
+        <operation ref="tns:retrieve">
+            <input messageLabel="In"/>
+            <output messageLabel="Out"/>
+        </operation>
+        <operation ref="tns:retrieve2">
+            <input messageLabel="In"/>
+            <output messageLabel="Out"/>
+        </operation>
+    </binding>
+
+</description>

Re: Contribute new testcase Interface-6B

by Arthur Ryman-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


John,

I amy have spoken too soon. I had trouble accessing our CVS and the WS Admin mailing list has been retired.

Philippe - what's the process for ongoing maintenance of the test suite? Has our CVS access been cancelled? Thx

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: 4169395063@...



Arthur Ryman/Toronto/IBM@IBMCA
Sent by: www-ws-desc-request@...

08/02/2007 04:28 PM

To
"John Kaputin (gmail)" <jakaputin@...>
cc
woden-dev@..., "WS-Description WG" <www-ws-desc@...>, www-ws-desc-request@...
Subject
Re: Contribute new testcase Interface-6B






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: 4169395063@...


"John Kaputin (gmail)" <jakaputin@...>
Sent by: www-ws-desc-request@...

08/02/2007 08:26 AM


To
"WS-Description WG" <www-ws-desc@...>
cc
woden-dev@...
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


### Eclipse Workspace Patch 1.0
#P desc
Index: test-suite/documents/bad/Interface-6B/TestMetadata.xml
===================================================================
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="1.0"?>
+<TestMetadata xmlns="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 reference
+ correctly, an infinite loop may occur.
+ </Description>
+ <Status>accepted</Status>
+ <SpecRef></SpecRef>
+ <Preconditions>none</Preconditions>
+ <Inputs>
+ <Input role="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>jkaputin@...</EMail>
+ </Contributor>
+ <Rights>http://www.w3.org/Consortium/Legal/2002/copyright-documents-20021231</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
===================================================================
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="1.0" encoding="utf-8" ?>
+<description xmlns="http://www.w3.org/ns/wsdl"
+ targetNamespace="http://greath.example.com/2004/services/reservation"
+ xmlns:tns="http://greath.example.com/2004/services/reservation"
+ xmlns:details="http://greath.example.com/2004/schemas/reservationDetails"
+ xmlns:xs="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."
+
+ This document violates assertion Interface-1009.
+
+ 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="http://greath.example.com/2004/schemas/reservationDetails">
+
+ <xs:element name="confirmationNumber" type="string" />
+ <xs:element name="checkInDate" type="date" />
+ <xs:element name="checkOutDate" type="date" />
+ <xs:element name="roomType" type="string" />
+ <xs:element name="smoking" type="boolean" />
+ <xs:element name="reservationDetails" type="string" />
+ </xs:schema>
+
+ </types>
+
+ <interface name="retrieveDetailsInterface" extends="tns:retrieveDetailsInterface2">
+    <fault name="retrieveFault" element="details:reservationDetails"/>
+ <operation name="retrieve"
+ pattern="http://www.w3.org/2004/03/wsdl/in-out">
+ <input messageLabel="In" element="details:checkInDate" />
+ <output messageLabel="Out"
+ element="details:reservationDetails" />
+ </operation>
+ </interface>
+
+ <interface name="retrieveDetailsInterface2" extends="tns:retrieveDetailsInterface">
+    <fault name="retrieveFault2" element="details:reservationDetails"/>
+ <operation name="retrieve2"
+ pattern="http://www.w3.org/2004/03/wsdl/in-out">
+ <input messageLabel="In" element="details:roomType" />
+ <output messageLabel="Out"
+ element="details:confirmationNumber" />
+ </operation>
+ </interface>
+
+    <binding name="retrieveDetailsBinding"
+        interface="tns:retrieveDetailsInterface"
+        type="http://www.w3.org/2005/12/wsdl/soap">
+        <fault ref="tns:retrieveFault"/>
+        <fault ref="tns:retrieveFault2"/>
+        <operation ref="tns:retrieve">
+            <input messageLabel="In"/>
+            <output messageLabel="Out"/>
+        </operation>
+        <operation ref="tns:retrieve2">
+            <input messageLabel="In"/>
+            <output messageLabel="Out"/>
+        </operation>
+    </binding>
+
+</description>

Re: Contribute new testcase Interface-6B

by Philippe Le Hegaret :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


[plh: this message was sent to Arthur and John but never made it to the
online archive due to an incorrect address, so here it is for the
record]

On Thu, 2007-08-02 at 16:58 -0400, Arthur Ryman wrote:
> Philippe - what's the process for ongoing maintenance of the test
> suite? Has our CVS access been cancelled? Thx

I closed down all the mailing lists associated with the WSDL Working
Group with the exception of the public mailing lists and the comments
lists. All CVS accounts have been closed as well since they were
associated with the Working Group. My thinking has been that we would
reorganized a bit once the Web Services Core Working Group starts (this
should happen in September), since we're going to merge several groups
together. So, the goal is to wait for September and reestablish the
right access within the Web Services Core Working Group,

Philippe