summaryrefslogtreecommitdiff
path: root/rust-mode-tests.el
diff options
context:
space:
mode:
authorFelix S Klock II <pnkfelix@pnkfx.org>2015-07-05 22:05:52 +0200
committerFelix S Klock II <pnkfelix@pnkfx.org>2015-07-05 22:05:52 +0200
commitf1b6007ab5c9acb5c2b07452f5f38caf85ec537f (patch)
treebadcc33e14f05db603a99f05751b5c1550e9bccf /rust-mode-tests.el
parent5ed467549abe81415241b0ea45e2ae87584b588c (diff)
parentd1ed01519655b6b262d6d21cdfb29f166b697eb3 (diff)
downloadrust-mode-f1b6007ab5c9acb5c2b07452f5f38caf85ec537f.tar.gz
Merge pull request #71 from birkenfeld/doc-comments
Distinguish face for doc-comments
Diffstat (limited to 'rust-mode-tests.el')
-rw-r--r--rust-mode-tests.el64
1 files changed, 64 insertions, 0 deletions
diff --git a/rust-mode-tests.el b/rust-mode-tests.el
index b40aed0..58fcaaf 100644
--- a/rust-mode-tests.el
+++ b/rust-mode-tests.el
@@ -1085,6 +1085,70 @@ this_is_not_a_string();)"
(should (equal nil (get-text-property 28 'face))) ;; Semicolon--should not be part of the string
))
+;;; Documentation comments
+
+(ert-deftest font-lock-doc-line-comment-parent ()
+ (rust-test-font-lock
+ "//! doc"
+ '("//! doc" font-lock-doc-face)))
+
+(ert-deftest font-lock-doc-line-comment-item ()
+ (rust-test-font-lock
+ "/// doc"
+ '("/// doc" font-lock-doc-face)))
+
+(ert-deftest font-lock-nondoc-line ()
+ (rust-test-font-lock
+ "////// doc"
+ '("////// " font-lock-comment-delimiter-face
+ "doc" font-lock-comment-face)))
+
+(ert-deftest font-lock-doc-line-in-string ()
+ (rust-test-font-lock
+ "\"/// doc\""
+ '("\"/// doc\"" font-lock-string-face))
+
+ (rust-test-font-lock
+ "\"//! doc\""
+ '("\"//! doc\"" font-lock-string-face)))
+
+(ert-deftest font-lock-doc-line-in-nested-comment ()
+ (rust-test-font-lock
+ "/* /// doc */"
+ '("/* " font-lock-comment-delimiter-face
+ "/// doc */" font-lock-comment-face))
+
+ (rust-test-font-lock
+ "/* //! doc */"
+ '("/* " font-lock-comment-delimiter-face
+ "//! doc */" font-lock-comment-face)))
+
+
+(ert-deftest font-lock-doc-block-comment-parent ()
+ (rust-test-font-lock
+ "/*! doc */"
+ '("/*! doc */" font-lock-doc-face)))
+
+(ert-deftest font-lock-doc-block-comment-item ()
+ (rust-test-font-lock
+ "/** doc */"
+ '("/** doc */" font-lock-doc-face)))
+
+(ert-deftest font-lock-nondoc-block-comment-item ()
+ (rust-test-font-lock
+ "/***** doc */"
+ '("/**" font-lock-comment-delimiter-face
+ "*** doc */" font-lock-comment-face)))
+
+(ert-deftest font-lock-doc-block-in-string ()
+ (rust-test-font-lock
+ "\"/** doc */\""
+ '("\"/** doc */\"" font-lock-string-face))
+ (rust-test-font-lock
+ "\"/*! doc */\""
+ '("\"/*! doc */\"" font-lock-string-face)))
+
+
(ert-deftest indent-method-chains-no-align ()
(let ((rust-indent-method-chain nil)) (test-indent
"