fix coverage of `file/resource' tests

This commit is contained in:
Matthew Flatt 2011-02-05 08:32:33 -07:00
parent 18eb7c86b5
commit 3c4807f032

View File

@ -38,10 +38,18 @@
(let ([b (box 10)]) (let ([b (box 10)])
(rtest #t get-resource key (entry "Stuff") b) (rtest #t get-resource key (entry "Stuff") b)
(xtest 0 10 unbox b)) (xtest 0 10 unbox b))
(rtest #t write-resource key (entry "Stuff") 88)
(rtest "88" get-resource key (entry "Stuff"))
(rtest #t write-resource key (entry "Stuff") #"!")
(rtest "!" get-resource key (entry "Stuff"))
;; An integer-valued resource ;; An integer-valued resource
(rtest #t write-resource key (entry "Count") 17 #:type 'dword) (rtest #t write-resource key (entry "Count") 17 #:type 'dword)
(rtest "17" get-resource key (entry "Count")) (rtest "17" get-resource key (entry "Count"))
(rtest #t write-resource key (entry "Count") "17" #:type 'dword)
(rtest "17" get-resource key (entry "Count"))
(rtest #t write-resource key (entry "Count") #"17" #:type 'dword)
(rtest "17" get-resource key (entry "Count"))
(rtest #"17" get-resource key (entry "Count") #:type 'bytes) (rtest #"17" get-resource key (entry "Count") #:type 'bytes)
(rtest 17 get-resource key (entry "Count") #:type 'integer) (rtest 17 get-resource key (entry "Count") #:type 'integer)
(rtest #t write-resource key (entry "Count") -17 #:type 'dword) (rtest #t write-resource key (entry "Count") -17 #:type 'dword)
@ -52,17 +60,24 @@
(rtest "i?mage" get-resource key (entry "Data")) (rtest "i?mage" get-resource key (entry "Data"))
(rtest #"i\377mage" get-resource key (entry "Data") #:type 'bytes) (rtest #"i\377mage" get-resource key (entry "Data") #:type 'bytes)
(rtest 0 get-resource key (entry "Data") #:type 'integer) (rtest 0 get-resource key (entry "Data") #:type 'integer)
(rtest #t write-resource key (entry "Data") 17 #:type 'bytes)
(rtest "17" get-resource key (entry "Data"))
(rtest #t write-resource key (entry "Data") "17" #:type 'bytes)
(rtest "17" get-resource key (entry "Data"))
;; .ini file: ;; .ini file:
(let ([tmp-ini (make-temporary-file "temp~a.ini")]) (let ([tmp-ini (make-temporary-file "temp~a.ini")])
(rtest #f get-resource "Temporary" "Stuff" #f tmp-ini) (rtest #f get-resource "Temporary" "Stuff" #f tmp-ini)
(rtest #t write-resource "Temporary" "Stuff" "howdy" tmp-ini) (rtest #t write-resource "Temporary" "Stuff" "howdy" tmp-ini)
(rtest "howdy" get-resource "Temporary" "Stuff" #f tmp-ini) (rtest "howdy" get-resource "Temporary" "Stuff" #f tmp-ini)
(let ([b (box "")])
(rtest #t get-resource "Temporary" "Stuff" b tmp-ini)
(xtest "howdy" "" unbox b))
(rtest #f get-resource "Temporary" "more" #f tmp-ini) (rtest #f get-resource "Temporary" "more" #f tmp-ini)
(rtest #t write-resource "Temporary" "more" 10 tmp-ini) (rtest #t write-resource "Temporary" "more" 10 tmp-ini)
(rtest 10 get-resource "Temporary" "more" #f tmp-ini #:type 'integer) (rtest 10 get-resource "Temporary" "more" #f tmp-ini #:type 'integer)
(when (eq? 'windows (system-type)) (when (eq? 'windows (system-type))
(test "[Temporary]\r\nStuff=howdy\r\nmore=10\r\n" file->string tmp-ini) (rtest "[Temporary]\r\nStuff=howdy\r\nmore=10\r\n" file->string tmp-ini)
(delete-file tmp-ini))) (delete-file tmp-ini)))
(void)) (void))