From ecac5093231c4bfb072dd056fed332b1728b3be3 Mon Sep 17 00:00:00 2001
From: pfdietz <pfdietz@localhost>
Date: Sat, 29 Nov 2003 02:03:11 +0000
Subject: [PATCH] Some gethash tests.

---
 ansi-tests/gethash.lsp | 50 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 50 insertions(+)
 create mode 100644 ansi-tests/gethash.lsp

diff --git a/ansi-tests/gethash.lsp b/ansi-tests/gethash.lsp
new file mode 100644
index 00000000..e611aca1
--- /dev/null
+++ b/ansi-tests/gethash.lsp
@@ -0,0 +1,50 @@
+;-*- Mode:     Lisp -*-
+;;;; Author:   Paul Dietz
+;;;; Created:  Fri Nov 28 06:05:21 2003
+;;;; Contains: Tests of GETHASH
+
+(in-package :cl-test)
+
+;;; Most testing of GETHASH is in test-hash-table-1 in hash-table-aux.lsp
+
+(deftest gethash.1
+  (gethash 'x (make-hash-table) 'y)
+  y nil)
+
+(deftest gethash.2
+  (gethash nil (make-hash-table) 'a)
+  a nil)
+
+(deftest gethash.3
+  (gethash nil (make-hash-table) 'a)
+  a nil)
+
+(deftest gethash.4
+  (multiple-value-bind (value present)
+      (gethash 'a (let ((table (make-hash-table)))
+		    (setf (gethash 'a table) 'b)
+		    table))
+    (values value (notnot present)))
+  b t)
+
+(deftest gethash.5
+  (let ((table (make-hash-table))
+	(i 0))
+    (values
+     (setf (gethash 'x table (incf i)) 'y)
+     i
+     (gethash 'x table)))
+  y 1 y)
+
+(deftest gethash.error.1
+  (classify-error (gethash))
+  program-error)
+
+(deftest gethash.error.2
+  (classify-error (gethash 'foo))
+  program-error)
+
+(deftest gethash.error.3
+  (classify-error (gethash 'foo (make-hash-table) nil nil))
+  program-error)
+
-- 
GitLab