me
/
guix
Archived
1
0
Fork 0
This repository has been archived on 2024-08-07. You can view files and clone it, but cannot push or open issues/pull-requests.
guix/gnu/packages/patches/emacs-yasnippet-fix-tests.p...

114 lines
5.6 KiB
Diff
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

From 904a058fcf4e1f4985e03f8551eec282ca12ccb5 Mon Sep 17 00:00:00 2001
From: Philipp Stephani <phst@google.com>
Date: Mon, 6 Dec 2021 18:50:10 +0100
Subject: [PATCH] Unbreak unit tests under Emacs 28.
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
- Emacs 28 has a new mode lisp-data-mode for Lisp data.
- A test that was temporarily broken passes again.
- The default for org-adapt-indentation has changed.
- buffer-list may be called with arguments when native-comp is enabled.
---
yasnippet-tests.el | 45 ++++++++++++++++++++++++++++-----------------
1 file changed, 28 insertions(+), 17 deletions(-)
diff --git a/yasnippet-tests.el b/yasnippet-tests.el
index f7ca2bb..7618ab7 100644
--- a/yasnippet-tests.el
+++ b/yasnippet-tests.el
@@ -1,6 +1,6 @@
;;; yasnippet-tests.el --- some yasnippet tests -*- lexical-binding: t -*-
-;; Copyright (C) 2012-2015, 2017-2018 Free Software Foundation, Inc.
+;; Copyright (C) 2012-2015, 2017-2018, 2021 Free Software Foundation, Inc.
;; Author: João Távora <joaot@siscog.pt>
;; Keywords: emulations, convenience
@@ -556,16 +556,19 @@ XXXXX ------------------------"))))
(yas-mock-insert "foo bar")
(ert-simulate-command '(yas-next-field))
(goto-char (point-min))
- (let ((expected (with-temp-buffer
- (insert (format (concat "* Test foo bar\n"
- " " org-property-format "\n"
- " " org-property-format "\n"
- " " org-property-format)
- ":PROPERTIES:" ""
- ":ID:" "foo bar-after"
- ":END:" ""))
- (delete-trailing-whitespace)
- (buffer-string))))
+ ;; The default value of `org-adapt-indentation' changed between Org-mode 9.4
+ ;; and 9.5, so force a specific value.
+ (let* ((org-adapt-indentation nil)
+ (expected (with-temp-buffer
+ (insert (format (concat "* Test foo bar\n"
+ org-property-format "\n"
+ org-property-format "\n"
+ org-property-format)
+ ":PROPERTIES:" ""
+ ":ID:" "foo bar-after"
+ ":END:" ""))
+ (delete-trailing-whitespace)
+ (buffer-string))))
;; Some org-mode versions leave trailing whitespace, some don't.
(delete-trailing-whitespace)
(should (equal expected (buffer-string))))))
@@ -1195,11 +1198,11 @@ hello ${1:$(when (stringp yas-text) (funcall func yas-text))} foo${1:$$(concat \
(let ((saved-sym (make-symbol "yas--buffer-list")))
`(let ((,saved-sym (symbol-function 'buffer-list)))
(cl-letf (((symbol-function 'buffer-list)
- (lambda ()
+ (lambda (&rest args)
(cl-remove-if (lambda (buf)
(with-current-buffer buf
(eq major-mode 'lisp-interaction-mode)))
- (funcall ,saved-sym)))))
+ (funcall ,saved-sym args)))))
,@body))))
@@ -1356,7 +1359,9 @@ hello ${1:$(when (stringp yas-text) (funcall func yas-text))} foo${1:$$(concat \
,@(if (fboundp 'prog-mode)
'(prog-mode))
emacs-lisp-mode
- lisp-interaction-mode))
+ lisp-interaction-mode
+ ;; `lisp-data-mode' doesn't exist prior to Emacs 28.
+ ,@(and (fboundp 'lisp-data-mode) '(lisp-data-mode))))
(observed (yas--modes-to-activate)))
(should (equal major-mode (car observed)))
(should (equal (sort expected #'string<) (sort observed #'string<))))))))
@@ -1384,7 +1389,11 @@ hello ${1:$(when (stringp yas-text) (funcall func yas-text))} foo${1:$$(concat \
'(prog-mode))
emacs-lisp-mode
and-also-this-one
- lisp-interaction-mode))
+ lisp-interaction-mode
+ ;; `lisp-data-mode' doesn't exist prior to
+ ;; Emacs 28.
+ ,@(and (fboundp 'lisp-data-mode)
+ '(lisp-data-mode))))
(observed (yas--modes-to-activate)))
(should (equal expected-first
(cl-subseq observed 0 (length expected-first))))
@@ -1657,9 +1666,11 @@ TODO: be meaner"
"Test expansion of snippets in org source blocks."
;; org 9+ no longer runs fontification for text-mode, so our hacks
;; don't work. Note that old ert doesn't have skipping, so we have
- ;; to expect failure instead.
+ ;; to expect failure instead. Starting with Org-mode 9.5 this seems
+ ;; to work again.
:expected-result (if (and (fboundp 'org-in-src-block-p)
- (version< (org-version) "9"))
+ (or (version< (org-version) "9")
+ (version<= "9.5" (org-version))))
:passed :failed)
(let ((text-mode-hook #'yas-minor-mode))
(do-yas-org-native-tab-in-source-block "text")))
--
2.37.2