Skip to Content.
Sympa Menu

perfsonar-dev - Re: LS Functional Tests

Subject: perfsonar development work

List archive

Re: LS Functional Tests


Chronological Thread 
  • From: Maciej Glowiak <>
  • To: Michael Michalis <>
  • Cc: Perfsonar Development List <>
  • Subject: Re: LS Functional Tests
  • Date: Wed, 08 Nov 2006 11:02:22 +0100
  • Face: iVBORw0KGgoAAAANSUhEUgAAADAAAAAwAQMAAABtzGvEAAAABlBMVEUAAAD///+l2Z/dAAAA CXBIWXMAAEU1AABFNQF8gVf5AAAAB3RJTUUH1QYQDjo6uEWvwgAAAM5JREFUGNNN0LFqAkEUheGj KRZsfATrvENgYyH4APabxwgWGUUQC99BsNDCInUq7VImbbDZ0kayxBXMuN7jvTuKVh//mZlmQKZ1 EhQ8GAVgZECspEBdWQHRjR70KlgFKkoUaCw3ijSYQ4n5HfBK4a4jDcdDQPol/80Sr9BxZOOL4Fmr Jq8VBx7eopaSPvWGOm67fqol3j1q0XNs7Nk2cs6MU6gPNzf+ZGKQX4Ek8H6rAnFZnXB2vJxJcv8g C2P+WzL4tD+Txc4KydrIkh+eAdo01QbjQ84vAAAAAElFTkSuQmCC
  • Organization: Poznan Supercomputing and Networking Center

Hi Michael,

I think using ant should be necessary during your functional tests because we use ant for compilation and running as well as for configuration.

I think it should be a way how functional tests are being done.
So I suggest to use ant especially that you have problems with SOAPClient.

There are targets called "ls-client-run-query" "ls-client-run-register" "ls-client-run-deregister" which run SOAPClient directly and can be modified for your purposes.

I corrected "success" codes in trunk. Now they're as described in documentation.

The problem with no metadataId, you described, is possible. Perhaps LS could be more intelligent here. If there were only one metadata and one data without identifiers it could assume they should be combined together. But in fact, this case is wrong XML.

Maciej

[CC: to the mailing list, just for group information]

Michael Michalis wrote:
Good morning Maciej,

Thanks for the clarification, I imagined you read something else than the
one I had written. I have no experience in ant (although I will probably
need it for coordinating all the tests), so at that point I'm using the
SOAPClient class, which I can use in iteration in order to send a large
number of requests. I'll give it a try and refresh the libraries and the
code. Now the problem with the result codes exist also in the Register and
keepalive requests where upon successful execution of the request, the
result code is always result.success and not success.ls.* .
I'm a little bit lost about some possible bugs in previous requests, since a
don't now if you already fixed them due to my SOAPClient problem. When I get
that fixed I'll provide you, the possible bugs or issues I encountered.
One of my old comments about the LSRegister request which I think is
important is this:

I believe there is a conflict when the id attribute is missing from the
metadata element. Because although the handler assigns a new id to the
metadata element, the data element could contain a metadataIdRef attribute
which doesn't have the same value as the assigned id attribute. So in this
case there is no match between the metadata and data element and thus no
triggering, so the response should be erroneous.

It's not quite a bug or a problem just a remark.


-Michalis
-----Original Message-----
From: Maciej Glowiak [mailto:] Sent: Tuesday, November 07, 2006 5:44 PM
To: Michael Michalis
Subject: Re: LS Functional Tests

Michael,

Sorry for confusion. I read "LSRegister" instead of "LSDeregister" and just looked into the code without checking your requests.

I investigated the problem again today, this time I took LSDeregister...

So:


Michael Michalis wrote:
Hi Maciej,

I m not sure I'm following your answer. I'm referring to the LSDeregister
request. My question was why is the response about metadata when the
request
is missing the data element, or the metadataIdRef attribute. The result
codes that I think are wrong are the ones that state the successful
execution of the request i.e success.ls.register. The service returns only
a
result.success for every type of request.

1. LSDeregister always returned result.success, which was, as you said,
wrong.

Now there are two options: "success.ls.deregister" or
"error.ls.key_not_found" if key was not found in DB.


Also could you comment on the
service behaviour when a non valid or no key is inserted in the request?

Now it should return "error.ls.key_not_found"


Also about the LSUpdate request, as I said in previous email, there seems
to
be a problem of compatibility between the SOAPClient class I'm using to
feed
the requests and the new version of the service you placed on svn. They
can
not communicate with each other(I found that quite painfully when eclipse
crashed).

Why don't you use ant targets?

----------------------------------------------------------------------------
-----------
root@reed:/projects/sonar/perfsonar/ant#
ant ls-run-client-deregister

Buildfile: build.xml

ls-run-client-deregister:
[java] End point: http://reed.man.poznan.pl:8080/axis/services/LookupService
[java] Request file: /projects/sonar/perfsonar/schema/example-instances/sonar/LS/test/LSDeregiste
rRequest.xml
[java] Response file: /projects/sonar/perfsonar/schema/example-instances/sonar/LS/test/LSDeregiste
rResponse.xml
[java] time taken :0.179 secs
[java] Client exiting

BUILD SUCCESSFUL
Total time: 2 seconds
----------------------------------------------------------------------------
-----------

and then

----------------------------------------------------------------------------
-----------
root@reed:/projects/sonar/perfsonar/ant# cat /projects/sonar/perfsonar/schema/example-instances/sonar/LS/test/LSDeregiste
rResponse.xml

<?xml version="1.0" encoding="UTF-8"?>
<nmwg:message id="msg1_resp" messageIdRef="msg1"
type="LSDeregisterResponse" xmlns:nmwg="http://ggf.org/ns/nmwg/base/2.0/";>
<nmwg:metadata id="resultCodeMetadata">
<nmwg:eventType>error.ls.key_not_found</nmwg:eventType>
</nmwg:metadata>
<nmwg:data id="resultDescriptionData_for_resultCodeMetadata" metadataIdRef="resultCodeMetadata">
<nmwgr:datum xmlns:nmwgr="http://ggf.org/ns/nmwg/result/2.0/";>There were no metadata and data for key [http://not_existing_deregister_key.net:8080/axis/services/MA]</nmwgr:datum>
</nmwg:data>
</nmwg:message>
----------------------------------------------------------------------------
-----------

SOAPClient works fine for me. Maybe you have old classes or old JAR libraries (Axis)? Try to checkout trunk from SVN once again and run "ant libs-xmlls" in order to download required libraries.

So I can not test the changes and fixes you made. In order to
continue the rest of the tests I had to convert back to the latest
snapshot.
Finally I think there are some more issues unanswered about the LSRegister
and LSUpdate requests. I'll try to find those points and send them back to
you, later today or tomorrow. Thanks for your help.

That's no problem. Sorry once again for answering not the right "topic" :)

If there is something left to be answered, please send me it once again. I had some problems with my thunderbird and am not sure if I didn't miss something.

Maciej


--

--------------------------------------------------------------------
| Maciej Glowiak Network Research and Development ||
|

Poznan Supercomputing and Networking Center ||
| (+48 61) 858 2024 http://monstera.man.poznan.pl/ ||
====================================================================


  • Re: LS Functional Tests, Maciej Glowiak, 11/08/2006

Archive powered by MHonArc 2.6.16.

Top of Page