[DFDL-723] Compatibility: Cross Validation of DFDL and IBM implementation Created: 21/May/13  Updated: 20/May/18

Status: Open
Project: Daffodil
Component/s: Infrastructure, QA
Affects Version/s: None
Fix Version/s: deferred

Type: Improvement Priority: Major
Reporter: Andrew Seyler Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


 Description   

run our suite of tests against the IBM implementation and note inconsistencies.
This will require significant test harness type development.
We'll call this Phase 1.



 Comments   
Comment by Mike Beckerle [ 18/May/16 ]

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")

Generated at Fri Mar 29 03:03:25 CDT 2024 using Jira 9.12.0#9120000-sha1:e0c80bfafbb0987ecd9cf214f09249800d7ea6a0.