annotate tests/automated/tag-tests.el @ 5402:308d34e9f07d

Changed bulk of GPLv2 or later files identified by script
author Mats Lidell <matsl@xemacs.org>
date Thu, 14 Oct 2010 17:15:20 +0200
parents 0f66906b6e37
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2071
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
1 ;; Copyright (C) 2004 Vin Shelton
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
2
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
3 ;; Author: Vin Shelton <acs@xemacs.org>
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
4 ;; Maintainer: Vin Shelton <acs@xemacs.org>
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
5 ;; Created: 2004
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
6 ;; Keywords: tests
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
7
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
8 ;; This file is part of XEmacs.
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
9
5402
308d34e9f07d Changed bulk of GPLv2 or later files identified by script
Mats Lidell <matsl@xemacs.org>
parents: 5136
diff changeset
10 ;; 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: 5136
diff changeset
11 ;; 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: 5136
diff changeset
12 ;; 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: 5136
diff changeset
13 ;; option) any later version.
2071
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
14
5402
308d34e9f07d Changed bulk of GPLv2 or later files identified by script
Mats Lidell <matsl@xemacs.org>
parents: 5136
diff changeset
15 ;; 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: 5136
diff changeset
16 ;; 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: 5136
diff changeset
17 ;; 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: 5136
diff changeset
18 ;; for more details.
2071
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
19
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
20 ;; You should have received a copy of the GNU General Public License
5402
308d34e9f07d Changed bulk of GPLv2 or later files identified by script
Mats Lidell <matsl@xemacs.org>
parents: 5136
diff changeset
21 ;; along with XEmacs. If not, see <http://www.gnu.org/licenses/>.
2071
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
22
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
23 ;;; Synched up with: Not in FSF.
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
24
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
25 ;;; Commentary:
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
26
2073
65dae79be48b [xemacs-hg @ 2004-05-12 06:16:14 by stephent]
stephent
parents: 2071
diff changeset
27 ;; Test tag support.
2071
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
28 ;; See test-harness.el for instructions on how to run these tests.
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
29
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
30 (let ((testfile "tag-test.c")
2073
65dae79be48b [xemacs-hg @ 2004-05-12 06:16:14 by stephent]
stephent
parents: 2071
diff changeset
31 (tagfile "TAGS")
65dae79be48b [xemacs-hg @ 2004-05-12 06:16:14 by stephent]
stephent
parents: 2071
diff changeset
32 (tags-build-completion-table nil))
65dae79be48b [xemacs-hg @ 2004-05-12 06:16:14 by stephent]
stephent
parents: 2071
diff changeset
33
65dae79be48b [xemacs-hg @ 2004-05-12 06:16:14 by stephent]
stephent
parents: 2071
diff changeset
34 (cd (temp-directory))
2071
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
35
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
36 ;; Create a TAGS file
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
37 (with-temp-file tagfile
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
38 (insert
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
39 "
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
40 tag-test.c,99
2076
58228a446857 [xemacs-hg @ 2004-05-13 16:41:23 by stephent]
stephent
parents: 2073
diff changeset
41 struct mystruct mystruct2,1
2071
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
42 struct mystruct *foo\(4,23
2076
58228a446857 [xemacs-hg @ 2004-05-13 16:41:23 by stephent]
stephent
parents: 2073
diff changeset
43 DEFUN \(\"require\", Frequire,require,7,51
2071
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
44 "))
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
45
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
46 ;; Create the test file
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
47 (with-temp-file testfile
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
48 (insert
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
49 "
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
50 struct mystruct { };
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
51
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
52 struct mystruct *foo\(\) {
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
53 }
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
54
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
55 DEFUN \(\"require\", Frequire, 1, 2, 0, /*
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
56 If feature FEATURE is not loaded, load it from FILENAME.
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
57 If FEATURE is not a member of the list `features', then the feature
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
58 is not loaded; so load the file FILENAME.
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
59 If FILENAME is omitted, the printname of FEATURE is used as the file name.
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
60 */
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
61 \(feature, filename\)\)
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
62 {
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
63 }
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
64 "))
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
65
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
66 (let ((tags-always-exact t))
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
67
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
68 ;; Search for the tag "mystruct"; this should succeed
3472
43b4a54fbf66 [xemacs-hg @ 2006-06-24 14:30:36 by stephent]
stephent
parents: 2076
diff changeset
69 (Silence-Message
43b4a54fbf66 [xemacs-hg @ 2006-06-24 14:30:36 by stephent]
stephent
parents: 2076
diff changeset
70 (find-tag "mystruct"))
5136
0f66906b6e37 Undo Assert-equal, Assert=, etc.; make `Assert' handle this automatically
Ben Wing <ben@xemacs.org>
parents: 4855
diff changeset
71 (Assert (eq (point) 2))
2071
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
72
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
73 ;; Search again. The search should fail, based on the patch that
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
74 ;; Sven Grundmann submitted for 21.4.16.
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
75 (Check-Error-Message error "No more entries matching mystruct"
3472
43b4a54fbf66 [xemacs-hg @ 2006-06-24 14:30:36 by stephent]
stephent
parents: 2076
diff changeset
76 (Silence-Message
43b4a54fbf66 [xemacs-hg @ 2006-06-24 14:30:36 by stephent]
stephent
parents: 2076
diff changeset
77 (tags-loop-continue))))
2071
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
78
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
79 (let ((tags-always-exact nil))
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
80
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
81 ;; Search for the definition of "require". Until the etags.el upgrade
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
82 ;; from 21.5 in 21.4.16, this test would fail.
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
83 (condition-case nil
3472
43b4a54fbf66 [xemacs-hg @ 2006-06-24 14:30:36 by stephent]
stephent
parents: 2076
diff changeset
84 (Silence-Message
43b4a54fbf66 [xemacs-hg @ 2006-06-24 14:30:36 by stephent]
stephent
parents: 2076
diff changeset
85 (find-tag "require"))
2071
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
86 (t t))
5136
0f66906b6e37 Undo Assert-equal, Assert=, etc.; make `Assert' handle this automatically
Ben Wing <ben@xemacs.org>
parents: 4855
diff changeset
87 (Assert (eq (point) 52)))
2071
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
88
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
89 (kill-buffer testfile)
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
90 (delete-file testfile)
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
91 (kill-buffer tagfile)
0f60caa73962 [xemacs-hg @ 2004-05-11 11:33:08 by stephent]
stephent
parents:
diff changeset
92 (delete-file tagfile))