Mercurial > hg > xemacs-beta
view tests/automated/weak-tests.el @ 5176:8b2f75cecb89
rename objects* (.c, .h and .el files) to fontcolor*
-------------------- ChangeLog entries follow: --------------------
etc/ChangeLog addition:
2010-02-22 Ben Wing <ben@xemacs.org>
* dbxrc.in:
Rename objects.c -> fontcolor.c.
lisp/ChangeLog addition:
2010-02-22 Ben Wing <ben@xemacs.org>
* dumped-lisp.el (preloaded-file-list):
* font.el (font-tty-find-closest-color):
* fontcolor.el:
* fontcolor.el (ws-object-property-1): Removed.
* fontcolor.el (fontcolor-property-1): New.
* fontcolor.el (font-name):
* fontcolor.el (font-ascent):
* fontcolor.el (font-descent):
* fontcolor.el (font-width):
* fontcolor.el (font-height):
* fontcolor.el (font-proportional-p):
* fontcolor.el (font-properties):
* fontcolor.el (font-truename):
* fontcolor.el (color-name):
* fontcolor.el (color-rgb-components):
* x-faces.el:
Rename objects.el -> fontcolor.el.
lwlib/ChangeLog addition:
2010-02-22 Ben Wing <ben@xemacs.org>
* lwlib-colors.h:
objects*.h -> fontcolor*.h.
man/ChangeLog addition:
2010-02-22 Ben Wing <ben@xemacs.org>
* internals/internals.texi (A Summary of the Various XEmacs Modules):
* internals/internals.texi (Modules for other Display-Related Lisp Objects):
objects*.[ch] -> fontcolor*.[ch].
nt/ChangeLog addition:
2010-02-22 Ben Wing <ben@xemacs.org>
* xemacs.dsp:
* xemacs.mak:
* xemacs.mak (OPT_OBJS):
objects*.[ch] -> fontcolor*.[ch].
src/ChangeLog addition:
2010-02-22 Ben Wing <ben@xemacs.org>
* EmacsFrame.c:
* Makefile.in.in (x_objs):
* Makefile.in.in (mswindows_objs):
* Makefile.in.in (tty_objs):
* Makefile.in.in (gtk_objs):
* Makefile.in.in (objs):
* console-tty.h:
* console-x-impl.h:
* console-x-impl.h (struct x_device):
* console-x.h:
* console-xlike-inc.h:
* depend:
* device-gtk.c:
* device-msw.c:
* device-x.c:
* device-x.c (x_init_device):
* device-x.c (x_finish_init_device):
* device.c:
* devslots.h (MARKED_SLOT):
* emacs.c (main_1):
* event-Xt.c:
* event-gtk.c:
* event-msw.c:
* faces.c:
* font-mgr.c:
* fontcolor-gtk-impl.h:
* fontcolor-gtk.c:
* fontcolor-gtk.c (syms_of_fontcolor_gtk):
* fontcolor-gtk.c (console_type_create_fontcolor_gtk):
* fontcolor-gtk.c (vars_of_fontcolor_gtk):
* fontcolor-gtk.h:
* fontcolor-impl.h:
* fontcolor-msw-impl.h:
* fontcolor-msw.c:
* fontcolor-msw.c (syms_of_fontcolor_mswindows):
* fontcolor-msw.c (console_type_create_fontcolor_mswindows):
* fontcolor-msw.c (reinit_vars_of_fontcolor_mswindows):
* fontcolor-msw.c (vars_of_fontcolor_mswindows):
* fontcolor-msw.h:
* fontcolor-msw.h (mswindows_color_to_string):
* fontcolor-tty-impl.h:
* fontcolor-tty.c:
* fontcolor-tty.c (syms_of_fontcolor_tty):
* fontcolor-tty.c (console_type_create_fontcolor_tty):
* fontcolor-tty.c (vars_of_fontcolor_tty):
* fontcolor-tty.h:
* fontcolor-x-impl.h:
* fontcolor-x.c:
* fontcolor-x.c (syms_of_fontcolor_x):
* fontcolor-x.c (console_type_create_fontcolor_x):
* fontcolor-x.c (vars_of_fontcolor_x):
* fontcolor-x.c (Xatoms_of_fontcolor_x):
* fontcolor-x.h:
* fontcolor.c:
* fontcolor.c (syms_of_fontcolor):
* fontcolor.c (specifier_type_create_fontcolor):
* fontcolor.c (reinit_specifier_type_create_fontcolor):
* fontcolor.c (reinit_vars_of_fontcolor):
* fontcolor.c (vars_of_fontcolor):
* fontcolor.h:
* fontcolor.h (set_face_boolean_attached_to):
* frame-gtk.c:
* frame-x.c:
* glyphs-eimage.c:
* glyphs-gtk.c:
* glyphs-msw.c:
* glyphs-widget.c:
* glyphs-x.c:
* glyphs.c:
* gtk-glue.c:
* gtk-glue.c (xemacs_type_register):
* gtk-xemacs.c:
* inline.c:
* intl-win32.c:
* lisp.h:
* lrecord.h:
* mule-charset.c:
* native-gtk-toolbar.c:
* redisplay-msw.c:
* redisplay-tty.c:
* redisplay.c:
* select-x.c:
* select.c:
* symsinit.h:
* toolbar-msw.c:
* toolbar-msw.c (TOOLBAR_ITEM_ID_BITS):
* toolbar-x.c:
* ui-gtk.c:
* window.c:
Rename objects*.[ch] -> fontcolor*.[ch]. Fix up all references to
the old files (e.g. in #include statements, Makefiles,
functions like syms_of_objects_x(), etc.).
tests/ChangeLog addition:
2010-02-22 Ben Wing <ben@xemacs.org>
* reproduce-crashes.el (8):
objects*.[ch] -> fontcolor*.[ch].
author | Ben Wing <ben@xemacs.org> |
---|---|
date | Mon, 22 Feb 2010 06:49:30 -0600 |
parents | 189fb67ca31a |
children | 0f66906b6e37 |
line wrap: on
line source
;; Copyright (C) 1998 Free Software Foundation, Inc. ;; Author: Mike Sperber <mike@xemacs.org> ;; Maintainer: Mike Sperber <mike@xemacs.org> ;; Created: 2002 ;; Keywords: tests, database ;; This file is part of XEmacs. ;; XEmacs is free software; you can redistribute it and/or modify it ;; under the terms of the GNU General Public License as published by ;; the Free Software Foundation; either version 2, or (at your option) ;; any later version. ;; XEmacs is distributed in the hope that it will be useful, but ;; WITHOUT ANY WARRANTY; without even the implied warranty of ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ;; General Public License for more details. ;; You should have received a copy of the GNU General Public License ;; along with XEmacs; see the file COPYING. If not, write to the Free ;; Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA ;; 02111-1307, USA. ;;; Synched up with: Not in FSF. ;;; Commentary: ;;; Test implementation of weak boxes, ephemerons, and weak lists ;;; See test-harness.el (condition-case err (require 'test-harness) (file-error (when (and (boundp 'load-file-name) (stringp load-file-name)) (push (file-name-directory load-file-name) load-path) (require 'test-harness)))) (garbage-collect) ;; tests for weak-boxes (let ((w (make-weak-box (cons 2 3)))) (Assert-equal (cons 2 3) (weak-box-ref w)) (garbage-collect) (Assert (not (weak-box-ref w)))) (garbage-collect) ;; tests for ephemerons (let* ((p (cons 3 4)) (finalized-p nil) (eph1 (make-ephemeron (cons 1 2) p #'(lambda (value) (setq finalized-p t)))) (eph2 (make-ephemeron p p))) (Assert-eq p (ephemeron-ref (make-ephemeron (cons 1 2) p))) (Assert (ephemeron-p (make-ephemeron (cons 1 2) p))) (garbage-collect) (garbage-collect) ; ensure the post-gc hook runs (Assert finalized-p) (Assert (not (ephemeron-ref eph1))) (garbage-collect) (Assert-eq p (ephemeron-ref eph2))) (garbage-collect) ;; tests for simple weak-lists (let* ((a (cons 23 42)) (b (cons 42 65)) (testlist (list a b)) (weaklist1 (make-weak-list 'simple)) (weaklist2 (make-weak-list 'simple)) (weaklist3 (make-weak-list 'simple)) (weaklist4 (make-weak-list 'simple))) (set-weak-list-list weaklist1 testlist) (set-weak-list-list weaklist2 (list (cons 1 2) a b)) (set-weak-list-list weaklist3 (list a (cons 1 2) b)) (set-weak-list-list weaklist4 (list a b (cons 1 2))) (Assert (weak-list-p weaklist1)) (Assert-eq (weak-list-type weaklist1) 'simple) (Assert (weak-list-p weaklist2)) (Assert-eq (weak-list-type weaklist2) 'simple) (Assert (weak-list-p weaklist3)) (Assert-eq (weak-list-type weaklist3) 'simple) (Assert (weak-list-p weaklist4)) (Assert-eq (weak-list-type weaklist4) 'simple) (garbage-collect) (Assert-eq (weak-list-list weaklist1) testlist) (Assert-equal (weak-list-list weaklist2) testlist) (Assert-equal (weak-list-list weaklist3) testlist) (Assert-equal (weak-list-list weaklist4) testlist)) (garbage-collect) ;; tests for assoc weak-lists (let* ((a (cons 23 42)) (b (cons a a)) (testlist (list b b)) (weaklist1 (make-weak-list 'assoc)) (weaklist2 (make-weak-list 'assoc)) (weaklist3 (make-weak-list 'assoc)) (weaklist4 (make-weak-list 'assoc))) (set-weak-list-list weaklist1 testlist) (set-weak-list-list weaklist2 (list b (cons (cons 1 2) a) b)) (set-weak-list-list weaklist3 (list b (cons a (cons 1 2)) b)) (set-weak-list-list weaklist4 (list b (cons (cons 1 2) (cons 3 4)) b)) (Assert (weak-list-p weaklist1)) (Assert-eq (weak-list-type weaklist1) 'assoc) (Assert (weak-list-p weaklist2)) (Assert-eq (weak-list-type weaklist2) 'assoc) (Assert (weak-list-p weaklist3)) (Assert-eq (weak-list-type weaklist3) 'assoc) (Assert (weak-list-p weaklist4)) (Assert-eq (weak-list-type weaklist4) 'assoc) (garbage-collect) (Assert-eq (weak-list-list weaklist1) testlist) (Assert-equal (weak-list-list weaklist2) testlist) (Assert-equal (weak-list-list weaklist3) testlist) (Assert-equal (weak-list-list weaklist4) testlist)) (garbage-collect) ;; tests for key-assoc weak-lists (let* ((a (cons 23 42)) (b (cons a a)) (testlist (list b b)) (weaklist1 (make-weak-list 'key-assoc)) (weaklist2 (make-weak-list 'key-assoc)) (weaklist3 (make-weak-list 'key-assoc)) (weaklist4 (make-weak-list 'key-assoc))) (set-weak-list-list weaklist1 testlist) (set-weak-list-list weaklist2 (list b (cons (cons 1 2) a) b)) (set-weak-list-list weaklist3 (list b (cons a (cons 1 2)) b)) (set-weak-list-list weaklist4 (list b (cons (cons 1 2) (cons 3 4)) b)) (Assert (weak-list-p weaklist1)) (Assert-eq (weak-list-type weaklist1) 'key-assoc) (Assert (weak-list-p weaklist2)) (Assert-eq (weak-list-type weaklist2) 'key-assoc) (Assert (weak-list-p weaklist3)) (Assert-eq (weak-list-type weaklist3) 'key-assoc) (Assert (weak-list-p weaklist4)) (Assert-eq (weak-list-type weaklist4) 'key-assoc) (garbage-collect) (Assert-eq (weak-list-list weaklist1) testlist) (Assert-equal (weak-list-list weaklist2) testlist) (Assert-equal (weak-list-list weaklist3) (list b (cons a (cons 1 2)) b)) (Assert-equal (weak-list-list weaklist4) testlist)) (garbage-collect) ;; tests for value-assoc weak-lists (let* ((a (cons 23 42)) (b (cons a a)) (testlist (list b b)) (weaklist1 (make-weak-list 'value-assoc)) (weaklist2 (make-weak-list 'value-assoc)) (weaklist3 (make-weak-list 'value-assoc)) (weaklist4 (make-weak-list 'value-assoc))) (set-weak-list-list weaklist1 testlist) (set-weak-list-list weaklist2 (list b (cons (cons 1 2) a) b)) (set-weak-list-list weaklist3 (list b (cons a (cons 1 2)) b)) (set-weak-list-list weaklist4 (list b (cons (cons 1 2) (cons 3 4)) b)) (Assert (weak-list-p weaklist1)) (Assert-eq (weak-list-type weaklist1) 'value-assoc) (Assert (weak-list-p weaklist2)) (Assert-eq (weak-list-type weaklist2) 'value-assoc) (Assert (weak-list-p weaklist3)) (Assert-eq (weak-list-type weaklist3) 'value-assoc) (Assert (weak-list-p weaklist4)) (Assert-eq (weak-list-type weaklist4) 'value-assoc) (garbage-collect) (Assert-eq (weak-list-list weaklist1) testlist) (Assert-equal (weak-list-list weaklist2) (list b (cons (cons 1 2) a) b)) (Assert-equal (weak-list-list weaklist3) testlist) (Assert-equal (weak-list-list weaklist4) testlist)) (garbage-collect) ;; tests for full-assoc weak-lists (let* ((a (cons 23 42)) (b (cons a a)) (testlist (list b b)) (weaklist1 (make-weak-list 'full-assoc)) (weaklist2 (make-weak-list 'full-assoc)) (weaklist3 (make-weak-list 'full-assoc)) (weaklist4 (make-weak-list 'full-assoc))) (set-weak-list-list weaklist1 testlist) (set-weak-list-list weaklist2 (list b (cons (cons 1 2) a) b)) (set-weak-list-list weaklist3 (list b (cons a (cons 1 2)) b)) (set-weak-list-list weaklist4 (list b (cons (cons 1 2) (cons 3 4)) b)) (Assert (weak-list-p weaklist1)) (Assert-eq (weak-list-type weaklist1) 'full-assoc) (Assert (weak-list-p weaklist2)) (Assert-eq (weak-list-type weaklist2) 'full-assoc) (Assert (weak-list-p weaklist3)) (Assert-eq (weak-list-type weaklist3) 'full-assoc) (Assert (weak-list-p weaklist4)) (Assert-eq (weak-list-type weaklist4) 'full-assoc) (garbage-collect) (Assert-eq (weak-list-list weaklist1) testlist) (Assert-equal (weak-list-list weaklist2) (list b (cons (cons 1 2) a) b)) (Assert-equal (weak-list-list weaklist3) (list b (cons a (cons 1 2)) b)) (Assert-equal (weak-list-list weaklist4) testlist)) (garbage-collect) ;; test the intended functionality of the fixpoint iteration used for marking ;; weak data structures like the ephermerons. Basically this tests gc_internals ;; to work properly but it also ensures the ephemerons behave according to the ;; specification (let* ((inner_cons (cons 1 2)) (weak1 (make-ephemeron inner_cons (make-ephemeron inner_cons (cons 1 2) '(lambda (v) t)) #'(lambda (v) t)))) (Assert (ephemeron-ref (ephemeron-ref weak1))) (garbage-collect) ;; assure the inner ephis are still there (Assert (ephemeron-ref (ephemeron-ref weak1))) ;; delete the key reference and force cleaning up the garbage (setq inner_cons (cons 3 4)) (garbage-collect) (Assert (not (ephemeron-ref weak1))) ) (garbage-collect)