emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] scratch/so-long 32fa37c: fixup! Add tests for so-long.el


From: Phil
Subject: [Emacs-diffs] scratch/so-long 32fa37c: fixup! Add tests for so-long.el
Date: Sun, 16 Jun 2019 00:02:43 -0400 (EDT)

branch: scratch/so-long
commit 32fa37c7e2969466dd62fa82d7f0278099383277
Author: Phil Sainty <address@hidden>
Commit: Phil Sainty <address@hidden>

    fixup! Add tests for so-long.el
    
    Test `so-long-file-local-mode-function' with a custom function.
---
 test/lisp/so-long-tests/so-long-tests.el | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/test/lisp/so-long-tests/so-long-tests.el 
b/test/lisp/so-long-tests/so-long-tests.el
index 6bc3119..f1003cb 100644
--- a/test/lisp/so-long-tests/so-long-tests.el
+++ b/test/lisp/so-long-tests/so-long-tests.el
@@ -258,6 +258,8 @@
     (so-long-revert)
     (so-long-tests-assert-reverted 'so-long-minor-mode)))
 
+(defvar so-long-tests-local-mode 'unset)
+
 (defmacro so-long-tests-deftest-file-local-emacs-lisp-mode
     (sym docstring file-local-spec)
   "Generate tests for using `emacs-lisp-mode' as a file-local mode."
@@ -292,6 +294,17 @@
          (so-long-tests-assert-active 'so-long-mode)
          (so-long-revert)
          (so-long-tests-assert-reverted 'so-long-mode))
+       ;; Custom function
+       (setq-default so-long-file-local-mode-function
+                     (lambda (mode)
+                       (setq so-long-tests-local-mode mode)))
+       (with-temp-buffer
+         (insert ,file-local-spec)
+         (insert (make-string (1+ so-long-threshold) ?x))
+         (let (so-long-tests-local-mode)
+           (normal-mode)
+           (should (eq so-long-tests-local-mode 'emacs-lisp-mode))
+           (so-long-tests-assert-active 'so-long-mode)))
        ;; end
        (setq-default so-long-file-local-mode-function orig))))
 
@@ -339,6 +352,19 @@
          (so-long-tests-assert-active 'so-long-mode)
          (so-long-revert)
          (so-long-tests-assert-reverted 'so-long-mode))
+       ;; Custom function.  When the file-local mode is `so-long-mode'
+       ;; we do not call `so-long-file-local-mode-function' at all.
+       (setq-default so-long-file-local-mode-function
+                     (lambda (mode)
+                       (setq so-long-tests-local-mode mode)))
+       (with-temp-buffer
+         (insert ,file-local-spec)
+         (insert (make-string (1+ so-long-threshold) ?x))
+         (let (so-long-tests-local-mode)
+           (normal-mode)
+           (should (eq so-long-tests-local-mode nil))
+           (should (eq so-long--inhibited t))
+           (so-long-tests-assert-active 'so-long-mode)))
        ;; end
        (setq-default so-long-file-local-mode-function orig))))
 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]