TEAM engine tests

48 views
Skip to first unread message

Jesper Zedlitz

unread,
Jun 30, 2009, 3:05:50 AM6/30/09
to oostet...@googlegroups.com
To tests the current developer version of the OOstethys Java server I
have added written a Maven plugin that executes the TEAM engine tests as
an integration test.

You can start the tests by running
mvn verify
in the project directory.

The TEAM engine writes a couple of XML files that are not really human
readable. A report plugin converts these files into HTML pages. This is
done during the "site" phase:
mvn site

target/site/teamengine-report.html is the entry point for the TEAM
engine reports with links to details of every single test.

Currently 11 of 50 tests fail -- mostly related to URN problems.

Jesper

--
Dipl.-Inf. Jesper Zedlitz Dept. for Computer Science, CAU of Kiel
Room 1108 Communication Systems Research Group
Phone: +49-(0)431-880-7279
Christian-Albrechts-Platz 4 Fax: +49-(0)431-880-7615
24098 Kiel - Germany j...@informatik.uni-kiel.de

signature.asc

Luis Bermudez

unread,
Jun 30, 2009, 9:43:01 AM6/30/09
to oostet...@googlegroups.com
Hi Jesper,

I know you are happily using MAVEN. We are not familiar with it.. and this means that I and others have not been able to make much progress in the code. What IDE are you using for coding ? If you could set up instructions of how to build the code etc.. maybe using Eclipse, which I know must of us are using it will be super super good !. Also we need to clean the branches and folders that are not been used any more.. could you recommend what needs to be deleted?

Thank you and great that you are making such an incredible progress !

I would check the URNs errors in my build once I get setup MAVEN.

Cheers,

-luis
--
Luis Bermudez Ph.D.
Coastal Research Technical Manager
Southeastern Universities Research Association (SURA)
berm...@sura.org - Office: (202) 408-8211
1201 New York Ave. NW Suite 430, Washington DC 20005

Jesper Zedlitz

unread,
Jun 30, 2009, 10:06:43 AM6/30/09
to oostet...@googlegroups.com
Luis Bermudez wrote:

> What IDE are you using for coding ?
>

I am using Eclipse. There is a Maven plug-in for Eclipse
http://m2eclipse.codehaus.org/ With that plug-in I think you do not need
a separate Maven installation.

> If you could set up instructions of how to build the code etc..
>

Here are step-by-step instructions for the command line (you can skip
the first two steps if you already have Maven installed on your system):
1. Download Maven from http://maven.apache.org/download.html
2. extract the archive file: tar xvfj apache-maven-2.1.0-bin.tar.bz2
3. check out the source code from the Subversion repository:
svn co
https://oostethys.googlecode.com/svn/trunk/component/server/java/oostethys-java-server
4. change into project's directory cd oostethys-java-server
5. build the project: ../apache-maven-2.1.0/bin/mvn compile

Instead of "mvn compile" you can use "mvn jetty:run" to start a test
server of "mvn test" to run the unit tests, etc.

signature.asc

Jesper Zedlitz

unread,
Jul 1, 2009, 7:10:49 AM7/1/09
to oostet...@googlegroups.com
Jesper Zedlitz wrote:
> Currently 11 of 50 tests fail -- mostly related to URN problems.
>
Here are some details about the URN problems:

OGC document 07-092r1 "Definition identifier URNs in OGC namespace"
specifies the form URNs shall have:
urn:ogc:def:objectType:authority:version:code

However, for procedures we use URNs like
uri:mbari:org:mooring:m2
urn:mbari:org:device:1455

I think these are valid replacements:
urn:ogc:object:procedure:mbari.org:device:1455
urn:ogc:object:procedure:mbari.org:mooring:m2
This would fix TEAM test getCapabilities:core-SOS.GetCapabilities-ResponseContentsValidProcedure.1

