in-progress.lisp 919 Bytes
Newer Older
1 2 3 4 5
(in-package asdf)

(assert
(equalp
 (let ((*system-definition-search-functions*
6
        '(sysdef-central-registry-search))
7
       (*central-registry* (list "/tmp/ok-1/" "/tmp/bad" "/tmp/ok-2/")))
8
   (handler-bind
9
       ((error (lambda (c)
10 11
                 (when (find-restart 'remove-entry-from-registry)
                   (invoke-restart 'remove-entry-from-registry)))))
12 13 14 15 16 17 18 19
     (find-system "a" nil))
   *central-registry*)
 (list "/tmp/ok-1/" "/tmp/ok-2/"))
)

(assert
(equalp
 (let ((*system-definition-search-functions*
20
        '(sysdef-central-registry-search))
21
       (*central-registry* (list "/tmp/ok-1/" "/tmp/bad" "/tmp/ok-2/")))
22
   (handler-bind
23
       ((error (lambda (c)
24 25
                 (when (find-restart 'coerce-entry-to-directory)
                   (invoke-restart 'coerce-entry-to-directory)))))
26 27 28 29 30
     (find-system "a" nil))
   *central-registry*)
 (list "/tmp/ok-1/" #p"/tmp/bad/" "/tmp/ok-2/"))
)