aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDaniel Martín2021-01-06 22:53:40 +0200
committerDmitry Gutov2021-01-06 23:07:22 +0200
commit331e40a8fd491ceb35c08a3345785dab61bc60d9 (patch)
tree88201f62a77b87332678bca46809f265a8e3e89f
parent665b4e7c4e093391a353506e7b2385f0902db70b (diff)
downloademacs-331e40a8fd491ceb35c08a3345785dab61bc60d9.tar.gz
emacs-331e40a8fd491ceb35c08a3345785dab61bc60d9.zip
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).
-rw-r--r--test/lisp/progmodes/xref-tests.el38
1 files changed, 24 insertions, 14 deletions
diff --git a/test/lisp/progmodes/xref-tests.el b/test/lisp/progmodes/xref-tests.el
index eaafc5888c7..b4b5e4db5d6 100644
--- a/test/lisp/progmodes/xref-tests.el
+++ b/test/lisp/progmodes/xref-tests.el
@@ -99,13 +99,18 @@
99 (should (null (marker-position (cdr (nth 0 (cdr cons2)))))))) 99 (should (null (marker-position (cdr (nth 0 (cdr cons2))))))))
100 100
101(ert-deftest xref--xref-file-name-display-is-abs () 101(ert-deftest xref--xref-file-name-display-is-abs ()
102 (let ((xref-file-name-display 'abs)) 102 (let ((xref-file-name-display 'abs)
103 (should (equal (delete-dups 103 ;; Some older BSD find versions can produce '//' in the output.
104 (mapcar 'xref-location-group 104 (expected (list
105 (xref-tests--locations-in-data-dir "\\(bar\\|foo\\)"))) 105 (concat xref-tests--data-dir "/?file1.txt")
106 (list 106 (concat xref-tests--data-dir "/?file2.txt")))
107 (concat xref-tests--data-dir "file1.txt") 107 (actual (delete-dups
108 (concat xref-tests--data-dir "file2.txt")))))) 108 (mapcar 'xref-location-group
109 (xref-tests--locations-in-data-dir "\\(bar\\|foo\\)")))))
110 (should (and (= (length expected) (length actual))
111 (cl-every (lambda (e1 e2)
112 (string-match-p e1 e2))
113 expected actual)))))
109 114
110(ert-deftest xref--xref-file-name-display-is-nondirectory () 115(ert-deftest xref--xref-file-name-display-is-nondirectory ()
111 (let ((xref-file-name-display 'nondirectory)) 116 (let ((xref-file-name-display 'nondirectory))
@@ -121,10 +126,15 @@
121 (file-name-directory (directory-file-name xref-tests--data-dir))) 126 (file-name-directory (directory-file-name xref-tests--data-dir)))
122 (project-find-functions 127 (project-find-functions
123 #'(lambda (_) (cons 'transient data-parent-dir))) 128 #'(lambda (_) (cons 'transient data-parent-dir)))
124 (xref-file-name-display 'project-relative)) 129 (xref-file-name-display 'project-relative)
125 (should (equal (delete-dups 130 ;; Some older BSD find versions can produce '//' in the output.
126 (mapcar 'xref-location-group 131 (expected (list
127 (xref-tests--locations-in-data-dir "\\(bar\\|foo\\)"))) 132 "xref-resources//?file1.txt"
128 (list 133 "xref-resources//?file2.txt"))
129 "xref-resources/file1.txt" 134 (actual (delete-dups
130 "xref-resources/file2.txt"))))) 135 (mapcar 'xref-location-group
136 (xref-tests--locations-in-data-dir "\\(bar\\|foo\\)")))))
137 (should (and (= (length expected) (length actual))
138 (cl-every (lambda (e1 e2)
139 (string-match-p e1 e2))
140 expected actual)))))