aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGrégoire Jadi2020-08-19 15:36:08 +0200
committerLars Ingebrigtsen2020-08-19 15:36:08 +0200
commitbdc5d38c7cdff3e5a66ca6369f1027d550afc7a7 (patch)
treeaadfd5d1991caac4f5bf1219f5a50079451887ad
parent3d0e0d9e77ac59725cffe89fdef9388bde39888c (diff)
downloademacs-bdc5d38c7cdff3e5a66ca6369f1027d550afc7a7.tar.gz
emacs-bdc5d38c7cdff3e5a66ca6369f1027d550afc7a7.zip
Ensure `bibtex-set-dialect' is executed in bibtex buffers
* lisp/textmodes/bibtex.el (bibtex-mode): Call `bibtex-set-dialect'. * test/automated/bibtex-tests.el: Add regression tests (bug#21764).
-rw-r--r--lisp/textmodes/bibtex.el1
-rw-r--r--test/lisp/textmodes/bibtex-tests.el57
2 files changed, 58 insertions, 0 deletions
diff --git a/lisp/textmodes/bibtex.el b/lisp/textmodes/bibtex.el
index 0018b89d858..910bd7dbb9d 100644
--- a/lisp/textmodes/bibtex.el
+++ b/lisp/textmodes/bibtex.el
@@ -3445,6 +3445,7 @@ if that value is non-nil.
3445 (set (make-local-variable 'syntax-propertize-function) 3445 (set (make-local-variable 'syntax-propertize-function)
3446 (syntax-propertize-via-font-lock 3446 (syntax-propertize-via-font-lock
3447 bibtex-font-lock-syntactic-keywords)) 3447 bibtex-font-lock-syntactic-keywords))
3448 (bibtex-set-dialect nil t)
3448 ;; Allow `bibtex-dialect' as a file-local variable. 3449 ;; Allow `bibtex-dialect' as a file-local variable.
3449 (add-hook 'hack-local-variables-hook #'bibtex-set-dialect nil t)) 3450 (add-hook 'hack-local-variables-hook #'bibtex-set-dialect nil t))
3450 3451
diff --git a/test/lisp/textmodes/bibtex-tests.el b/test/lisp/textmodes/bibtex-tests.el
new file mode 100644
index 00000000000..b3858de9e61
--- /dev/null
+++ b/test/lisp/textmodes/bibtex-tests.el
@@ -0,0 +1,57 @@
1;;; bibtex-tests.el --- Test suite for bibtex.
2
3;; Copyright (C) 2013-2020 Free Software Foundation, Inc.
4
5;; Keywords: bibtex
6
7;; This file is part of GNU Emacs.
8
9;; GNU Emacs is free software: you can redistribute it and/or modify
10;; it under the terms of the GNU General Public License as published by
11;; the Free Software Foundation, either version 3 of the License, or
12;; (at your option) any later version.
13
14;; GNU Emacs is distributed in the hope that it will be useful,
15;; but WITHOUT ANY WARRANTY; without even the implied warranty of
16;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17;; GNU General Public License for more details.
18
19;; You should have received a copy of the GNU General Public License
20;; along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
21
22;;; Commentary:
23
24;;; Code:
25
26(require 'ert)
27(require 'bibtex)
28
29(ert-deftest bibtex-test-set-dialect ()
30 "Tests if `bibtex-set-dialect' is executed."
31 (with-temp-buffer
32 (insert "@article{someID,
33 author = {some author},
34 title = {some title},
35}")
36 (bibtex-mode)
37 (should-not (null bibtex-dialect))
38 (should-not (null bibtex-entry-type))
39 (should-not (null bibtex-entry-head))
40 (should-not (null bibtex-reference-key))
41 (should-not (null bibtex-entry-head))
42 (should-not (null bibtex-entry-maybe-empty-head))
43 (should-not (null bibtex-any-valid-entry-type))))
44
45(ert-deftest bibtex-test-parse-buffers-stealthily ()
46 "Tests if `bibtex-parse-buffers-stealthily' can be executed."
47 (with-temp-buffer
48 (insert "@article{someID,
49 author = {some author},
50 title = {some title},
51}")
52 (bibtex-mode)
53 (should (progn (bibtex-parse-buffers-stealthily) t))))
54
55(provide 'bibtex-tests)
56
57;;; bibtex-tests.el ends here