Mercurial > hg > xemacs-beta
annotate tests/frame.el @ 5553:62edcc6a11ec
Add an assertion about argument order to #'apply-partially compiler macro
lisp/ChangeLog addition:
2011-08-24 Aidan Kehoe <kehoea@parhasard.net>
* cl-macs.el (apply-partially):
Add an assertion to this compiler macro, requiring that the order
of the placeholders corresponding to the arguments in the
constants vector of the constructed compiled function be the same
as the order of the arguments to #'apply-partially.
tests/ChangeLog addition:
2011-08-24 Aidan Kehoe <kehoea@parhasard.net>
* automated/lisp-tests.el:
Add a test of apply partially that depends on the relative order
of its arguments.
author | Aidan Kehoe <kehoea@parhasard.net> |
---|---|
date | Wed, 24 Aug 2011 11:06:41 +0100 |
parents | 308d34e9f07d |
children |
rev | line source |
---|---|
4980
931aaa7a6b37
Martin Buchholz claims tests/frame.el.
Jerry James <james@xemacs.org>
parents:
108
diff
changeset
|
1 ;;; Test geometry setting for frames. |
931aaa7a6b37
Martin Buchholz claims tests/frame.el.
Jerry James <james@xemacs.org>
parents:
108
diff
changeset
|
2 ;;; |
931aaa7a6b37
Martin Buchholz claims tests/frame.el.
Jerry James <james@xemacs.org>
parents:
108
diff
changeset
|
3 ;;; Copyright (C) 1997 Martin Buchholz |
931aaa7a6b37
Martin Buchholz claims tests/frame.el.
Jerry James <james@xemacs.org>
parents:
108
diff
changeset
|
4 ;;; |
5402
308d34e9f07d
Changed bulk of GPLv2 or later files identified by script
Mats Lidell <matsl@xemacs.org>
parents:
4980
diff
changeset
|
5 ;; This file is part of XEmacs. |
308d34e9f07d
Changed bulk of GPLv2 or later files identified by script
Mats Lidell <matsl@xemacs.org>
parents:
4980
diff
changeset
|
6 ;; |
308d34e9f07d
Changed bulk of GPLv2 or later files identified by script
Mats Lidell <matsl@xemacs.org>
parents:
4980
diff
changeset
|
7 ;; XEmacs is free software: you can redistribute it and/or modify it |
308d34e9f07d
Changed bulk of GPLv2 or later files identified by script
Mats Lidell <matsl@xemacs.org>
parents:
4980
diff
changeset
|
8 ;; under the terms of the GNU General Public License as published by the |
308d34e9f07d
Changed bulk of GPLv2 or later files identified by script
Mats Lidell <matsl@xemacs.org>
parents:
4980
diff
changeset
|
9 ;; Free Software Foundation, either version 3 of the License, or (at your |
308d34e9f07d
Changed bulk of GPLv2 or later files identified by script
Mats Lidell <matsl@xemacs.org>
parents:
4980
diff
changeset
|
10 ;; option) any later version. |
308d34e9f07d
Changed bulk of GPLv2 or later files identified by script
Mats Lidell <matsl@xemacs.org>
parents:
4980
diff
changeset
|
11 ;; |
308d34e9f07d
Changed bulk of GPLv2 or later files identified by script
Mats Lidell <matsl@xemacs.org>
parents:
4980
diff
changeset
|
12 ;; XEmacs is distributed in the hope that it will be useful, but WITHOUT |
308d34e9f07d
Changed bulk of GPLv2 or later files identified by script
Mats Lidell <matsl@xemacs.org>
parents:
4980
diff
changeset
|
13 ;; ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or |
308d34e9f07d
Changed bulk of GPLv2 or later files identified by script
Mats Lidell <matsl@xemacs.org>
parents:
4980
diff
changeset
|
14 ;; FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
308d34e9f07d
Changed bulk of GPLv2 or later files identified by script
Mats Lidell <matsl@xemacs.org>
parents:
4980
diff
changeset
|
15 ;; for more details. |
308d34e9f07d
Changed bulk of GPLv2 or later files identified by script
Mats Lidell <matsl@xemacs.org>
parents:
4980
diff
changeset
|
16 ;; |
308d34e9f07d
Changed bulk of GPLv2 or later files identified by script
Mats Lidell <matsl@xemacs.org>
parents:
4980
diff
changeset
|
17 ;; You should have received a copy of the GNU General Public License |
308d34e9f07d
Changed bulk of GPLv2 or later files identified by script
Mats Lidell <matsl@xemacs.org>
parents:
4980
diff
changeset
|
18 ;; along with XEmacs. If not, see <http://www.gnu.org/licenses/>. |
4980
931aaa7a6b37
Martin Buchholz claims tests/frame.el.
Jerry James <james@xemacs.org>
parents:
108
diff
changeset
|
19 |
108 | 20 (defmacro check-frame-geometry (xx yy) |
21 `(loop for frame in (list nil (selected-frame)) | |
22 do | |
23 (assert (eq (frame-property frame 'top) ,yy)) | |
24 (assert (eq (frame-property frame 'left) ,xx)) | |
25 (assert (eq (frame-property frame 'top) ,yy)) | |
26 (assert (eq (frame-property frame 'left) ,xx)) | |
27 (loop for plist in | |
28 (list (frame-properties) | |
29 (frame-properties nil) | |
30 (frame-properties (selected-frame))) | |
31 do | |
32 (assert (eq (plist-get plist 'top) ,yy)) | |
33 (assert (eq (plist-get plist 'left) ,xx))))) | |
34 | |
35 (loop for (x y) in '((0 0) (1 1) (3 3) (9 9) (10 20) (20 40) (40 80) (100 200)) | |
36 do | |
37 (loop for frame in (list nil (selected-frame)) | |
38 do | |
39 (set-frame-properties frame `(left ,x top ,y)) | |
40 (check-frame-geometry x y) | |
41 (set-frame-property frame 'top (+ y 3)) | |
42 (check-frame-geometry x (+ y 3)) | |
43 (set-frame-property frame 'left (+ x 3)) | |
44 (check-frame-geometry (+ x 3) (+ y 3)))) |