A few constraints:
The IBM DFDL implementation should be dynamically linked - that is. If the test system/user doesn't have it, nothing should break, the cross validation tests should just not run. Making the IBM DFDL implementation available should be a matter of having it installed on the system, and then having some directory on the class path or some environment variable defined.
We should add a flag testIBMCompatibility="true/false" with default being taken from testCase defaultTestIBMCompatibility, which itself defaults to testSuite defaultTestIBMCompatibiityDefault, which defaults to false. (This is the way roundTrip, defaultRoundTrip, defaultRoundTripDefault all work.)
This lets us turn it on for an entire test suite by just adding one attribute at the start of a TDML file. But we can override to turn it off in individual test cases.
We probably also want to add a scala parameter to runOneTest so that a test/scala file can be
def test_testName = runner.runOneTest("testName", testIBMCompatibility=false)
|
but the test/scala-debug can be
def test_testName = runner.runOneTest("testName", testIBMCompatibility="true")
|
|