Update of /project/mcclim/cvsroot/mcclim/Tests In directory clnet:/tmp/cvs-serv30320/Tests
Modified Files: commands.lisp Added Files: input-editing.lisp Log Message: the command-table-error subclasses must handle :format-control and :format-arguments. Make it so, and test for it (and also test that not passing them doesn't lead to an unprintable condition.
New test file input-editing, for an invariant I spotted while browsing.
--- /project/mcclim/cvsroot/mcclim/Tests/commands.lisp 2006/03/23 17:03:40 1.3 +++ /project/mcclim/cvsroot/mcclim/Tests/commands.lisp 2006/04/21 12:03:23 1.4 @@ -50,3 +50,23 @@ 'removal-test-table) (command-not-present () t) (:no-error (x) (declare (ignore x)) nil))) + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;;; +;;; command table errors (see 27.2) +(assert (subtypep 'command-table-error 'error)) +(assert (subtypep 'command-table-not-found 'command-table-error)) +(assert (subtypep 'command-table-already-exists 'command-table-error)) +(assert (subtypep 'command-not-present 'command-table-error)) +(assert (subtypep 'command-not-accessible 'command-table-error)) +(assert (subtypep 'command-already-present 'command-table-error)) + +(let ((condition (make-condition 'command-table-error + :format-control "~A" + :format-arguments '(!)))) + (assert (find #! (format nil "~A" condition)))) +;;; not actually required to DTRT here, but we use this form (without +;;; control and arguments) internally, so make sure that we don't +;;; error out recursively when in the debugger with one of these. +(let ((condition (make-condition 'command-not-present))) + (format nil "~A" condition))
--- /project/mcclim/cvsroot/mcclim/Tests/input-editing.lisp 2006/04/21 12:03:23 NONE +++ /project/mcclim/cvsroot/mcclim/Tests/input-editing.lisp 2006/04/21 12:03:23 1.1 (defpackage :clim-tests (:use :clim-lisp :clim))
(in-package :clim-tests)
(assert (null *activation-gestures*))