CameronWills / OEUnit

Unit testing framework for OpenEdge ABL
25 stars 14 forks source link

Fix error when exporting failure with '<' sign. #18

Open jorenblancquaert opened 8 years ago

jorenblancquaert commented 8 years ago

When reporting a failure with SureFireReporter, the class gave an progress exception because the exporting of the less than sign ('<') is not supported.

We can replace this character by '<', this fixed the problem, and does export a proper xml.

The progress error : 4GL 4GLTRACE Return from RunClassAsTest [OEUnit/Automation/Pct/RunTests] ERROR 4GL -- (Procedure: 'OEUnit/Automation/Pct/RunTests' Line:41) X-NODEREF or X-DOCUMENT LOAD got an error: FATAL ERROR: file 'MEMPTR', line '3', column '0', message ''<' character cannot be used in attribute value 'message'; use &lt; instead'. (9082) 4GL 4GLTRACE Run RunClassAsTest "C:\workspace\Samplenet\samplenet_12_pro\samplenet-abl-sources\test\be\mips\samplenet\manual\samplelog\TestSampleLogFinder.cls" [Main Block - OEUnit/Automation/Pct/RunTests @ 41]

See attached screenshot of OEUnit in eclipse which can not be exported with the SureFireReporter.

oeunitlog

msabbott commented 8 years ago

Thank you for the pull request @jorenblancquaert.

Looking through your code, I can see that you are targeting just the one character to replace. I suspect that we may need to replace other characters as well, and it might be worthwhile if we investigate the inbuilt functionality of the OpenEdge XML writers for this.

At the same time, I suspect that you may have found a bug that is present in some of the other output formats (specifically the JUnit formatter) and so it makes sense to check here as well.

At the moment, I can't confirm the details I mentioned above, but will leave the request open until I can (unless anyone else is able to investigate as well)

Thanks, Mark