Ate Douma created SCXML-222:
-------------------------------
Summary: Add support for executing the SCXML IRP test cases
Key: SCXML-222
URL: https://issues.apache.org/jira/browse/SCXML-222
Project: Commons SCXML
Issue Type: New Feature
Affects Versions: 2.0
Reporter: Ate Douma
Assignee: Ate Douma
Fix For: 2.0
A large part of the effort and changes done through SCXML-213 were tested and
validated by execution (part of) the SCXML IRP test cases.
The [SCXML IRP|http://www.w3.org/Voice/2013/scxml-irp/], or SCXML 1.0
Implementation Report Plan provides many 'assertion' tests based on the
specification, and can be used to verify that the specification can be
implemented.
This is NOT a formal specification compliance testsuite, as shouldn't be
regarded as such either.
But nonetheless its been *extremely* valuable to recognized and understand the
finer and tricky details of the specification and how an implementation is
expected to work.
I've found many, even rather trivial, bugs in the current implementation
through these tests, and therefore I'll now add standard support for executing
these as 'tests' through Maven.
The support is provided through a dedicated and single 'W3CTests' class which
is executed through separate Maven profiles (w3cTests.get, w3cTests.make and
w3cTests.run).
The IRP tests themselves are not checked in (although the license would allow
it) but instead are dynamically downloaded by the W3CTests class (when
executing 'get).
The location where these test sources are download is under a separate folder
src/w3c, which I'll mark with svn:ignore, so these will not accidentally get
commited either.
The current implementation of Commons SCXML however isn't (by far)
specification compliant enough to succesfully execute all these (213) tests.
Instead, I'm providing an extra 'tests.xml' configuration file through which we
can configure which tests are enabled/disabled and other meta-data needed to
perform and track the execution status.
Currently 80 tests are passing succesfully, and some more for only either the
xpath or ecmascript datamodel.
Note: the IRP tests only assume an xpath, ecmascript or "null" (minimal)
datamodel.
It probably will be worthwhile to add support to these tests (within Commons
SCXML) for Jexl and Groovy as well.
Most likely these will actually already be more compliant than the current
ecmascript support is...
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)