Would convert-syntax-error and convert-compile-time-error work? Sure they are macros, but wrapped up in a nice way.
https://docs.racket-lang.org/syntax/macro-testing.html On Sat, Aug 11, 2018 at 11:00 AM, Sage Gerard <zyrolast...@gmail.com> wrote: > Hi all, > > Still working the koans project and am hitting a design snag. My expected UX > is that you clone the repo, run racket koans/all.rkt, and then see nothing > but failing unit tests for you to fix. But since some exercises have > unbound module identifiers or related errors, an abort prevents rackunit > from printing a full report. > > "Well Sage, why don't you write tests that actually run?" Great question! > But if you look at that linked module you can see what I think is a clear, > concise exercise where checking in unbound identifiers seemed reasonable at > the time. I wanted someone to see that Racket was generating all of these > identifiers and write the corresponding struct definition. > > After wresting with various combinations of (with-handlers), (check-exn), > (fail), (module), and (call/prompt), I found that modules too picky about > where they are defined for me to simply catch an unbound identifier error, > and I wasn't liking how much noise I might be introducing in the koan > itself. > > I'm starting to think writing these kind of exercises in a friendly way is > only possible with macros, but before I go that far, is it possible for me > to catch a module-level unbound identifier error and print a rackunit > failure outright without distracting the student? > > I'd appreciate feedback on the design here too, since I have to pick a > direction to handle this kind of problem project-wide. > > Sage > > > > -- > You received this message because you are subscribed to the Google Groups > "Racket Users" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to racket-users+unsubscr...@googlegroups.com. > For more options, visit https://groups.google.com/d/optout. -- You received this message because you are subscribed to the Google Groups "Racket Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to racket-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.