> Yeah, that is very nice! (It should begin with "check" not "test" tho, right?)
Indeed; Jonah was writing w.r.t plai, which uses test. Should use check- in rackunit. I noticed that this also violates, from the rackunit docs: "Although checks are implemented as macros, which is necessary to grab source location, they are conceptually functions. This means, for instance, checks always evaluate their arguments." I suppose this should go in a separate section of "additional checks" or some such? On Mon, Nov 19, 2012 at 8:01 PM, Robby Findler <ro...@eecs.northwestern.edu>wrote: > Yeah, that is very nice! (It should begin with "check" not "test" tho, > right?) > > Robby > > > On Monday, November 19, 2012, Matthias Felleisen wrote: > >> >> That is cute. Why don't you just create a pull request and Ryan can >> integrate it into rackunit? -- Matthias >> >> >> >> >> >> On Nov 19, 2012, at 4:22 PM, Joe Gibbs Politz wrote: >> >> > A small suggestion: >> > >> > I used roughly this macro (credit Jonah Kagan) recently to help me >> write some tests for parsing code that agnostic to which source position is >> generated in the parse: >> > >> > (define-syntax test/match >> > (syntax-rules () >> > [(test/match actual expected pred) >> > (let ([actual-val actual]) >> > (with-check-info* (list (make-check-actual actual-val) >> > (make-check-expected 'expected)) >> > (thunk (check-true (match actual-val >> > [expected pred] >> > [_ false])))))] >> > >> > [(test/match actual expected) >> > (test/match actual expected true)])) >> > >> > Shriram remarked that he was surprised some sort of check-match wasn't >> in rackunit already. Is it worth adding something like this? >> > >> > I'm doing things like: >> > >> > (test/match (parse "5 'foo'") (s-block _ (list (s-num _ 5) (s-str _ >> "foo")))) >> > >> > Where the structs s-block, s-num, and s-str all expect a srcloc as >> their first argument, but I don't care about it for these tests. >> > >> > The actual use is at: >> > >> > >> https://github.com/brownplt/pyret-lang/blob/master/src/tests/parse-tests.rkt#L36 >> > >> > That file would be much, much uglier without this macro. >> > >> > Cheers, >> > Joe P. >> > >> > _________________________ >> > Racket Developers list: >> > http://lists.racket-lang.org/dev >> >>
_________________________ Racket Developers list: http://lists.racket-lang.org/dev