Mercurial > hg > xemacs-beta
annotate tests/automated/search-tests.el @ 4903:70089046adef
fix compile problems in intl-encap* under VS6
-------------------- ChangeLog entries follow: --------------------
lib-src/ChangeLog addition:
2010-01-30 Ben Wing <ben@xemacs.org>
* make-mswin-unicode.pl:
Make it possible to specify an overridden prototype in cases where
either Cygwin or Visual Studio has errors in their headers that
can be corrected by falling back to a less qualified type (typically
without const).
src/ChangeLog addition:
2010-01-30 Ben Wing <ben@xemacs.org>
* intl-auto-encap-win32.c:
* intl-auto-encap-win32.c (qxeExtractAssociatedIcon):
* intl-auto-encap-win32.c (qxeExtractIconEx):
* intl-auto-encap-win32.c (qxeCreateMDIWindow):
* intl-auto-encap-win32.c (qxeCreateWindowStation):
* intl-auto-encap-win32.c (qxeDdeCreateStringHandle):
* intl-auto-encap-win32.c (qxeAbortSystemShutdown):
* intl-auto-encap-win32.c (qxeRegConnectRegistry):
* intl-auto-encap-win32.c (qxeGetICMProfile):
* intl-auto-encap-win32.h:
Rebuild.
* intl-encap-win32.c:
* intl-encap-win32.c (qxeUpdateICMRegKey):
Delete manual definitions of functions with former errors in
Cygwin headers but no longer. Use "override" with some functions
where Cygwin or VS6 accidentally omits a const declaration or
includes an extra one. Use "no" on SendMessageTimeout, which
has an error in the VS6 prototype (you could manually fix this
with an ifdef to split the Cygwin vs. VS6 calls, if we ever
actually used this function).
author | Ben Wing <ben@xemacs.org> |
---|---|
date | Sat, 30 Jan 2010 20:34:23 -0600 |
parents | c902301f8b7d |
children | e91e3e353805 6ef8256a020a |
rev | line source |
---|---|
4902
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
1 ;;; -*- coding: iso-8859-1 -*- |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
2 |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
3 ;; Copyright (C) 2000 Free Software Foundation, Inc. |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
4 ;; Copyright (C) 2010 Ben Wing. |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
5 |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
6 ;; Author: Yoshiki Hayashi <yoshiki@xemacs.org> |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
7 ;; Maintainer: Yoshiki Hayashi <yoshiki@xemacs.org> |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
8 ;; Created: 2000 |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
9 ;; Keywords: tests |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
10 |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
11 ;; This file is part of XEmacs. |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
12 |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
13 ;; XEmacs is free software; you can redistribute it and/or modify it |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
14 ;; under the terms of the GNU General Public License as published by |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
15 ;; the Free Software Foundation; either version 2, or (at your option) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
16 ;; any later version. |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
17 |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
18 ;; XEmacs is distributed in the hope that it will be useful, but |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
19 ;; WITHOUT ANY WARRANTY; without even the implied warranty of |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
20 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
21 ;; General Public License for more details. |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
22 |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
23 ;; You should have received a copy of the GNU General Public License |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
24 ;; along with XEmacs; see the file COPYING. If not, write to the Free |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
25 ;; Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
26 ;; 02111-1307, USA. |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
27 |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
28 ;;; Synched up with: Not in FSF. |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
29 |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
30 ;;; Commentary: |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
31 |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
32 ;; Test of non-regexp searching. |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
33 |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
34 ;; Split out of case-tests.el. |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
35 |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
36 ;; NOTE NOTE NOTE: See also: |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
37 ;; |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
38 ;; (1) regexp-tests.el, for regexp searching. |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
39 ;; (2) case-tests.el, for some case-related searches. |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
40 |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
41 ;; NOTE NOTE NOTE: There is some domain overlap among regexp-tests.el, |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
42 ;; search-tests.el and case-tests.el. The current rule for what goes where |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
43 ;; is: |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
44 ;; |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
45 ;; (1) Anything regexp-related goes in regexp-tests.el, including searches. |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
46 ;; (2) Non-regexp searches go in search-tests.el. This includes case-folding |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
47 ;; searches in the situation where the test tests both folding and |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
48 ;; non-folding behavior. |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
49 ;; (3) If it tests specifically case-folding search behavior, it may go in |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
50 ;; case-tets.el, especially if it is testing something non-search-related |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
51 ;; at the same time (e.g. the Unicode case map torture tests). |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
52 |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
53 (with-temp-buffer |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
54 (insert "Test Buffer") |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
55 (let ((case-fold-search t)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
56 (goto-char (point-min)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
57 (Assert-eq (search-forward "test buffer" nil t) 12) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
58 (goto-char (point-min)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
59 (Assert-eq (search-forward "Test buffer" nil t) 12) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
60 (goto-char (point-min)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
61 (Assert-eq (search-forward "Test Buffer" nil t) 12) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
62 |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
63 (setq case-fold-search nil) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
64 (goto-char (point-min)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
65 (Assert (not (search-forward "test buffer" nil t))) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
66 (goto-char (point-min)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
67 (Assert (not (search-forward "Test buffer" nil t))) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
68 (goto-char (point-min)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
69 (Assert-eq (search-forward "Test Buffer" nil t) 12))) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
70 |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
71 (with-temp-buffer |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
72 (insert "abcdefghijklmnäopqrstuÄvwxyz") |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
73 ;; case insensitive |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
74 (Assert (not (search-forward "ö" nil t))) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
75 (goto-char (point-min)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
76 (Assert-eq 16 (search-forward "ä" nil t)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
77 (Assert-eq 24 (search-forward "ä" nil t)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
78 (goto-char (point-min)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
79 (Assert-eq 16 (search-forward "Ä" nil t)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
80 (Assert-eq 24 (search-forward "Ä" nil t)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
81 (goto-char (point-max)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
82 (Assert-eq 23 (search-backward "ä" nil t)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
83 (Assert-eq 15 (search-backward "ä" nil t)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
84 (goto-char (point-max)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
85 (Assert-eq 23 (search-backward "Ä" nil t)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
86 (Assert-eq 15 (search-backward "Ä" nil t)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
87 ;; case sensitive |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
88 (setq case-fold-search nil) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
89 (goto-char (point-min)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
90 (Assert (not (search-forward "ö" nil t))) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
91 (goto-char (point-min)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
92 (Assert-eq 16 (search-forward "ä" nil t)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
93 (Assert (not (search-forward "ä" nil t))) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
94 (goto-char (point-min)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
95 (Assert-eq 24 (search-forward "Ä" nil t)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
96 (goto-char 16) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
97 (Assert-eq 24 (search-forward "Ä" nil t)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
98 (goto-char (point-max)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
99 (Assert-eq 15 (search-backward "ä" nil t)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
100 (goto-char 15) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
101 (Assert (not (search-backward "ä" nil t))) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
102 (goto-char (point-max)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
103 (Assert-eq 23 (search-backward "Ä" nil t)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
104 (Assert (not (search-backward "Ä" nil t)))) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
105 |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
106 (with-temp-buffer |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
107 (insert "aaaaäÄäÄäÄäÄäÄbbbb") |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
108 (goto-char (point-min)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
109 (Assert-eq 15 (search-forward "ää" nil t 5)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
110 (goto-char (point-min)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
111 (Assert (not (search-forward "ää" nil t 6))) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
112 (goto-char (point-max)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
113 (Assert-eq 5 (search-backward "ää" nil t 5)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
114 (goto-char (point-max)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
115 (Assert (not (search-backward "ää" nil t 6)))) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
116 |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
117 (when (featurep 'mule) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
118 (let* ((hiragana-a (make-char 'japanese-jisx0208 36 34)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
119 (a-diaeresis ?ä) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
120 (case-table (copy-case-table (standard-case-table))) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
121 (str-hiragana-a (char-to-string hiragana-a)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
122 (str-a-diaeresis (char-to-string a-diaeresis)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
123 (string (concat str-hiragana-a str-a-diaeresis))) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
124 (put-case-table-pair hiragana-a a-diaeresis case-table) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
125 (with-temp-buffer |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
126 (set-case-table case-table) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
127 (insert hiragana-a "abcdefg" a-diaeresis) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
128 ;; forward |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
129 (goto-char (point-min)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
130 (Assert (not (search-forward "ö" nil t))) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
131 (goto-char (point-min)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
132 (Assert-eq 2 (search-forward str-hiragana-a nil t)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
133 (goto-char (point-min)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
134 (Assert-eq 2 (search-forward str-a-diaeresis nil t)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
135 (goto-char (1+ (point-min))) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
136 (Assert-eq (point-max) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
137 (search-forward str-hiragana-a nil t)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
138 (goto-char (1+ (point-min))) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
139 (Assert-eq (point-max) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
140 (search-forward str-a-diaeresis nil t)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
141 ;; backward |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
142 (goto-char (point-max)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
143 (Assert (not (search-backward "ö" nil t))) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
144 (goto-char (point-max)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
145 (Assert-eq (1- (point-max)) (search-backward str-hiragana-a nil t)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
146 (goto-char (point-max)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
147 (Assert-eq (1- (point-max)) (search-backward str-a-diaeresis nil t)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
148 (goto-char (1- (point-max))) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
149 (Assert-eq 1 (search-backward str-hiragana-a nil t)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
150 (goto-char (1- (point-max))) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
151 (Assert-eq 1 (search-backward str-a-diaeresis nil t)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
152 (replace-match "a") |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
153 (Assert (looking-at (format "abcdefg%c" a-diaeresis)))) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
154 (with-temp-buffer |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
155 (set-case-table case-table) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
156 (insert string) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
157 (insert string) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
158 (insert string) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
159 (insert string) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
160 (insert string) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
161 (goto-char (point-min)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
162 (Assert-eq 11 (search-forward string nil t 5)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
163 (goto-char (point-min)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
164 (Assert (not (search-forward string nil t 6))) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
165 (goto-char (point-max)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
166 (Assert-eq 1 (search-backward string nil t 5)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
167 (goto-char (point-max)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
168 (Assert (not (search-backward string nil t 6)))))) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
169 |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
170 ;; Bug reported in http://mid.gmane.org/y9lk5lu5orq.fsf@deinprogramm.de from |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
171 ;; Michael Sperber. Fixed 2008-01-29. |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
172 (with-string-as-buffer-contents "\n\nDer beruhmte deutsche Flei\xdf\n\n" |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
173 (goto-char (point-min)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
174 (Assert (search-forward "Flei\xdf"))) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
175 |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
176 (with-temp-buffer |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
177 (let ((target "M\xe9zard") |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
178 (debug-xemacs-searches 1)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
179 (Assert (not (search-forward target nil t))) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
180 (insert target) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
181 (goto-char (point-min)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
182 ;; #### search-algorithm-used is simple-search after the following, |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
183 ;; which shouldn't be necessary; it should be possible to use |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
184 ;; Boyer-Moore. |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
185 ;; |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
186 ;; But searches for ASCII strings in buffers with nothing above ?\xFF |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
187 ;; use Boyer Moore with the current implementation, which is the |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
188 ;; important thing for the Gnus use case. |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
189 (Assert= (1+ (length target)) (search-forward target nil t)))) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
190 |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
191 (Skip-Test-Unless |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
192 (boundp 'debug-xemacs-searches) ; normal when we have DEBUG_XEMACS |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
193 "not a DEBUG_XEMACS build" |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
194 "checks that the algorithm chosen by #'search-forward is relatively sane" |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
195 (let ((debug-xemacs-searches 1)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
196 (with-temp-buffer |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
197 ;;#### Ben thinks this is unnecessary. with-temp-buffer creates |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
198 ;;a new buffer, which automatically inherits the standard case table. |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
199 ;;(set-case-table pristine-case-table) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
200 (insert "\n\nDer beruhmte deutsche Fleiss\n\n") |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
201 (goto-char (point-min)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
202 (Assert (search-forward "Fleiss")) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
203 (delete-region (point-min) (point-max)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
204 (insert "\n\nDer beruhmte deutsche Flei\xdf\n\n") |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
205 (goto-char (point-min)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
206 (Assert (search-forward "Flei\xdf")) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
207 (Assert-eq 'boyer-moore search-algorithm-used) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
208 (delete-region (point-min) (point-max)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
209 (when (featurep 'mule) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
210 (insert "\n\nDer beruhmte deutsche Flei\xdf\n\n") |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
211 (goto-char (point-min)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
212 (Assert |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
213 (search-forward (format "Fle%c\xdf" |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
214 (make-char 'latin-iso8859-9 #xfd)))) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
215 (Assert-eq 'boyer-moore search-algorithm-used) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
216 (insert (make-char 'latin-iso8859-9 #xfd)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
217 (goto-char (point-min)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
218 (Assert (search-forward "Flei\xdf")) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
219 (Assert-eq 'simple-search search-algorithm-used) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
220 (goto-char (point-min)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
221 (Assert (search-forward (format "Fle%c\xdf" |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
222 (make-char 'latin-iso8859-9 #xfd)))) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
223 (Assert-eq 'simple-search search-algorithm-used))))) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
224 |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
225 |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
226 ;; XEmacs bug of long standing. |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
227 |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
228 (with-temp-buffer |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
229 (insert "foo\201bar") |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
230 (goto-char (point-min)) |
c902301f8b7d
fix CRLF line endings in search-tests.el
Ben Wing <ben@xemacs.org>
parents:
4897
diff
changeset
|
231 (Assert-eq (search-forward "\201" nil t) 5)) |