diff options
Diffstat (limited to 'third_party/rust/document-features/tests/self-doc.rs')
-rw-r--r-- | third_party/rust/document-features/tests/self-doc.rs | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/third_party/rust/document-features/tests/self-doc.rs b/third_party/rust/document-features/tests/self-doc.rs new file mode 100644 index 0000000000..4e27113145 --- /dev/null +++ b/third_party/rust/document-features/tests/self-doc.rs @@ -0,0 +1,37 @@ +#[test] +fn ensure_it_compiles() { + document_features::document_features!(); + document_features::document_features!(feature_label = "**`{feature}`**"); + document_features::document_features!(feature_label = r"**`{feature}`**"); + document_features::document_features!(feature_label = r#"**`{feature}`**"#); + document_features::document_features!( + feature_label = "<span class=\"stab portability\"><code>{feature}</code></span>" + ); + document_features::document_features!( + feature_label = r#"<span class="stab portability"><code>{feature}</code></span>"# + ); + document_features::document_features!( + feature_label = r##"<span class="stab portability"><code>{feature}</code></span>"## + ); +} + +#[test] +fn self_doc() { + let actual = document_features::document_features!(); + let expected = "* **`self-test`** — Internal feature used only for the tests, don't enable\n"; + assert_eq!(actual, expected); +} + +#[test] +fn self_doc_with_custom_label() { + let actual = document_features::document_features!( + feature_label = r#"<span class="stab portability"><code>{feature}</code></span>"# + ); + let expected = + "* <span class=\"stab portability\"><code>self-test</code></span> — Internal feature used only for the tests, don't enable\n"; + assert_eq!(actual, expected); + let actual2 = document_features::document_features!( + feature_label = "<span class=\"stab\u{0020}portability\"><code>{feature}</code></span>" + ); + assert_eq!(actual2, expected); +} |