The TEAM test
getCapabilities:core-SOS.GetCapabilities-ResponseContentsValidObservedProperty.1
finds fault with these URNs:
urn:ogc:phenomenon:time:iso8601
urn:ogc:phenomenon:latitude:wgs84
urn:ogc:phenomenon:longitude:wgs84
http://mmisw.org/ont/cf/parameter/depth
http://mmisw.org/ont/cf/parameter/sea_water_temperature
http://mmisw.org/ont/cf/parameter/sea_water_electrical_conductivity
http://mmisw.org/ont/cf/parameter/sea_water_salinity

signature.asc

John Graybeal

unread,
Jul 1, 2009, 9:18:37 AM7/1/09
to oostet...@googlegroups.com
Two quick questions:
1) What is the TEAM test using as its test for URNs?
2) Do you consider URNs (as opposed to URLs, or for that matter
other URIs) the required form? (If so, any particular reason you chose
URNs?)

I don't think either of the 'valid replacements' are valid unless they
are formally issued in some sense, but I am not clear on that subject.

John


John

--------------
John Graybeal <mailto:gray...@mbari.org> -- 831-775-1956
Monterey Bay Aquarium Research Institute
Marine Metadata Interoperability Project: http://marinemetadata.org

Luis Bermudez

unread,
Jul 2, 2009, 7:47:20 AM7/2/09
to oostet...@googlegroups.com, oostet...@googlegroups.com
Interesting. I think this "rule" should be relaxed to allow any URL.
Or much better have a configuration to check if the URI really exists.
For example pointing to a registry of terminologies.

-luis

jze

unread,
Jul 7, 2009, 4:18:37 AM7/7/09
to oostethys_dev

John Graybeal

unread,
Jul 7, 2009, 5:18:56 PM7/7/09
to oostet...@googlegroups.com
Thanks Jesper. See more questions below.

First of all, there are indeed some improper URNs that were
discovered, and bonus points to the team for writing something that
would detect those!

I may have lost the appropriate context here, so apologies if there
have been some decisions which I missed, or if the context for this
test is more local than all of OOSTethys. Some questions invited by
this test are:

1) Has it been decided only URNs are acceptable? (See Luis' note
below.) Note I can come up with a good 'valid HTTP' test pattern if
that helps; it was just cited in the semweb list.

2) Has it been decided only OGC URNs are acceptable? (There are many
non-OGC URNs that would fail that are perfectly valid URNs.)

3) As it stands this is a minimum test of validity. Would it be
possible to add testing against

(a) only the truly valid OGC URN 'categories'? (only about 6 or 8
URN patterns have been 'allocated' by OGC, each of them with a
different prefix -- is there any reason not to test against those
particular prefixes)

(b) only truly valid OGC URNs? (for most of those categories, there
is a vocabulary that can then be appended to the prefix to create the
full URN, and for the remainder there are rules; it would be
compelling to have a test for inclusion in those lists)

I recognize 3b is seriously out of scope of the testing mechanism;
Luis' suggestion for checking against a registry is perhaps also out
of scope, but it is a nice improvement on the problem. Of course, OGC
doesn't put its URNs into a registry, at least yet, so that won't work
yet either. And some URNs (including some from OGC) can only be
tested by rule, because they include variable values (like lat/lon
locations).

It will be nice to be really clear about what we are and are not
allowing, and testing against, so developers and others can stay
conforming.

John

On Jul 2, 2009, at 4:47 AM, Luis Bermudez wrote:

> Interesting. I think this "rule" should be relaxed to allow any URL.
> Or much better have a configuration to check if the URI really exists.
> For example pointing to a registry of terminologies.
>
> -luis

On Jul 1, 2009, at 4:10 AM, Jesper Zedlitz wrote:

> Jesper Zedlitz wrote:
>> Currently 11 of 50 tests fail -- mostly related to URN problems.
>>
> Here are some details about the URN problems:
>
> OGC document 07-092r1 "Definition identifier URNs in OGC namespace"
> specifies the form URNs shall have:
> urn:ogc:def:objectType:authority:version:code
>
> However, for procedures we use URNs like
> uri:mbari:org:mooring:m2
> urn:mbari:org:device:1455
>
> I think these are valid replacements:
> urn:ogc:object:procedure:mbari.org:device:1455
> urn:ogc:object:procedure:mbari.org:mooring:m2

