[racket] inline unit tests

From: David Janke (david at thejamesriver.com)
Date: Tue Jun 5 16:01:47 EDT 2012

I just finished reading the blog post about the pre-release submodules
feature, and I'm curious what you all think about the new "test" submodule
that allows inline unit tests...

"The new raco test shell command runs the test submodule of a given module,
so that raco test fish2.rkt checks that all the values of the fish list are
numbers. The test submodule imports rackunit for its check form, but that
import does not create a dependency on rackunit (which is a substantial
library) for modules that import "fish2.rkt"; the dependency is only for
the test submodule."

At first glance, the test submodule sounds like a cool idea, because your
tests can help document your functions. But, I can also imagine files where
the number of tests outnumber the lines of actual code. Plus, there's
something to be said for keeping different parts of an application
separate--tests vs. "work"

On the other hand, unless you explicitly run the tests, they are
effectively just comments, so no real harm in having them interspersed with
the rest of the code, right?

I'm fairly new to Racket and just wondering what the thinking is in the
community. Inline unit tests pop up here and there in other languages
(Python has doctest), but it's not really widespread. Seeing how it's going
to be part of the Racket core, maybe it's a technique I should start using?

David Janke
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.racket-lang.org/users/archive/attachments/20120605/9eaadd0a/attachment.html>

Posted on the users mailing list.