On Thu, Dec 1, 2011 at 1:58 PM, Tom Seelbach <tom.seelb...@gmail.com> wrote:
> I looked at the development guide for Tuscany 2, under the testing section:
> http://tuscany.apache.org/documentation-2x/sca-java-development-guide.html#SCAJavaDevelopmentGuide-Testing
>
> There is no reference to the OASIS otests. Is there any doc about how the
> otests are being built and run for Tuscany 2?   I'd be willing to help
> update the dev guide to point to something, or to describe the process once
> i understand it better....
>
> thanks
> Tom

The simple answer is that I don't think there is up to date
documentation on the otests in Tuscany. There are two parts to the
real answer:

1/ Running the otests

The main build runs the compliance tests [1] as a matter of course.
It's automatic and you don't have to do anything special.

2/ Building the otests

The compliance tests [1] are just maven projects and get built during
the build. However these project pull the tests artifacts in from the
maven repo [2] and the construction of these artifacts is where the
complexity is. These artifacts are OASIS artifacts but they don't yet
publish them in a form that's easy for us to pick up automatically
form the build (a maven repo) so we man handle them into our temporary
maven repo in hope that they will at some point me more easily
available. The projects that build the jars are here [3]. The
"newlayout" in the URL is not significant. It was just our second shot
at getting this to work. The thing you don't see when looking at this
directory via the svn browser is that there are soem svn:externals
set.

sca-assembly 
http://tools.oasis-open.org/version-control/svn/sca-assembly/TestCases/
sca-java-caa http://tools.oasis-open.org/version-control/svn/sca-j/TestCases/
sca-java-ci  
http://tools.oasis-open.org/version-control/svn/sca-j/TestCases_POJO_CI/
sca-policy http://tools.oasis-open.org/version-control/svn/sca-policy/TestCases/
sca-ws 
http://tools.oasis-open.org/version-control/svn/sca-bindings/TestCases_BWS/
sca-jms 
http://tools.oasis-open.org/version-control/svn/sca-bindings/TestCases_BJM/

Hence when you check out [3] what you actually end up, on Windows,
with on disc looks like :

05/07/2011  11:32             2,857 build.xml
01/09/2011  15:41    <DIR>          oasis-assembly-contributions
13/09/2011  12:21    <DIR>          oasis-jcaa-contributions
16/09/2011  08:56    <DIR>          oasis-jci-contributions
05/07/2011  11:32    <DIR>          oasis-jms-contributions
03/08/2011  14:27    <DIR>          oasis-policy-contributions
01/09/2011  15:41    <DIR>          oasis-ws-contributions
01/09/2011  12:06             4,600 pom.xml
05/07/2011  11:32             3,418 README
16/08/2011  13:56    <DIR>          sca-assembly
16/08/2011  13:56    <DIR>          sca-java-caa
05/07/2011  11:34    <DIR>          sca-java-ci
05/07/2011  11:35    <DIR>          sca-jms
05/07/2011  11:34    <DIR>          sca-policy
05/07/2011  11:35    <DIR>          sca-ws
13/09/2011  11:22    <DIR>          tuscany-java-caa-test-runner
16/09/2011  08:55    <DIR>          tuscany-java-ci-test-runner
13/09/2011  11:27    <DIR>          tuscany-jms-test-runner
13/09/2011  11:26    <DIR>          tuscany-policy-test-runner
13/09/2011  11:20    <DIR>          tuscany-test-runner
05/07/2011  11:32    <DIR>          tuscany-ws-ri-test-runner
01/09/2011  15:30    <DIR>          tuscany-ws-test-runner

There are three different types of project here. Starting in the middle.

A/ Projects that follow the pattern sca-* are the OASIS provided test
projects. These are pull out of the OASIS repo automatically by the
svn:externals.

B/ Projects that follow the pattern tuscany-*-test-runner. are our
rendering of the JUnit tests cases that actually run the otests. These
are provided by OASIS but we copy them out of the OASIS structure
(using an Ant script that runs during the build of each project) and
move them arround a bit to make them work properly in maven. These
projects also contain the Tuscany specific error and config files and
the Tuscany specific bridge code.

C/ Projects that follow the pattern oasis-*-contributions are our
repackaging of the test contributions. Again we copy these out of the
OASIS projects.

I just looked at the pom here and if you run maven at the top level
the A/ and B/ projects are built but the C/ projects aren't so you
need to run these manually or fix the pom.

Once built you can take the jars from the B/ target directories and
the zips from the C/ target directories and commit then to the Tuscany
mvn repo manually by checking them into the right place in svn.

That's pretty much the process. If you're happy to make some doc out
of that that would be great. Give the process a go and let me know
where my description falls short. I'm hoping that we can do away with
all of part 2 if these artifacts are published by OASIS as maven
artifacts.

[1] 
http://svn.apache.org/repos/asf/tuscany/sca-java-2.x/trunk/testing/compliance-tests/
[2] http://svn.apache.org/repos/asf/tuscany/maven/org/apache/tuscany/sca/
[3] http://svn.apache.org/repos/asf/tuscany/otest/newlayout/

Simon

-- 
Apache Tuscany committer: tuscany.apache.org
Co-author of a book about Tuscany and SCA: tuscanyinaction.com

Reply via email to