[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
  parameters.)

* 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
  other.)

* 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.