From 503f43a3f252a042515ff8527e4de7ce8430b783 Mon Sep 17 00:00:00 2001 From: Stephen Chang Date: Fri, 11 Oct 2013 04:31:31 -0400 Subject: [PATCH] fix require for-label ordering; add tests --- pasterack-test-cases.rkt | 4 ++++ pasterack.rkt | 13 ++++++++++--- 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/pasterack-test-cases.rkt b/pasterack-test-cases.rkt index 7274757..9d8cb96 100644 --- a/pasterack-test-cases.rkt +++ b/pasterack-test-cases.rkt @@ -4,6 +4,10 @@ (define test-cases '( + ;; proper doc linking + "2425" ; 2htdp/image image? doc link + "3233" ; htdp/bsl image? doc link + "6998" ; matrix mult (example of require id, perm, that's also in #lang) ;; path permissions "7449" ; delete file "4749" ; list root diff --git a/pasterack.rkt b/pasterack.rkt index b418f4c..ee29433 100644 --- a/pasterack.rkt +++ b/pasterack.rkt @@ -96,11 +96,18 @@ (++ "(except-in typed/racket " TR-bad-ids ")\n" "(only-meta-in 0 (only-in typed/racket " TR-bad-ids "))\n")] [else ""]) + ;; when required id is also in lang, favor require (cond [(htdp-lang? lang) - (++ (car lang-lst) " (subtract-in (combine-in " - (string-join reqs) ") " (car lang-lst) ")")] - [else (string-join (append lang-lst reqs))]) + (++ (string-join reqs) " " + "(subtract-in " (car lang-lst) + " (combine-in " (string-join reqs) "))")] + ;; (car lang-lst) " (subtract-in (combine-in " + ;; (string-join reqs) ") " (car lang-lst) ")")] +; [else (string-join (append lang-lst reqs))]) + [else (++ (string-join reqs) " " + "(subtract-in (combine-in " (string-join lang-lst) ")" + " (combine-in " (string-join reqs) "))")]) "))\n" "@codeblock|{\n~a}|") code))