comparison tests/automated/hash-table-tests.el @ 442:abe6d1db359e r21-2-36

Import from CVS: tag r21-2-36
author cvs
date Mon, 13 Aug 2007 11:35:02 +0200
parents 3ecd8885ac67
children 576fb035e263
comparison
equal deleted inserted replaced
441:72a7cfa4a488 442:abe6d1db359e
39 ;; Test all combinations of make-hash-table keywords 39 ;; Test all combinations of make-hash-table keywords
40 (dolist (test '(eq eql equal)) 40 (dolist (test '(eq eql equal))
41 (dolist (size '(0 1 100)) 41 (dolist (size '(0 1 100))
42 (dolist (rehash-size '(1.1 9.9)) 42 (dolist (rehash-size '(1.1 9.9))
43 (dolist (rehash-threshold '(0.2 .9)) 43 (dolist (rehash-threshold '(0.2 .9))
44 (dolist (weakness '(nil t key value)) 44 (dolist (weakness '(nil key value key-or-value key-and-value))
45 (dolist (data '(() (1 2) (1 2 3 4))) 45 (dolist (data '(() (1 2) (1 2 3 4)))
46 (let ((ht (make-hash-table 46 (let ((ht (make-hash-table
47 :test test 47 :test test
48 :size size 48 :size size
49 :rehash-size rehash-size 49 :rehash-size rehash-size
56 (Assert (eql rehash-size (hash-table-rehash-size ht))) 56 (Assert (eql rehash-size (hash-table-rehash-size ht)))
57 (Assert (eql rehash-threshold (hash-table-rehash-threshold ht))) 57 (Assert (eql rehash-threshold (hash-table-rehash-threshold ht)))
58 (Assert (eq weakness (hash-table-weakness ht)))))))))) 58 (Assert (eq weakness (hash-table-weakness ht))))))))))
59 59
60 (loop for (fun weakness) in '((make-hashtable nil) 60 (loop for (fun weakness) in '((make-hashtable nil)
61 (make-weak-hashtable t) 61 (make-weak-hashtable key-and-value)
62 (make-key-weak-hashtable key) 62 (make-key-weak-hashtable key)
63 (make-value-weak-hashtable value)) 63 (make-value-weak-hashtable value))
64 do (Assert (eq weakness (hash-table-weakness (funcall fun 10))))) 64 do (Assert (eq weakness (hash-table-weakness (funcall fun 10)))))
65 65
66 (loop for (type weakness) in '((non-weak nil) 66 (loop for (type weakness) in '((non-weak nil)
67 (weak t) 67 (weak key-and-value)
68 (key-weak key) 68 (key-weak key)
69 (value-weak value)) 69 (value-weak value))
70 do (Assert (equal (make-hash-table :type type) 70 do (Assert (equal (make-hash-table :type type)
71 (make-hash-table :weakness weakness)))) 71 (make-hash-table :weakness weakness))))
72 72