[ 
https://issues.apache.org/jira/browse/DAFFODIL-1947?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16581571#comment-16581571
 ] 

Michael Beckerle commented on DAFFODIL-1947:
--------------------------------------------

with respect to verification, we have many tests with roundTrip='onePass' or 
"true" which is the default behavior, but a number of "twoPass" and even some 
"threePass" tests. The fact that these work, and do not report left over data 
errors indicates that this mechanism is working. 

> TDMLRunner - incorrect error on left-over data: TDMLException: Left over 
> data. Consumed 48 bit(s) with 0 bit(s) remaining.
> --------------------------------------------------------------------------------------------------------------------------
>
>                 Key: DAFFODIL-1947
>                 URL: https://issues.apache.org/jira/browse/DAFFODIL-1947
>             Project: Daffodil
>          Issue Type: Bug
>          Components: TDML Runner
>    Affects Versions: 2.1.0
>            Reporter: Michael Beckerle
>            Priority: Major
>             Fix For: 2.2.0
>
>
> When a test runs round trip, if the test parse succeeds, but the unparse 
> creates an extra character in the output, on reparse we get a left-over-data 
> error, but the error message is bogus because it says 0 bits remaining, which 
> makes no sense for left-over data.
> org.apache.daffodil.tdml.TDMLException: Left over data. Consumed 48 bit(s) 
> with 0 bit(s) remaining.
> In general, the round-trip logic should be a bit smarter. The output should 
> indicate what phase of the test it was in when the failure occurred. In this 
> specific case, the unparsed output doesn't match the size of the original 
> input. That might be ok on round trip, but in most cases we want 
> parse/unparse to work without having to reparse.
> We need to fix the bug so that this doesn't report incorrect left-over-data 
> info. We also need to change roundTrip to have a mode for one-pass only, 
> meaning that the unparse is expected to create exactly the same as the input 
> data (for parse tests), so that it should not try to reparse the unparsed 
> output, but should immediately report the error. 



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to