Hi Marc,
I regret that I'm not able to get down into the guts of the Java code and help fix it, so, instead I moan ;-)
Thanks for moaning! XQUnit is still sth. we are heavily working on, so any feedback is welcome.
- assertions causing an NPE when an XQuery error is raised but no traceback
that tells me what/where the error actually is. [ex1]
NPEs are usually serious bugs. We'll have a look at that.
- assertions causing a failure/error reported, produce a test result but
stop running further tests after the one that raises the error [ex2]
The reason is that maps are functions, and functions cannot be compared. But the current version of the XQuery spec. will provide support for comparing maps, so it's basically a matter of time when the comparision of maps will be made possible. I'll dig into this one as well; maybe it's not a big deal to provide an early yet stable implementation.
- Personally, I run the tests often (minutes rather than hours), and from
the shell. The XML format feedback isn't very helpful.
It's probably not that trivial to find a proper textual representation for everything that can be done with XQUnit. One thing you can do is to send the output to a second BaseX call. The following command-line code will only return the failures of your XML code:
basex -t . | basex -i - //failure
Of course, you could also call a function that does some more sophisticated stuff with your input.
Hope this helps, Christian