[racket] tests/eli-tester feedback (Was: Racket unit testing)

From: Neil Van Dyke (neil at neilvandyke.org)
Date: Sun Feb 13 22:15:14 EST 2011

Eli Barzilay wrote at 02/13/2011 09:41 PM:
> It currently shoots for (and will continue in the future) a very low readability overhead -- that's the whole reason for the infixish `=>' syntax. [...] To put this differently, I view tests as an important thing that lives in the api neighborhood.  So anything that requires looking at the documentation for casual readers is as bad as writing the manual in hebrew and and handing out dictionaries.

I'm not so sure about the requirement "readability by casual readers of 
the source without requiring looking at the documentation".

But if we do have that requirement, to me, it implies:

* Racket-idiomatic syntax (which usually means grouping parens, and no 
infix keywords); and

* fairly self-explanatory human-readable identifiers (like using the 
words like "equals", "eq", "result", "returns", "yields", "expect", and 
"value", and not using more ambiguous or cryptic symbols like "=>").

Going back to that root requirement... I think that unit testing should 
be so central to contemporary programming that we should just pick some 
syntax that makes sense for practical development both large and small, 
use it everywhere, and simply expect people who are looking at the 
source to know what Racket unit tests look like.  If we can do this 
canonical test syntax sensibly, and the syntax is set up so that we can 
plug in our own user interfaces for running the tests, I will convert 
all my existing and new open source code to use this canonical syntax.


Posted on the users mailing list.