1 ;; Copyright (C) 2004 Vin Shelton
3 ;; Author: Vin Shelton <acs@xemacs.org>
4 ;; Maintainer: Vin Shelton <acs@xemacs.org>
8 ;; This file is part of SXEmacs.
10 ;; SXEmacs is free software: you can redistribute it and/or modify it
11 ;; under the terms of the GNU General Public License as published by the
12 ;; Free Software Foundation, either version 3 of the License, or (at your
13 ;; option) any later version.
15 ;; SXEmacs is distributed in the hope that it will be
16 ;; useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
17 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
18 ;; General Public License for more details.
20 ;; You should have received a copy of the GNU General Public License
21 ;; along with this program. If not, see <http://www.gnu.org/licenses/>.
23 ;;; Synched up with: Not in FSF.
28 ;; See test-harness.el for instructions on how to run these tests.
30 (let ((testfile "tag-test.c")
32 (tags-build-completion-table nil))
37 (with-temp-file tagfile
41 struct mystruct
\7fmystruct
\ 12,1
42 struct mystruct *foo\(
\7f4,23
43 DEFUN \(\"require\", Frequire,
\7frequire,
\ 17,51
46 ;; Create the test file
47 (with-temp-file testfile
52 struct mystruct *foo\(\) {
55 DEFUN \(\"require\", Frequire, 1, 2, 0, /*
56 If feature FEATURE is not loaded, load it from FILENAME.
57 If FEATURE is not a member of the list `features', then the feature
58 is not loaded; so load the file FILENAME.
59 If FILENAME is omitted, the printname of FEATURE is used as the file name.
61 \(feature, filename\)\)
66 (let ((tags-always-exact t))
68 ;; Search for the tag "mystruct"; this should succeed
70 (find-tag "mystruct"))
71 (Assert (eq (point) 2))
73 ;; Search again. The search should fail, based on the patch that
74 ;; Sven Grundmann submitted for 21.4.16.
75 (Check-Error-Message error "No more entries matching mystruct"
77 (tags-loop-continue))))
79 (let ((tags-always-exact nil))
81 ;; Search for the definition of "require". Until the etags.el upgrade
82 ;; from 21.5 in 21.4.16, this test would fail.
87 (Assert (eq (point) 52)))
89 (kill-buffer testfile)
90 (delete-file testfile)
92 (delete-file tagfile))