If nobody objects, I will put it into the OpenCMIS TCK module. The module is already there but empty. If we don't like it, we can take it out later.

- Florian


On 26/10/2010 15:45, Florent Guillaume wrote:
Hi Florian,

This certainly would be helpful.
Nuxeo's CMIS connector also has a number of unit tests using the
OpenCMIS API, which we could be switched to this framework and added
to what you already have (when not redundant).

Florent


On Tue, Oct 26, 2010 at 4:35 PM, Florian Müller
<florian.muel...@alfresco.com>  wrote:
Hi all,

We (Alfresco) are implementing a TCK like CMIS test framework that is based on 
OpenCMIS. If the Apache Chemistry community is interested in this we would 
contribute it to OpenCMIS.

Here is what is does:

- A TCK test tests one specific aspect, for example the creation of a folder or 
a query feature. A test consists of a series of checks, comparable to JUnit 
asserts. In contrast to JUnit, a check can return one of these states:
  * SKIPPED - The check has been skipped because the binding or the repository 
doesn't support it
  * OK - The check has passed.
  * WARNING - The check hasn't passed. It is not a spec violation but you want 
to have a look at it. For example, an object has an empty cmis:name property or 
a type definition has no display name.
  * FAILURE - The check hasn't passed. It is some kind of a spec violation. 
Failures can be fatal or not. If a failure is fatal, the test stops here. If it 
is not fatal, the test moves on.
  * UNEXPECTED_EXCEPTION - The framework caught an exception that hasn't been 
handled by the test.

- Tests are organized in groups. The TCK consists of a collection of groups. 
Each group and each test can be individually enabled and disabled.

- The framework can generate reports. Currently, we have simple text, XML and 
HTML report generators. The reports are not very pretty yet and need a bit of 
work.

- There are multiple ways to start the TCK. At the moment, we have a simple 
console runner and an ANT task. But it should be pretty easy to run it from a 
servlet or embed into a Swing application or something like that.


In a first step we want to port all the tests in the OpenCMIS client binding 
package to the framework and add the AtomPub tests that Dave developed a while 
ago. After that we will add more and more tests until we think we have covered 
most of the spec.

Any opinions?


Cheers,

Florian





Reply via email to