Lapidary Design Overview

        by Nathaniel Talbott

I'd suggest starting with Kent Beck's design documentation for Smalltalk Unit (the granddaddy of all the 'xunits'), on which I've based my design. Even if you don't know Smalltalk, this is probably the best place to start, since Kent Beck's both a better writer and a better programmer than I am; it's definitely worth skimming the Smalltalk (or you could learn Smalltalk; I promise it will improve your Ruby code :-)).

Now that you've read that, here are each of the core classes in Lapidary along with a quick one-liner about what their responsibilities include. Someday I'll get around to drawing a diagram or something. Note that this is the design document; you should check out the usage document if you just want to know how to use Lapidary.

Framework classes and modules

Runner classes