[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
master 331e40a 2/2: Fix some failing tests in BSD systems
From: |
Dmitry Gutov |
Subject: |
master 331e40a 2/2: Fix some failing tests in BSD systems |
Date: |
Wed, 6 Jan 2021 16:07:43 -0500 (EST) |
branch: master
commit 331e40a8fd491ceb35c08a3345785dab61bc60d9
Author: Daniel MartÃn <mardani29@yahoo.es>
Commit: Dmitry Gutov <dgutov@yandex.ru>
Fix some failing tests in BSD systems
* test/lisp/progmodes/xref-tests.el
(xref--xref-file-name-display-is-abs)
(xref--xref-file-name-display-is-relative-to-project-root):
Accommodate some older versions of BSD find
(https://lists.gnu.org/archive/html/emacs-devel/2021-01/msg00156.html).
---
test/lisp/progmodes/xref-tests.el | 38 ++++++++++++++++++++++++--------------
1 file changed, 24 insertions(+), 14 deletions(-)
diff --git a/test/lisp/progmodes/xref-tests.el
b/test/lisp/progmodes/xref-tests.el
index eaafc58..b4b5e4d 100644
--- a/test/lisp/progmodes/xref-tests.el
+++ b/test/lisp/progmodes/xref-tests.el
@@ -99,13 +99,18 @@
(should (null (marker-position (cdr (nth 0 (cdr cons2))))))))
(ert-deftest xref--xref-file-name-display-is-abs ()
- (let ((xref-file-name-display 'abs))
- (should (equal (delete-dups
- (mapcar 'xref-location-group
- (xref-tests--locations-in-data-dir
"\\(bar\\|foo\\)")))
- (list
- (concat xref-tests--data-dir "file1.txt")
- (concat xref-tests--data-dir "file2.txt"))))))
+ (let ((xref-file-name-display 'abs)
+ ;; Some older BSD find versions can produce '//' in the output.
+ (expected (list
+ (concat xref-tests--data-dir "/?file1.txt")
+ (concat xref-tests--data-dir "/?file2.txt")))
+ (actual (delete-dups
+ (mapcar 'xref-location-group
+ (xref-tests--locations-in-data-dir
"\\(bar\\|foo\\)")))))
+ (should (and (= (length expected) (length actual))
+ (cl-every (lambda (e1 e2)
+ (string-match-p e1 e2))
+ expected actual)))))
(ert-deftest xref--xref-file-name-display-is-nondirectory ()
(let ((xref-file-name-display 'nondirectory))
@@ -121,10 +126,15 @@
(file-name-directory (directory-file-name xref-tests--data-dir)))
(project-find-functions
#'(lambda (_) (cons 'transient data-parent-dir)))
- (xref-file-name-display 'project-relative))
- (should (equal (delete-dups
- (mapcar 'xref-location-group
- (xref-tests--locations-in-data-dir
"\\(bar\\|foo\\)")))
- (list
- "xref-resources/file1.txt"
- "xref-resources/file2.txt")))))
+ (xref-file-name-display 'project-relative)
+ ;; Some older BSD find versions can produce '//' in the output.
+ (expected (list
+ "xref-resources//?file1.txt"
+ "xref-resources//?file2.txt"))
+ (actual (delete-dups
+ (mapcar 'xref-location-group
+ (xref-tests--locations-in-data-dir
"\\(bar\\|foo\\)")))))
+ (should (and (= (length expected) (length actual))
+ (cl-every (lambda (e1 e2)
+ (string-match-p e1 e2))
+ expected actual)))))