[ http://issues.apache.org/jira/browse/JDO-299?page=all ]
Martin Zaun updated JDO-299:
----------------------------
Attachment: SignatureTest.java
Attached is a fully testable version of the Signature Test for review/comments.
Except for the final integration with the TCK, I consider the version
feature-complete:
- testing of superclasses, interfaces, parameters, exceptions, modifers
- testing public non-standard features found in the classes but not in the
descriptor
- testing constant field values (static public final fields only, as in
interfaces)
- support for (Java) user types name (opposed to reflection names) in the
descriptor
- reports as many errors as possible (except for parse errors in the descriptor
file)
- detailed reporting of missings, mismatches, loading problems
- reports summary statistics, current results:
Signature Test Results
======================
tested features: 671
Successes:
matching features: 671
loadable classes: 91
Failures:
missing features: 0
non-matching features: 0
non-standard features: 3
unloadable classes: 0
other problems: 0
Here's how to test. Save SignatureTest.java into
tck20/src/java/org/apache/jdo/tck/api
(or let me know of a better place). Should build with the rest.
Invoke the test with 'java' by it's (nested) CLI class:
org.apache.jdo.tck.api.SignatureTest\$CLI
The classpath needs to include
tck20/target/classes
api20/target/jdo2-api-SNAPSHOT.jar
j2ee.jar
Without the j2ee.jar, there are failures reported on javax.jdo.Transaction,
which uses javax.transaction.Synchronization.
Provide as command-line argument a path to the downloaded signature descriptor
file:
api20_defs.txt
Any progress/verbose output is send to stdout while any failures/problems are
being
sent to stderr. So, you can save/look just the failure reports to a file:
java ... 2> err.txt
Try changing the descriptor and check the result statistics and failure logs.
On the implementation, the code is organized into 5 classes, all in
SignatureTest.java.
Not much redundancy, still ~1500 lines of code. if you have an idea on how to
simplify,
let me know :)
Martin
> Signature test needed checking compliance of implementations with JDO2.0 API
> ----------------------------------------------------------------------------
>
> Key: JDO-299
> URL: http://issues.apache.org/jira/browse/JDO-299
> Project: JDO
> Type: Task
> Components: tck20
> Reporter: Martin Zaun
> Assignee: Martin Zaun
> Priority: Minor
> Fix For: JDO 2 final
> Attachments: SignatureTest.java, api20_defs.txt
>
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira