.
original commit: c58c7d93b2c90414e5563c8b1bc5deab07059ac5
This commit is contained in:
parent
8a4112887c
commit
86ea19893c
|
@ -163,7 +163,7 @@ for the last one, need a global "no more initialization can happen" flag.
|
|||
|
||||
(define (raise-unknown-preference-error sym fmt . args)
|
||||
(raise (exn:make-unknown-preference
|
||||
(string->immutable-string (string-append (format "~a: ") (apply format fmt args)))
|
||||
(string->immutable-string (string-append (format "~a: " sym) (apply format fmt args)))
|
||||
(current-continuation-marks))))
|
||||
|
||||
;; unmarshall : symbol marshalled -> any
|
||||
|
@ -304,7 +304,8 @@ for the last one, need a global "no more initialization can happen" flag.
|
|||
(exn-message exn))))
|
||||
#f)])
|
||||
(let ([syms (list main-preferences-symbol)]
|
||||
[vals (list (hash-table-map preferences marshall-pref))]
|
||||
[vals (list (append (hash-table-map preferences marshall-pref)
|
||||
(hash-table-map marshalled list)))]
|
||||
[res #t])
|
||||
(put-preferences
|
||||
syms vals
|
||||
|
|
|
@ -6,6 +6,7 @@
|
|||
(define ((check-eq? x) y) (eq? x y))
|
||||
(define pref-sym 'plt:not-a-real-preference)
|
||||
(define marshalling-pref-sym 'plt:not-a-real-preference-marshalling)
|
||||
(define default-test-sym 'plt:not-a-real-preference-default-test)
|
||||
|
||||
(define saved-prefs-file
|
||||
(let loop ([n 0])
|
||||
|
@ -73,6 +74,23 @@
|
|||
(check-eq? 'new-pref)
|
||||
`(begin (preferences:set-default ',pref-sym 'passed symbol?)
|
||||
(preferences:get ',pref-sym)))
|
||||
|
||||
(test 'preference-no-set-default-stage1
|
||||
(check-eq? 'stage1)
|
||||
`(begin (preferences:set-default ',default-test-sym 'default symbol?)
|
||||
(preferences:set ',default-test-sym 'new-value)
|
||||
(preferences:save)
|
||||
'stage1))
|
||||
(shutdown-mred)
|
||||
(test 'preference-no-set-default-stage2
|
||||
(check-eq? 'stage2)
|
||||
`(begin (preferences:save)
|
||||
'stage2))
|
||||
(shutdown-mred)
|
||||
(test 'preference-no-set-default-stage3
|
||||
(check-eq? 'new-value)
|
||||
`(begin (preferences:set-default ',default-test-sym 'default symbol?)
|
||||
(preferences:get ',default-test-sym)))
|
||||
|
||||
(test 'dialog-appears
|
||||
(lambda (x) (eq? 'passed x))
|
||||
|
|
Loading…
Reference in New Issue
Block a user