summaryrefslogtreecommitdiff
path: root/test/lisp/emacs-lisp
diff options
context:
space:
mode:
Diffstat (limited to 'test/lisp/emacs-lisp')
-rw-r--r--test/lisp/emacs-lisp/text-property-search-tests.el43
1 files changed, 43 insertions, 0 deletions
diff --git a/test/lisp/emacs-lisp/text-property-search-tests.el b/test/lisp/emacs-lisp/text-property-search-tests.el
index 47db54a0512..21a25c7835f 100644
--- a/test/lisp/emacs-lisp/text-property-search-tests.el
+++ b/test/lisp/emacs-lisp/text-property-search-tests.el
@@ -108,6 +108,49 @@
'("bold1")
35))
+(defmacro with-match-test (form beginning end value &optional point)
+ `(with-temp-buffer
+ (text-property-setup)
+ (when ,point
+ (goto-char ,point))
+ (should (equal ,form
+ (make-prop-match :beginning ,beginning
+ :end ,end
+ :value ,value)))))
+
+(ert-deftest text-property-search-forward-prop-match-match-face-nil-nil ()
+ (with-match-test
+ (text-property-search-forward 'face nil nil)
+ 9 14 'bold))
+
+(ert-deftest text-property-search-forward-prop-match-match-face-bold-t ()
+ (with-match-test
+ (text-property-search-forward 'face 'bold t)
+ 9 14 'bold))
+
+(ert-deftest text-property-search-forward-prop-match-match-face-bold-nil ()
+ (with-match-test
+ (text-property-search-forward 'face 'bold nil)
+ 1 9 nil))
+
+(ert-deftest text-property-search-backward-prop-match-match-face-nil-nil ()
+ (with-match-test
+ (text-property-search-backward 'face nil nil)
+ 39 46 'italic
+ (point-max)))
+
+(ert-deftest text-property-search-backward-prop-match-match-face-italic-t ()
+ (with-match-test
+ (text-property-search-backward 'face 'italic t)
+ 39 46 'italic
+ (point-max)))
+
+(ert-deftest text-property-search-backward-prop-match-match-face-italic-nil ()
+ (with-match-test
+ (text-property-search-backward 'face 'italic nil)
+ 46 57 nil
+ (point-max)))
+
(provide 'text-property-search-tests)
;;; text-property-search-tests.el ends here