/[gcl]/gcl/ansi-tests/cons-test-14.lsp
ViewVC logotype

Diff of /gcl/ansi-tests/cons-test-14.lsp

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.7 by pfdietz, Wed Jan 29 02:11:54 2003 UTC revision 1.8 by pfdietz, Mon Feb 10 00:05:26 2003 UTC
# Line 10  Line 10 
10  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
11  ;;; member-if  ;;; member-if
12    
13  (deftest member-if-1  (deftest member-if.1
14    (member-if #'listp nil)    (member-if #'listp nil)
15    nil)    nil)
16    
17  (deftest member-if-2  (deftest member-if.2
18    (member-if #'(lambda (x) (eqt x 'a)) '(1 2 a 3 4))    (member-if #'(lambda (x) (eqt x 'a)) '(1 2 a 3 4))
19    (a 3 4))    (a 3 4))
20    
21  (deftest member-if-3  (deftest member-if.3
22    (member-if #'(lambda (x) (eql x 12)) '(4 12 11 73 11) :key #'1+)    (member-if #'(lambda (x) (eql x 12)) '(4 12 11 73 11) :key #'1+)
23    (11 73 11))    (11 73 11))
24    
25  (deftest member-if-4  (deftest member-if.4
26    (let ((test-inputs    (let ((test-inputs
27           `(1 a 11.3121 11.31s3 1.123f5 -1 0           `(1 a 11.3121 11.31s3 1.123f5 -1 0
28               13.13122d34 581.131e-10               13.13122d34 581.131e-10
# Line 40  Line 40 
40        test-inputs)))        test-inputs)))
41    t)    t)
42    
43  (deftest member-if-5  (deftest member-if.5
44    (member-if #'identity '(1 2 3 4 5) :key #'evenp)    (member-if #'identity '(1 2 3 4 5) :key #'evenp)
45    (2 3 4 5))    (2 3 4 5))
46    
47    ;;; Order of argument tests
48    
49    (deftest member-if.6
50      (let ((i 0) x y)
51        (values
52         (member-if (progn (setf x (incf i))
53                           #'identity)
54                    (progn (setf y (incf i))
55                           '(nil nil a b nil c d)))
56         i x y))
57      (a b nil c d) 2 1 2)
58    
59    (deftest member-if.7
60      (let ((i 0) x y z w)
61        (values
62         (member-if (progn (setf x (incf i))
63                           #'identity)
64                    (progn (setf y (incf i))
65                           '(nil nil a b nil c d))
66                    :key (progn (setf z (incf i)) #'identity)
67                    :key (progn (setf w (incf i)) #'not))
68                                
69         i x y z w))
70      (a b nil c d) 4 1 2 3 4)
71    
72    
73  ;;; Keyword tests  ;;; Keyword tests
74    
75  (deftest member-if.keywords.1  (deftest member-if.keywords.1
# Line 79  Line 105 
105  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;  ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
106  ;;; member-if-not  ;;; member-if-not
107    
108  (deftest member-if-not-1  (deftest member-if-not.1
109    (member-if-not #'listp nil)    (member-if-not #'listp nil)
110    nil)    nil)
111    
112  (deftest member-if-not-2  (deftest member-if-not.2
113    (member-if-not #'(lambda (x) (eqt x 'a)) '(a 1 2 a 3 4))    (member-if-not #'(lambda (x) (eqt x 'a)) '(a 1 2 a 3 4))
114    (1 2 a 3 4))    (1 2 a 3 4))
115    
116  (deftest member-if-not-3  (deftest member-if-not.3
117    (member-if-not #'(lambda (x) (not (eql x 12))) '(4 12 11 73 11) :key #'1+)    (member-if-not #'(lambda (x) (not (eql x 12))) '(4 12 11 73 11) :key #'1+)
118    (11 73 11))    (11 73 11))
119    
120  (deftest member-if-not-4  (deftest member-if-not.4
121    (let ((test-inputs    (let ((test-inputs
122           `(1 a 11.3121 11.31s3 1.123f5 -1 0           `(1 a 11.3121 11.31s3 1.123f5 -1 0
123               13.13122d34 581.131e-10               13.13122d34 581.131e-10
# Line 108  Line 134 
134            test-inputs)))            test-inputs)))
135    nil)    nil)
136    
137  (deftest member-if-not-5  (deftest member-if-not.5
138    (member-if-not #'not '(1 2 3 4 5) :key #'evenp)    (member-if-not #'not '(1 2 3 4 5) :key #'evenp)
139    (2 3 4 5))    (2 3 4 5))
140    
141    ;;; Order of evaluation tests
142    
143    (deftest member-if-not.6
144      (let ((i 0) x y)
145        (values
146         (member-if-not (progn (setf x (incf i))
147                               #'not)
148                        (progn (setf y (incf i))
149                               '(nil nil a b nil c d)))
150         i x y))
151      (a b nil c d) 2 1 2)
152    
153    (deftest member-if-not.7
154      (let ((i 0) x y z w)
155        (values
156         (member-if-not (progn (setf x (incf i))
157                               #'not)
158                        (progn (setf y (incf i))
159                               '(nil nil a b nil c d))
160                        :key (progn (setf z (incf i)) #'identity)
161                        :key (progn (setf w (incf i)) #'not))
162                                
163         i x y z w))
164      (a b nil c d) 4 1 2 3 4)
165    
166  ;;; Keyword tests  ;;; Keyword tests
167    
168  (deftest member-if-not.keywords.1  (deftest member-if-not.keywords.1

Legend:
Removed from v.1.7  
changed lines
  Added in v.1.8

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26