Michael Beckerle created DAFFODIL-2081:
------------------------------------------
Summary: TDML doc page description of twoPass incorrect
Key: DAFFODIL-2081
URL: https://issues.apache.org/jira/browse/DAFFODIL-2081
Project: Daffodil
Issue Type: Bug
Components: Documentation
Affects Versions: 2.3.0
Reporter: Michael Beckerle
Fix For: 2.4.0
The description of twoPass parserTestCases is not correct.
The first parse happens and creates infoset1.
The doc says infoset1 must not match the expected infoset, but that's not
correct. It may or may not match. Often it will match.
Then the unparse happens and creates outData1
OutData1 must not match the original input data. If it did a onePass test would
be sufficient.
So that part is correct.
Then the second parse happens and creates infoset2.
Infoset2 must match the expected infoset.
This can be verified by editing the CSV example. Add a second separator by
changing dfdl:separator="," to dfdl:separator="| ," so that pipe or comma are
accepted as separators, but pipe will be output by the unparser since it is
listed first.
Parser test cases that are default onePass will now fail, because the unparse
produces data with pipes, but the input data had commas.
However, the infoset created by the first parse does match what is expected.
Changing these tests to "twoPass" makes them work. That means the fact that the
first infoset comparison matched the expected is tolerated. The doc says it is
not.
Note that besides the doc page, the tdml.xsd in daffodil-lib has documentation
in comments in it, and that is also wrong.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)