On Thursday 21 August 2008 13:07:22 Eric Wilhelm wrote: > Well, exactly how are we defining "sack", "potato", and "wad" here, and > how does it have anything to do with what people want?
Specifying a serialization format in TAP diagnostics says "Here's a serialization format you can use to store a complex data structure, perhaps an object, perhaps with type information, to encode into a text-based protocol intended for humans to read and interpret, hoping that something on the other end will understand the precise semantics of the serialized object and do something sane with it... oh, and there's something in that stream which tells you that the test passed, if you can dig out the important one bit of information." That part is the wad. The sack is the big arbitrary bag of out-of-band information potentially attached to the TAP stream which can contain anything (which tends to encourage people to put anything in it). The potato is the arbitrary anything which people may want to put into the sack. (You might find it amusing to note that the SOAP folks didn't use the sack/potato/wad metaphor when naming their failure.) I wonder why anyone wants a test so complex that its diagnostic requires you to serialize and deserialize objects and/or nested data structures to and from custom TAP producers and consumers, and, if you really need to do that, if you should start with a testing zeitgeist which doesn't consider a strict separation of producer and consumer a necessary and sufficient condition. Me, I'll be over here, trying to make my tests sufficiently easy to debug that I don't have to worry about these things. -- c