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! _________________________________________________ For list-related administrative tasks: http://lists.racket-lang.org/listinfo/dev