Add new packages installed
This commit is contained in:
165
elpa/auctex-12.1.0/tests/latex/latex-test.el
Normal file
165
elpa/auctex-12.1.0/tests/latex/latex-test.el
Normal file
@@ -0,0 +1,165 @@
|
||||
;;; latex-test.el --- tests for LaTeX mode
|
||||
|
||||
;; Copyright (C) 2014--2017 Free Software Foundation, Inc.
|
||||
|
||||
;; This file is part of AUCTeX.
|
||||
|
||||
;; AUCTeX 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, or (at your option)
|
||||
;; any later version.
|
||||
|
||||
;; AUCTeX 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 AUCTeX; see the file COPYING. If not, write to the Free
|
||||
;; Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
|
||||
;; 02110-1301, USA.
|
||||
|
||||
;;; Code:
|
||||
|
||||
(require 'ert)
|
||||
(require 'latex)
|
||||
|
||||
(AUCTeX-set-ert-path
|
||||
'LaTeX-indent-tabular-test/in
|
||||
"tabular-in.tex"
|
||||
'LaTeX-indent-tabular-test/out
|
||||
"tabular-out.tex"
|
||||
'LaTeX-filling/in
|
||||
"latex-filling-in.tex"
|
||||
'LaTeX-filling/out
|
||||
"latex-filling-out.tex"
|
||||
'LaTeX-math-indent/in
|
||||
"math-indent-in.tex"
|
||||
'LaTeX-math-indent/out
|
||||
"math-indent-out.tex"
|
||||
'tabular-count-ampersands/in
|
||||
"tabular-count-ampersands-in.tex"
|
||||
'tabular-count-ampersands/out
|
||||
"tabular-count-ampersands-out.tex")
|
||||
|
||||
;; Test for detecting \& in a table cell added; see
|
||||
;; https://debbugs.gnu.org/cgi/bugreport.cgi?bug=26010
|
||||
;; Test for missing & in row added; see
|
||||
;; https://debbugs.gnu.org/cgi/bugreport.cgi?bug=26032
|
||||
(ert-deftest LaTeX-indent-tabular ()
|
||||
(should (string=
|
||||
(with-temp-buffer
|
||||
(insert-file-contents LaTeX-indent-tabular-test/in)
|
||||
(LaTeX-mode)
|
||||
(indent-region (point-min) (point-max))
|
||||
(buffer-string))
|
||||
(with-temp-buffer
|
||||
(insert-file-contents LaTeX-indent-tabular-test/out)
|
||||
(buffer-string)))))
|
||||
|
||||
;; Another test for indentation, but for math mode, see
|
||||
;; https://debbugs.gnu.org/cgi/bugreport.cgi?bug=20227 Let's keep those tests
|
||||
;; separated so it would be easier to find the culprit of a future failure.
|
||||
(ert-deftest LaTeX-math-indent ()
|
||||
(should (string=
|
||||
(with-temp-buffer
|
||||
(insert-file-contents LaTeX-math-indent/in)
|
||||
(LaTeX-mode)
|
||||
(indent-region (point-min) (point-max))
|
||||
(buffer-string))
|
||||
(with-temp-buffer
|
||||
(insert-file-contents LaTeX-math-indent/out)
|
||||
(buffer-string)))))
|
||||
|
||||
;; Test LaTeX code with math modes is indented as expected. This has mostly to
|
||||
;; do with the value of `LaTeX-fill-break-at-separators' and how
|
||||
;; `LaTeX-fill-move-to-break-point' handles it. If the test fails, try to look
|
||||
;; there. The second part of the test looks for unambiguousness of
|
||||
;; macros starting a paragraph
|
||||
;; (http://lists.gnu.org/archive/html/auctex/2017-03/msg00009.html)
|
||||
(ert-deftest LaTeX-filling ()
|
||||
(should (string=
|
||||
(with-temp-buffer
|
||||
(insert-file-contents LaTeX-filling/in)
|
||||
(LaTeX-mode)
|
||||
(let ((fill-column 70))
|
||||
(fill-paragraph)
|
||||
(let ((cmds '("captionsetup" "caption"
|
||||
"parencite" "par")))
|
||||
(dolist (cmd cmds)
|
||||
(search-forward (concat "\\" cmd))
|
||||
(save-excursion
|
||||
(end-of-line 0)
|
||||
(fill-paragraph)))))
|
||||
(buffer-string))
|
||||
(with-temp-buffer
|
||||
(insert-file-contents LaTeX-filling/out)
|
||||
(buffer-string)))))
|
||||
|
||||
;; Test for bug#19281 (https://debbugs.gnu.org/cgi/bugreport.cgi?bug=19281):
|
||||
;; make sure AUCTeX is able to insert and modify an environment containing a
|
||||
;; TeX-esc and braces in its name.
|
||||
(ert-deftest LaTeX-change-environment-with-esc ()
|
||||
(should (string=
|
||||
(with-temp-buffer
|
||||
(LaTeX-mode)
|
||||
(LaTeX-insert-environment (concat TeX-esc "foo{bar}"))
|
||||
(LaTeX-modify-environment "foobar")
|
||||
(buffer-string))
|
||||
(with-temp-buffer
|
||||
(LaTeX-mode)
|
||||
(LaTeX-insert-environment "foobar")
|
||||
(buffer-string)))))
|
||||
|
||||
;; Test for inserting &'s with `M-RET' in various tabular environment.
|
||||
;; Following styles are loaded: tabularx, tabulary, longtable,
|
||||
;; dcolumn, siunitx
|
||||
(ert-deftest LaTeX-count-ampersands-inserted-in-tabular ()
|
||||
(should (string=
|
||||
(with-temp-buffer
|
||||
(insert-file-contents tabular-count-ampersands/in)
|
||||
(setq TeX-parse-self t)
|
||||
(LaTeX-mode)
|
||||
(goto-char (point-min))
|
||||
;; Do not ask for opt. argument in (TeX-insert-macro "\\"):
|
||||
(let ((TeX-insert-macro-default-style 'mandatory-args-only))
|
||||
(while (search-forward "LaTeX-insert-item" nil t)
|
||||
(LaTeX-insert-item)))
|
||||
(buffer-string))
|
||||
(with-temp-buffer
|
||||
(insert-file-contents tabular-count-ampersands/out)
|
||||
(LaTeX-mode)
|
||||
(buffer-string)))))
|
||||
|
||||
(ert-deftest LaTeX-addbibresource ()
|
||||
"Check parsing of bibliography files added with addbibresource.
|
||||
|
||||
In particular, make sure dots are treated correctly and only the
|
||||
last extension is stripped."
|
||||
(should
|
||||
(equal
|
||||
(with-temp-buffer
|
||||
(insert "\\addbibresource{../foo-1.bar_2.qux3.ext}")
|
||||
(LaTeX-mode)
|
||||
(let ((TeX-parse-self t))
|
||||
(TeX-update-style t))
|
||||
(LaTeX-bibliography-list))
|
||||
'(("../foo-1.bar_2.qux3")))))
|
||||
|
||||
(ert-deftest LaTeX-auto-class-regexp ()
|
||||
"Check parsing optional argument with comment correctly.
|
||||
|
||||
Test against RequirePackage."
|
||||
(with-temp-buffer
|
||||
(insert "\\RequirePackage[
|
||||
backend=biber % here is a comment
|
||||
]{biblatex}
|
||||
")
|
||||
(latex-mode)
|
||||
(let ((TeX-parse-self t))
|
||||
(TeX-update-style t))
|
||||
(should (member "biblatex" (TeX-style-list)))
|
||||
(should (LaTeX-provided-package-options-member
|
||||
"biblatex" "backend=biber"))))
|
||||
|
||||
;;; latex-test.el ends here
|
||||
Reference in New Issue
Block a user