> This would fix TEAM test getCapabilities:core-SOS.GetCapabilities-
> ResponseContentsValidProcedure.1
>
> The TEAM test
> getCapabilities:core-SOS.GetCapabilities-
> ResponseContentsValidObservedProperty.1

> finds fault with these URNs:
> urn:ogc:phenomenon:time:iso8601
> urn:ogc:phenomenon:latitude:wgs84
> urn:ogc:phenomenon:longitude:wgs84
> http://mmisw.org/ont/cf/parameter/depth
> http://mmisw.org/ont/cf/parameter/sea_water_temperature
> http://mmisw.org/ont/cf/parameter/sea_water_electrical_conductivity
> http://mmisw.org/ont/cf/parameter/sea_water_salinity
>
> Jesper
>
> --
> Dipl.-Inf. Jesper Zedlitz Dept. for Computer Science, CAU of
> Kiel
> Room 1108 Communication Systems Research Group
> Phone: +49-(0)431-880-7279
> Christian-Albrechts-Platz 4 Fax: +49-(0)431-880-7615
> 24098 Kiel - Germany j...@informatik.uni-kiel.de

Carlos Rueda

unread,
Jul 29, 2009, 12:47:36 PM7/29/09
to oostet...@googlegroups.com
Jesper,

I've just updated http://code.google.com/p/oostethys/wiki/javasrcbuild with your instructions in a new section "building from the command line." I added some text about importing the checked-out project into eclipse.

BTW, do you know how to enable the SVN feature once you have an SVN checked-out project imported into eclipse?

Thanks,

Carlos



On Tue, Jun 30, 2009 at 7:06 AM, Jesper Zedlitz <j...@informatik.uni-kiel.de> wrote:
> What IDE are you using for coding ?
>
I am using Eclipse. There is a Maven plug-in for Eclipse
http://m2eclipse.codehaus.org/ With that plug-in I think you do not need
a separate Maven installation.

> If you could set up instructions of how to build the code etc..
>
Here are step-by-step instructions for the command line (you can skip
the first two steps if you already have Maven installed on your system):
1. Download Maven from http://maven.apache.org/download.html
2. extract the archive file: tar xvfj apache-maven-2.1.0-bin.tar.bz2
3. check out the source code from the Subversion repository:
svn co
https://oostethys.googlecode.com/svn/trunk/component/server/java/oostethys-java-server
4. change into project's directory  cd oostethys-java-server
5. build the project: ../apache-maven-2.1.0/bin/mvn compile

Instead of "mvn compile" you can use "mvn jetty:run" to start a test
server of "mvn test" to run the unit tests, etc.



--
Carlos Rueda, PhD
MMI Technical Lead - marinemetadata.org
car...@mbari.org - 831-775-1929
Monterey Bay Aquarium Research Institute - mbari.org

Manil Maskey

unread,
Jul 29, 2009, 12:51:06 PM7/29/09
to oostet...@googlegroups.com
Carlos,

You should be able to right click on the project/files and use the menu
option "Team" for SVN options.

--Manil
> MMI Technical Lead - marinemetadata.org <http://marinemetadata.org>
> car...@mbari.org <mailto:car...@mbari.org> - 831-775-1929
> Monterey Bay Aquarium Research Institute - mbari.org <http://mbari.org>
>
> >

Carlos Rueda

unread,
Jul 29, 2009, 1:11:48 PM7/29/09
to oostet...@googlegroups.com
Manil,

Right, but I'm encountering the error described at  http://subclipse.tigris.org/ds/viewMessage.do?dsForumId=1047&dsMessageId=2358745

Carlos

Luis Bermudez

unread,
Jul 29, 2009, 1:44:56 PM7/29/09
to oostet...@googlegroups.com
Carlos et al,

Shouldn't we be looking to download the source just as MAVEN expects
it.. so we could go back and submit changes to the SVN and not have
to rebuild to scr all the time?

-luis

Carlos Rueda

