From 9562c12fa875d6374cf505c004e35ef72378a96c Mon Sep 17 00:00:00 2001
From: pfdietz <pfdietz@localhost>
Date: Mon, 3 Mar 2003 14:10:56 +0000
Subject: [PATCH] Error case tests for invoke-debugger

---
 ansi-tests/invoke-debugger.lsp | 30 ++++++++++++++++++++++++++++++
 1 file changed, 30 insertions(+)

diff --git a/ansi-tests/invoke-debugger.lsp b/ansi-tests/invoke-debugger.lsp
index 700cf42e..405ee797 100644
--- a/ansi-tests/invoke-debugger.lsp
+++ b/ansi-tests/invoke-debugger.lsp
@@ -21,3 +21,33 @@
 	 (invoke-debugger cnd)))
    'bad)
   good)
+
+(deftest invoke-debugger.error.1
+  (classify-error (invoke-debugger))
+  program-error)
+
+(deftest invoke-debugger.error.2
+  (classify-error (invoke-debugger (make-condition 'simple-error) nil))
+  program-error)
+
+;;; If the debugger hook function expects the wrong number
+;;; of arguments, a program-error should be thrown in safe code
+;;; This error is thrown 'prior to entry to the standard debugger'.
+
+(deftest invoke-debugger.error.3
+  (classify-error
+   (let ((*debugger-hook* #'(lambda () nil)))
+     (invoke-debugger (make-condition 'simple-error))))
+  program-error)
+
+(deftest invoke-debugger.error.4
+  (classify-error
+   (let ((*debugger-hook* #'(lambda (c) c)))
+     (invoke-debugger (make-condition 'simple-error))))
+  program-error)
+
+(deftest invoke-debugger.error.5
+  (classify-error
+   (let ((*debugger-hook* #'(lambda (c hook x) (list c hook x))))
+     (invoke-debugger (make-condition 'simple-error))))
+  program-error)
-- 
GitLab