Simon Laws wrote:
On 9/26/06, Andrew Borley <[EMAIL PROTECTED]> wrote:

Hi all,

I've just checked some code in at

http://svn.apache.org/repos/asf/incubator/tuscany/cpp/sca/test/ws.service.interop/
that does some interop testing as follows:

- An Axis2 binding.ws service & implementation component is deployed
based on the WSDL that Simon put up at

http://svn.apache.org/repos/asf/incubator/tuscany/interop/src/main/resources/interop.wsdl

- The client code reads in all the schemas and then tests each
operation defined in the WSDL by:
1) Reading in the XML file that corresponds to the operation as a
DataObject
2) Converting the DataObject to an Axiom node
3) Sending the Axiom node across to the service via SOAP
4) At the service, the binding.ws implementation converts the received
Axiom node to a DataObject & supplies it to the component
implementation.
5) The component implementation reads in the same XML file as was read
at the client in step 1 and converts it to a DataObject
6) The component implementation compares the 2 DataObjects via a new
compareDataObjects method in tuscany/sca/util/Utils.cpp. If they
match, the received DataObject is returned to the client. If they do
not match, an error message is printed at the server and NULL is
returned.
7) The binding.ws implementation converts the returned DataObject into
an Axiom node and returns it to the client via SOAP
8) At the client, the returned Axiom node is converted into a
DataObject and is compared to the original DataObject.
9) If any of the loading, conversions or comparisons fail, the test has
failed.

So, in brief, this tests:
XML -> SDO -> Axiom -> SOAP -> Axiom -> SDO -> Axiom -> SOAP -> Axiom
->SDO

Currently, the following operations/schemas had to be omitted from the
tests because they cause the loading of the WSDL & schemas at the
server or client to fail (probably due to clashes of schema
entities?):
Interop05
Interop25
Interop27
Interop39
Due to this the WSDL used at the service is slighly altered (see

http://svn.apache.org/repos/asf/incubator/tuscany/cpp/sca/test/ws.service.interop/resources/interop.wsdl
)

Also, the following operations/schemas fail:
Interop04 - fails when loading XML file
Interop28 - fails on return to client - the SimpleTypeWithName
property is not set in the returned DataObject.
Interop30 - fails at the service with an SDONullPointerException
Interop33 - fails at the service - the property AttributeWithSDOName
is not set in the received DataObject
Interop40 - fails at the service - the property
ElementSubstitutionGroupBase has a single element in the received
DataObject but 2 in the loaded DataObject
Interop50 - fails at the service - the property anyType is not set in
the received DataObject

These failures seem to match up with what Simon has already seen &
documented/raised Jiras for at
http://wiki.apache.org/ws/Tuscany/Interop

The next things to do are:
- create the automake files to get this building/running on Linux
- use this client/service for Java -> C++ (or vice-versa) interop testing
- create a composite with a binding.ws reference that calls the
service to enable testing of our binding.ws reference implementation.

Any thoughts or ideas on how to fix the issues?

Cheers

Andrew

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


Nice work Andy! Did you hang on to the schema loading errors you got with
05, 25 etc or should I just try and run it up and see?

S

Nice.

What about adding these tests and the other tests we already have to a "make check" build option? This way people can just do:
configure
make
make install
make check

Thoughts?

--
Jean-Sebastien


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to