unread,
Jul 29, 2009, 3:16:47 PM7/29/09
to oostet...@googlegroups.com
Luis,

Not sure I understand your question, but here I go:  once you 'co' the whole thing (normally a one-time action), you then will basically just issue 'update' and 'ci' commands to refresh your image with any changes in the repository, and commit your own changes, respectively; and well, other commands of course according to your needs.


Carlos

Luis Bermudez

unread,
Jul 29, 2009, 3:27:20 PM7/29/09
to oostet...@googlegroups.com
Carlos,

Can you confirm that you have both MAVEN and SVN working properly in Eclipse?

-luis

Carlos Rueda

unread,
Jul 29, 2009, 3:33:57 PM7/29/09
to oostet...@googlegroups.com
Yes, I have both.  However, I used my command line svn to do the check-out, and it seems it's not compatible with the one I have in eclipse, so eclipse didn't enable the svn feature.  I guess I will just re-check out the whole thing from within eclipse itself, which should be straightforward.   (I do like building from the command-line, but I prefer eclipse for developing ;))

Carlos

Luis Bermudez

unread,
Nov 1, 2009, 11:30:46 PM11/1/09
to oostet...@googlegroups.com
Hi Jesper,

I am looking  at the team engine tests again..
I thought that by running mvn test it was also running the team engine tests.. my fault...

If I run mvn site, then I get the following error and no team engine reports are created.. could you please advise, thanks,

-luis
---------



[WARNING] Unable to process class com/ibm/icu/impl/data/LocaleElements_zh__PINYIN.class in JarAnalyzer File /Users/bermudez/.m2/repository/com/ibm/icu/icu4j/2.6.1/icu4j-2.6.1.jar
org.apache.bcel.classfile.ClassFormatException: Invalid byte tag in constant pool: 60
    at org.apache.bcel.classfile.Constant.readConstant(Constant.java:146)
    at org.apache.bcel.classfile.ConstantPool.<init>(ConstantPool.java:67)
    at org.apache.bcel.classfile.ClassParser.readConstantPool(ClassParser.java:222)
    at org.apache.bcel.classfile.ClassParser.parse(ClassParser.java:136)
    at org.apache.maven.shared.jar.classes.JarClassesAnalysis.analyze(JarClassesAnalysis.java:92)
    at org.apache.maven.report.projectinfo.dependencies.Dependencies.getJarDependencyDetails(Dependencies.java:285)
    at org.apache.maven.report.projectinfo.dependencies.renderer.DependenciesRenderer.hasSealed(DependenciesRenderer.java:1278)
    at org.apache.maven.report.projectinfo.dependencies.renderer.DependenciesRenderer.renderSectionDependencyFileDetails(DependenciesRenderer.java:423)
    at org.apache.maven.report.projectinfo.dependencies.renderer.DependenciesRenderer.renderBody(DependenciesRenderer.java:268)
    at org.apache.maven.reporting.AbstractMavenReportRenderer.render(AbstractMavenReportRenderer.java:65)
    at org.apache.maven.report.projectinfo.DependenciesReport.executeReport(DependenciesReport.java:239)
    at org.apache.maven.reporting.AbstractMavenReport.generate(AbstractMavenReport.java:90)
    at org.apache.maven.plugins.site.ReportDocumentRenderer.renderDocument(ReportDocumentRenderer.java:139)


and  get this

Cobertura: Loaded information on 26 classes.
Cobertura: Error reading file /Users/bermudez/Documents/workspace_maven/oostethys-java-server/target/cobertura/cobertura.ser: null
Cobertura: Coverage data file /Users/bermudez/Documents/workspace_maven/oostethys-java-server/target/cobertura/cobertura.ser either does not exist or is not readable.  Creating a new data file.
Cobertura: Saved information on 11 classes.
Cobertura: Saved information on 26 classes.
lock file could not be deleted

Luis Bermudez

unread,
Nov 1, 2009, 11:31:21 PM11/1/09
to oostet...@googlegroups.com
Manil,

Are you running team engine tests via MAVEN ?

-luis
Reply all
Reply to author
Forward
0 new messages