On a quick skim, looks like nice work. If you want to see if it handles a lot of the cases (better or as well) that lisp-unit was designed for, see
This is what tests my students' solutions to exercises from Graham and elsewhere. I'd prefer to use a standard test framework in my class, but I would want that particular file to continue to be simple for novices to read and understand, since they're
the target audience.
I'll try making the translation myself sometime but it won't be for the next few months at least, due to time constraints.
I notice that you didn't include an "assert-prints" though obviously it's not hard to use some wrapper macro like
(assert-equal "...." (collect-output (print-dots 4)))
I would recommend adding something comparable to lisp-unit's assert-equality that lets you handle special equality testers, like set-equal, epsilon-equal, etc. (I used to call it assert-predicate but that implied a unary rather than binary predicate.)
Nice job.