]> git.eshelyaron.com Git - emacs.git/commitdiff
Merge from origin/emacs-27
authorMichael Albinus <michael.albinus@gmx.de>
Wed, 25 Nov 2020 11:18:23 +0000 (12:18 +0100)
committerMichael Albinus <michael.albinus@gmx.de>
Wed, 25 Nov 2020 11:18:23 +0000 (12:18 +0100)
6442cdc0e4 Revert extra focus redirection in do_switch_frame (Bug#24803)
fc4379f1ae Minor cleanup of tramp-tests.el on MS Windows
dea3d6aa18 Fix handling of defcustom :local tag

1  2 
lisp/custom.el
src/frame.c
test/lisp/custom-tests.el
test/lisp/net/tramp-tests.el

diff --cc lisp/custom.el
Simple merge
diff --cc src/frame.c
Simple merge
index 7691f1677387a35032a1d113740f2bfa73c0a0bc,e71b7913f0612f8144c2fde7d891a7920608d9d8..232e3bed4392fcb57ce032601bc9df14fa1f2d64
                                 (widget-apply field :value-to-internal origvalue)
                                 "bar"))))))
  
 +(defconst custom-test-admin-cus-test
 +  (expand-file-name "admin/cus-test.el" source-directory))
 +
 +(declare-function cus-test-opts custom-test-admin-cus-test)
 +
 +(ert-deftest check-for-wrong-custom-types ()
 +  :tags '(:expensive-test)
 +  (skip-unless (file-readable-p custom-test-admin-cus-test))
 +  (load custom-test-admin-cus-test)
 +  (should (null (cus-test-opts t))))
 +
 +(ert-deftest custom-test-enable-theme-keeps-settings ()
 +  "Test that enabling a theme doesn't change its settings."
 +  (let* ((custom-theme-load-path `(,(ert-resource-directory)))
 +         settings)
 +    (load-theme 'custom--test 'no-confirm 'no-enable)
 +    (setq settings (get 'custom--test 'theme-settings))
 +    (enable-theme 'custom--test)
 +    (should (equal settings (get 'custom--test 'theme-settings)))))
 +
+ (defcustom custom--test-local-option 'initial
+   "Buffer-local user option for testing."
+   :group 'emacs
+   :type '(choice (const initial) (const changed))
+   :local t)
+ (defcustom custom--test-permanent-option 'initial
+   "Permanently local user option for testing."
+   :group 'emacs
+   :type '(choice (const initial) (const changed))
+   :local 'permanent)
+ (ert-deftest custom-test-local-option ()
+   "Test :local user options."
+   ;; Initial default values.
+   (should (eq custom--test-local-option 'initial))
+   (should (eq custom--test-permanent-option 'initial))
+   (should (eq (default-value 'custom--test-local-option) 'initial))
+   (should (eq (default-value 'custom--test-permanent-option) 'initial))
+   (let ((obuf (current-buffer)))
+     (with-temp-buffer
+       ;; Changed buffer-local values.
+       (setq custom--test-local-option 'changed)
+       (setq custom--test-permanent-option 'changed)
+       (should (eq custom--test-local-option 'changed))
+       (should (eq custom--test-permanent-option 'changed))
+       (should (eq (default-value 'custom--test-local-option) 'initial))
+       (should (eq (default-value 'custom--test-permanent-option) 'initial))
+       (with-current-buffer obuf
+         (should (eq custom--test-local-option 'initial))
+         (should (eq custom--test-permanent-option 'initial)))
+       ;; Permanent variable remains unchanged.
+       (kill-all-local-variables)
+       (should (eq custom--test-local-option 'initial))
+       (should (eq custom--test-permanent-option 'changed))
+       (should (eq (default-value 'custom--test-local-option) 'initial))
+       (should (eq (default-value 'custom--test-permanent-option) 'initial)))))
  ;;; custom-tests.el ends here
Simple merge