Open barneycarroll opened 3 years ago
I would have transferred this to MithrilJS/ospec, but I've been stripped of my admin rights...
What gives @isiahmeadows? I'm not exactly active, but I don't remember stepping down either.
This would require keeping structured assertion results, rather than strigifying on the fly as we do now...
The results are exposed to custom reporters, and some people take advantage of this, so the custom stringification will have to be kept around until the next major version.
I agree ospec reporting data shouldn’t be contingent on output APIs but I feel it should be easy enough to change the shape of the records to store the assertion operands — the (re)substitution could then take place as a runtime operation in o.report
.
Agreed!
ospecs messaging processes assertion values differently depending on environment. Under Node it uses util.inspect, the platforms preferred tool for debugging; but in the browser it falls back to a loosely opinionated custom process for stringifying values.
Browser consoles are much richer than Nodes' terminal output and could be better served by making use of string substitution, which allow intelligent representations of complex entities - see below for current vs suggested behaviour for exotic objects logged by ospec in Chrome
Happy to implement this myself.