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

From: Eli Barzilay (eli at barzilay.org)
Date: Tue Feb 15 07:32:27 EST 2011

Three minutes ago, Noel Welsh wrote:
> What I have built is the foundations more or less as you described
> them 2009.

I'll move this to the dev list.  (Probably even better to take it
off-line.)  These are the problems that I see in this being that
foundational thing:

* It uses TR -- but it has to be very minimal.  (*Extremely* minimal,
  since it's a candidate for inclusion in the `racket' language, which
  is why I was thinking of not much more than agreed structs and

* I don't see why some results are structs and some are exceptions.

* I don't see the point of a `pending' struct -- if it's supposed to
  represent a pending test, then it seems to me that the test itself
  should be modified when it has been executed.

* Slightly worse: how would pending tests be used with something like
  my tester or the rackunit lightweight things where there is no way
  to know the tests in advance?

* The test-listener thing is good (I missed it when I looked at the
  code earlier).

* I'm not sure about things around "test-name" -- it should be free
  form information that the testing framework should render later on.
  Perhaps with a minimal spec of source and name, where a name can be
  #f.  (I'm thinking of these "anonymous" tests here.)  (This might be
  some unification of your name and info things, which should really
  always come together since you'd never modify one without the

* The `with-*' macros should go away.  They're leaks of the higher
  level code.

* The same goes for `pass' and `fail'.  Even more importantly `lift',
  which is dictating some treatment of errors etc.

          ((lambda (x) (x x)) (lambda (x) (x x)))          Eli Barzilay:
                    http://barzilay.org/                   Maze is Life!

Posted on the dev mailing list.