From f1e38247e0a1259a76f1dfa993cdf6f983b245a6 Mon Sep 17 00:00:00 2001 From: Robby Findler Date: Fri, 20 Aug 2010 17:20:07 -0500 Subject: [PATCH] improved the error message for save-image closes PR 11076 --- collects/2htdp/private/image-more.rkt | 5 ++--- collects/2htdp/tests/test-image.rkt | 6 +++++- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/collects/2htdp/private/image-more.rkt b/collects/2htdp/private/image-more.rkt index 5486da5b76..fd8ba9f22e 100644 --- a/collects/2htdp/private/image-more.rkt +++ b/collects/2htdp/private/image-more.rkt @@ -57,9 +57,8 @@ [parent bp]) min-width 100) (send f show #t))) -(define (save-image pre-image filename) - (let* ([image (to-img pre-image)] - [bm (make-object bitmap% +(define/chk (save-image image filename) + (let* ([bm (make-object bitmap% (inexact->exact (ceiling (+ 1 (get-right image)))) (inexact->exact (ceiling (+ 1 (get-bottom image)))))] [bdc (make-object bitmap-dc% bm)]) diff --git a/collects/2htdp/tests/test-image.rkt b/collects/2htdp/tests/test-image.rkt index dcfb64c884..a22ddc576e 100644 --- a/collects/2htdp/tests/test-image.rkt +++ b/collects/2htdp/tests/test-image.rkt @@ -1532,7 +1532,8 @@ ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; -;; test that the extra mode check is there +;; test errors. +;; mostly test that the extra mode check is there ;; (test/exn (rectangle 10 10 "solid" (make-pen "black" 12 "solid" "round" "round")) @@ -1588,6 +1589,9 @@ => #rx"^polygon: expected ") +(test/exn (save-image "tri.png" (triangle 50 "solid" "purple")) + => + #rx"^save-image:") ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;