3
3
;;; test asdf:try-recompiling restart
5
(load "script-support.lisp")
7
;(trace asdf::find-component)
8
;(trace asdf:run-shell-command asdf:oos asdf:perform asdf:operate)
10
;(trace excl.osi:command-output)
11
5
(defvar *caught-error* nil)
13
;;(format t "trlc1 1~%")
14
(when (probe-file "try-reloading-dependency.asd")
15
(asdf:run-shell-command "rm -f ~A"
16
(namestring "try-reloading-dependency.asd")))
17
(setf asdf:*central-registry* '(*default-pathname-defaults*))
18
(setf asdf::*defined-systems* (asdf::make-defined-systems-table))
19
;;(format t "trlc1 2~%")
20
(handler-bind ((error (lambda (c)
21
(format t "~&Caught error ~s" c)
22
(setf *caught-error* t)
23
(asdf:run-shell-command
24
"cp try-reloading-dependency.hidden try-reloading-dependency.asd")
25
;;(format t "trlc1 5~%")
26
(multiple-value-bind (name mode)
27
(find-symbol (symbol-name 'retry) :asdf)
28
(assert (eq mode :external) nil "Mode of ~s was not external" name)
29
;;(format t "trlc1 6~%")
30
(let ((restart (find-restart name c)))
31
;;(format t "trlc1 7~%")
33
(format t "~&restart: ~S~&" restart)
34
(when restart (invoke-restart restart)))))))
35
;;(format t "trlc1 3~%")
36
(asdf:oos 'asdf:load-op 'try-reloading-1))
37
;;(format t "trlc1 4~%")
38
(assert *caught-error*))
6
(delete-file-if-exists "try-reloading-dependency.asd")
7
(asdf::clear-defined-systems)
10
(format t "~&Caught error ~s" c)
11
(setf *caught-error* t)
12
(concatenate-files '("try-reloading-dependency.hidden") "try-reloading-dependency.asd")
14
(multiple-value-bind (name mode) (find-symbol* :retry :asdf)
15
(assert (eq mode :external) () "Mode of ~s was not external" name)
16
(let ((restart (find-restart name c)))
18
(when restart (invoke-restart restart)))))))
19
(load-system 'try-reloading-1))
20
(assert *caught-error*)