Climbing into this conversation late (Goodness, what a time for me to go out of 
sight of the internet...) so I haven't delved into all of the proposals and 
arguments that have been flowing around. 

I first want to point out (if it hasn't been discussed already) that the 
test-engine library was actually developed to support multiple different 
testing front ends (originally Java's and Scheme's, but it was meant to be 
flexible). While it doesn't do this as robustly well as I'd like, some of the 
structures and support I've noticed being discussed are possibly lurking within 
the implementation. 
I'd certainly be happy to assist in efforts to make the test-engine more robust 
for supporting other testing packages integrated with DrRacket and/or the 
textual variant.

I'm partially making the library more flexible myself at the moment because 
I've been trying to implement some of my more recent research on testing into 
Racket (System Tests from Unit Tests, UCam techreport and soon to be ICFP 
submission), that I'd like to make available once it's ready and have 
integrated with the test engine (and therefore DrRacket).

-Kathy


On 20 Feb 2011, at 5:37:48, Noel Welsh wrote:

> Here's a proposal that attempts to synthesise prior discussion. It
> support the features I want without imposing overhead on Eli.
> 
> ;; Base Types
> 
> (define-type (Dict Key Value)
>  (U (HashTable Key Value) (Listof (Pair Key Value))))
> 
> (define-type Name (Listof Symbol))
> (define-type Info (Dict Symbol Any))
> 
> ;; Test Results
> 
> (struct: Test-Info ([name : Name] [info : Info] [result: Test-Result]))
> 
> (define-type Test-Result (U success failure))
> 
> (struct: Success ())
> ;; Skipped and Pending are a subtype of Success -- report it if you support it
> (struct: Skipped Success ())
> (struct: Pending Success ())
> 
> (struct: Failure ([exn : (U exn #f)]))
> ;; An error is a failure that occurred outside a testing construct --
> report it if you support it
> (struct: Error Failure ())
> 
> N.
> _________________________________________________
>  For list-related administrative tasks:
>  http://lists.racket-lang.org/listinfo/dev


_________________________________________________
  For list-related administrative tasks:
  http://lists.racket-lang.org/listinfo/dev

Reply via email to