branch: elpa/d-mode
commit 979c946ba88fbd5b145ffbd3fd5a68f173ba5c7f
Author: Vladimir Panteleev <[email protected]>
Commit: Vladimir Panteleev <[email protected]>
Fix testing multiple nested imenu entries
---
d-mode-test.el | 23 ++++++++++-------------
1 file changed, 10 insertions(+), 13 deletions(-)
diff --git a/d-mode-test.el b/d-mode-test.el
index fba2799..e53c4b6 100644
--- a/d-mode-test.el
+++ b/d-mode-test.el
@@ -234,24 +234,21 @@ Called from the #run snippet of individual test files."
(require 'imenu)
+(defun d-test-imenu-to-lines (l)
+ (apply #'append
+ (mapcar
+ (lambda (e)
+ (if (imenu--subalist-p e)
+ (d-test-imenu-to-lines (cdr e))
+ (list (line-number-at-pos (cdr e)))))
+ l)))
+
(defun d-test-get-imenu-lines ()
"Get list of line numbers of lines recognized as imenu entries.
Called from the #run snippet of individual test files."
(imenu--make-index-alist t)
- (sort
- (apply
- 'append
- (mapcar
- (lambda (x)
- (if (imenu--subalist-p x)
- (mapcar
- (lambda (x)
- (line-number-at-pos (cdr x)))
- (cdr x))
- (list (line-number-at-pos (cdr x)))))
- imenu--index-alist))
- '<))
+ (sort (d-test-imenu-to-lines imenu--index-alist) '<))
(defun d-test-save-result (filename)
"In case of an unexpected result, save it to a file.