summaryrefslogtreecommitdiff
path: root/test/automated/info-xref.el
diff options
context:
space:
mode:
Diffstat (limited to 'test/automated/info-xref.el')
-rw-r--r--test/automated/info-xref.el147
1 files changed, 0 insertions, 147 deletions
diff --git a/test/automated/info-xref.el b/test/automated/info-xref.el
deleted file mode 100644
index bc3115042bc..00000000000
--- a/test/automated/info-xref.el
+++ /dev/null
@@ -1,147 +0,0 @@
-;;; info-xref.el --- tests for info-xref.el
-
-;; Copyright (C) 2013-2016 Free Software Foundation, Inc.
-
-;; This file is part of GNU Emacs.
-
-;; GNU Emacs 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 3 of the License, or
-;; (at your option) any later version.
-
-;; GNU Emacs 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 GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
-
-;;; Commentary:
-
-;;; Code:
-
-(require 'ert)
-(require 'info-xref)
-
-(defun info-xref-test-internal (body result)
- "Body of a basic info-xref ert test.
-BODY is a string from an info buffer.
-RESULT is a list (NBAD NGOOD NUNAVAIL)."
- (get-buffer-create info-xref-output-buffer)
- (setq info-xref-xfile-alist nil)
- (require 'info)
- (let ((Info-directory-list '("."))
- Info-additional-directory-list)
- (info-xref-with-output
- (with-temp-buffer
- (insert body)
- (info-xref-check-buffer))))
- (should (equal result (list info-xref-bad info-xref-good info-xref-unavail)))
- ;; If there was an error, we can leave this around.
- (kill-buffer info-xref-output-buffer))
-
-(ert-deftest info-xref-test-node-crossref ()
- "Test parsing of @xref{node,crossref,,manual} with Texinfo 4/5."
- (info-xref-test-internal "
-*Note crossref: (manual-foo)node. Texinfo 4/5 format with crossref.
-" '(0 0 1)))
-
-(ert-deftest info-xref-test-node-4 ()
- "Test parsing of @xref{node,,,manual} with Texinfo 4."
- (info-xref-test-internal "
-*Note node: (manual-foo)node. Texinfo 4 format with no crossref.
-" '(0 0 1)))
-
-(ert-deftest info-xref-test-node-5 ()
- "Test parsing of @xref{node,,,manual} with Texinfo 5."
- (info-xref-test-internal "
-*Note (manual-foo)node::. Texinfo 5 format with no crossref.
-" '(0 0 1)))
-
-;; TODO Easier to have static data files in the repo?
-(defun info-xref-test-write-file (file body)
- "Write BODY to texi FILE."
- (with-temp-buffer
- (insert "\
-\\input texinfo
-@setfilename "
- (format "%s.info\n" (file-name-sans-extension file))
- "\
-@settitle test
-
-@ifnottex
-@node Top
-@top test
-@end ifnottex
-
-@menu
-* Chapter One::
-@end menu
-
-@node Chapter One
-@chapter Chapter One
-
-text.
-
-"
- body
- "\
-@bye
-"
- )
- (write-region nil nil file nil 'silent))
- (should (equal 0 (call-process "makeinfo" file))))
-
-(ert-deftest info-xref-test-makeinfo ()
- "Test that info-xref can parse basic makeinfo output."
- (skip-unless (executable-find "makeinfo"))
- (let ((tempfile (make-temp-file "info-xref-test" nil ".texi"))
- (tempfile2 (make-temp-file "info-xref-test2" nil ".texi"))
- (errflag t))
- (unwind-protect
- (progn
- ;; tempfile contains xrefs to various things, including tempfile2.
- (info-xref-test-write-file
- tempfile
- (concat "\
-@xref{nodename,,,missing,Missing Manual}.
-
-@xref{nodename,crossref,title,missing,Missing Manual}.
-
-@xref{Chapter One}.
-
-@xref{Chapter One,Something}.
-
-"
- (format "@xref{Chapter One,,,%s,Present Manual}.\n"
- (file-name-sans-extension (file-name-nondirectory
- tempfile2)))))
- ;; Something for tempfile to xref to.
- (info-xref-test-write-file tempfile2 "")
- (require 'info)
- (save-window-excursion
- (let ((Info-directory-list
- (list
- (or (file-name-directory tempfile) ".")))
- Info-additional-directory-list)
- (info-xref-check (format "%s.info" (file-name-sans-extension
- tempfile))))
- (should (equal (list info-xref-bad info-xref-good
- info-xref-unavail)
- '(0 1 2)))
- (setq errflag nil)
- ;; If there was an error, we can leave this around.
- (kill-buffer info-xref-output-buffer)))
- ;; Useful diagnostic in case of problems.
- (if errflag
- (with-temp-buffer
- (call-process "makeinfo" nil t nil "--version")
- (message "%s" (buffer-string))))
- (mapc 'delete-file (list tempfile tempfile2
- (format "%s.info" (file-name-sans-extension
- tempfile))
- (format "%s.info" (file-name-sans-extension
- tempfile2)))))))
-
-;;; info-xref.el ends here