branch: elpa/markdown-mode
commit cc33f7c73dbd919e5677773fd83d5313d3986da4
Author: Joe Reinhart <joseph.reinh...@gmail.com>
Commit: Joe Reinhart <joseph.reinh...@gmail.com>

    Update tests to reflect different font faces for wiki links and missing 
files
---
 markdown-mode.el       |  8 +++++-
 tests/markdown-test.el | 74 +++++++++++++++++++++-----------------------------
 tests/wiki-links.text  |  2 +-
 3 files changed, 39 insertions(+), 45 deletions(-)

diff --git a/markdown-mode.el b/markdown-mode.el
index 7bb891c7d2..adc1b49f48 100644
--- a/markdown-mode.el
+++ b/markdown-mode.el
@@ -262,7 +262,7 @@ This is the default search behavior of Ikiwiki."
   :package-version '(markdown-mode . "2.2"))
 
 (defcustom markdown-wiki-link-search-type nil
-  "Searching type for markdown wiki link.
+  "A list of options for searching for markdown wiki links.
 
 `sub-directories': search for wiki link targets in sub directories
 `parent-directories': search for wiki link targets in parent directories
@@ -8386,6 +8386,11 @@ The location of the alias component depends on the value 
of
     (or (match-string-no-properties 5) (match-string-no-properties 3))))
 
 (defun markdown--wiki-link-search-types ()
+  "Return a list of the currently selected search types.
+
+Due to deprecated variables, as of markdown-mode version 2.5, the return value
+of this function is the same as the value of the variable
+`markdown-wiki-link-search-type'."
   (let ((ret (and markdown-wiki-link-search-type
                   (cl-copy-list markdown-wiki-link-search-type))))
     (when (and markdown-wiki-link-search-subdirectories
@@ -8397,6 +8402,7 @@ The location of the alias component depends on the value 
of
     ret))
 
 (defun markdown--project-root ()
+  "Try various approaches to find the project root."
   (or (cl-loop for dir in '(".git" ".hg" ".svn")
                when (locate-dominating-file default-directory dir)
                return it)
diff --git a/tests/markdown-test.el b/tests/markdown-test.el
index 9505e4a52c..d5d032db34 100644
--- a/tests/markdown-test.el
+++ b/tests/markdown-test.el
@@ -151,7 +151,7 @@ This file is not saved."
                 (unless (eq vals value)
                   (throw 'fail loc))))))
     (when fail-loc
-      (message "Testing range (%d,%d) for property %s equal to %s."
+      (message "Testing that range (%d,%d) for property %s includes %s."
                begin end prop value)
       (message "Expected value (%s) not found in property (%s) at location %d" 
value prop fail-loc)
       (markdown-test-report-property-range begin end prop))
@@ -162,12 +162,12 @@ This file is not saved."
   (let ((fail-loc
          (catch 'fail
            (dolist (loc (number-sequence begin end))
-             (unless (eq (get-char-property loc prop) value)
+             (unless (equal (get-char-property loc prop) value)
                (throw 'fail loc))))))
     (when fail-loc
-      (message "Testing range (%d,%d) for property %s equal to %s."
+      (message "Testing that range (%d,%d) for property %s equal to %s."
                begin end prop value)
-      (message "Expected value (%s) not found in property (%s) at location %d" 
value prop fail-loc)
+      (message "Expected value (%s) does not equal property (%s) at location 
%d" value prop fail-loc)
       (markdown-test-report-property-range begin end prop))
     (should-not fail-loc)))
 
@@ -5728,39 +5728,24 @@ http://example.com \"title\"  )
 
 (ert-deftest test-markdown-wiki-link/font-lock ()
   "Test font lock faces for wiki links."
-  ;; If `temporary-file-directory' contains an inaccessible
-  ;; subdirectory, `markdown-fontify-buffer-wiki-links' fails because
-  ;; it calls `directory-files-recursively' on the directory, which
-  ;; fails because of
-  ;; <https://debbugs.gnu.org/cgi/bugreport.cgi?bug=28567>.  To fix
-  ;; this, we run the entire test in a new subdirectory of
-  ;; `temporary-file-directory', which is guaranteed to not contain
-  ;; any inaccessible directories.
-  (let ((temporary-file-directory
-         (file-name-as-directory (make-temp-file "markdown-test" :dir-flag))))
-    (markdown-test-temp-file "wiki-links.text"
-      (let* ((fn (concat (file-name-directory buffer-file-name)
-                         "inline.text"))
-             (markdown-enable-wiki-links t))
-        ;; Create inline.text in the same temp directory, refontify
-        (write-region "" nil fn nil 1)
-        (markdown-fontify-buffer-wiki-links)
-        ;; Confirm location of first wiki link
-        (should (eq (markdown-next-link) 8))
-        ;; First wiki link doesn't have a corresponding file
-        (markdown-test-range-has-property 8 20 'font-lock-face 
'markdown-missing-link-face)
-        ;; Second wiki link doesn't have a corresponding file
-        (should (eq (markdown-next-link) 73))
-        (markdown-test-range-has-property 73 88 'font-lock-face 
'markdown-missing-link-face)
-        ;; Move to third wiki link, and create the missing file
-        (should (eq (markdown-next-link) 155))
-        (should (string-equal (markdown-wiki-link-link) "inline"))
-        (markdown-test-range-has-property 155 164 'font-lock-face 
'markdown-link-face)
-        ;; Check wiki links in code blocks
-        (markdown-test-range-has-face 360 395 'markdown-pre-face)
-        ;; Remove temporary files
-        (delete-file fn)))
-    (delete-directory temporary-file-directory)))
+  (let ((markdown-wiki-link-alias-first nil)
+        (markdown-wiki-link-search-type '(project))
+        (markdown-wiki-link-fontify-missing t)
+        (markdown-enable-wiki-links t))
+    (markdown-test-file "wiki-links.text"
+      ;; Confirm location of first wiki link
+      (should (eq (markdown-next-link) 8))
+      ;; First wiki link doesn't have a corresponding file
+      (markdown-test-range-has-property 10 18 'face 
'markdown-missing-link-face)
+      ;; Second wiki link doesn't have a corresponding file
+      (should (eq (markdown-next-link) 73))
+      (markdown-test-range-has-property 81 86 'face 
'markdown-missing-link-face)
+      ;; Third link DOES have a corresponding file
+      (should (eq (markdown-next-link) 155))
+      (should (string-equal (markdown-wiki-link-link) "inline"))
+      (markdown-test-range-has-property 157 162 'face 
'markdown-missing-link-face)
+      ;; Check wiki links in code blocks
+      (markdown-test-range-has-face 370 405 'markdown-code-face))))
 
 (ert-deftest test-markdown-wiki-link/kill ()
   "Simple tests for `markdown-kill-thing-at-point' for wiki links."
@@ -7044,6 +7029,7 @@ x|"
       (unwind-protect
           (progn
             (markdown-mode)
+            (font-lock-ensure)
             ;; search rules
             (should (string-match-p
                      "/sub/foo$"
@@ -7052,16 +7038,18 @@ x|"
                      (markdown-convert-wiki-link-to-filename "doesnotexist")
                      "doesnotexist"))
             ;; font lock
-            (markdown-test-range-has-property 1 11 'font-lock-face 
'markdown-link-face)
-            (markdown-test-range-has-property 14 33 'font-lock-face 
'markdown-missing-link-face)
-            (markdown-test-range-has-property 36 42 'font-lock-face 
'markdown-link-face)
-            (markdown-test-range-has-property 45 60 'font-lock-face 
'markdown-missing-link-face))
+            (markdown-test-range-has-property  3  9 'face 'markdown-link-face)
+            (markdown-test-range-has-property 16 31 'face 
'markdown-missing-link-face)
+            (markdown-test-range-has-property 38 40 'face 'markdown-link-face)
+            (markdown-test-range-has-property 47 58 'face 
'markdown-missing-link-face)
+            (markdown-test-range-has-property 65 74 'face 'markdown-link-face))
         (kill-buffer)))
     (progn
       (find-file (expand-file-name "wiki/sub/foo" markdown-test-dir))
       (unwind-protect
           (progn
             (markdown-mode)
+            (font-lock-ensure)
             ;; search rules
             (should (string-match-p
                      "/wiki/root$"
@@ -7070,8 +7058,8 @@ x|"
                      (markdown-convert-wiki-link-to-filename "doesnotexist")
                      "doesnotexist"))
             ;; font lock
-            (markdown-test-range-has-property 1 16 'font-lock-face 
'markdown-missing-link-face)
-            (markdown-test-range-has-property 19 26 'font-lock-face 
'markdown-link-face))
+            (markdown-test-range-has-property  3 14 'face 
'markdown-missing-link-face)
+            (markdown-test-range-has-property 21 24 'face 'markdown-link-face))
         (kill-buffer)))))
 
 (ert-deftest test-markdown-ext/wiki-link-keep-match-data ()
diff --git a/tests/wiki-links.text b/tests/wiki-links.text
index 6c33349ba3..d5473c617c 100644
--- a/tests/wiki-links.text
+++ b/tests/wiki-links.text
@@ -9,7 +9,7 @@ point 155.
 Bracketed expressions in code blocks should not be matched as wiki
 links:
 
-```
+```clojure
 {
  :user {
    :repositories [["clojars" {:sign-releases false}]]

Reply via email to