about summary refs log tree commit diff
path: root/tests/rustdoc
diff options
context:
space:
mode:
authorGuillaume Gomez <guillaume.gomez@huawei.com>2024-02-27 17:40:12 +0100
committerGuillaume Gomez <guillaume.gomez@huawei.com>2024-02-28 16:08:46 +0100
commit632d26aeff1a943d4791ddad3025af61e0ff2256 (patch)
tree8e43a00b9f13de249c7fd6e1f587e5667c07f288 /tests/rustdoc
parent5df9593f1ad13eac4ca1da281332c8147937cd34 (diff)
downloadrust-632d26aeff1a943d4791ddad3025af61e0ff2256.tar.gz
rust-632d26aeff1a943d4791ddad3025af61e0ff2256.zip
Add regression test for inclusion of whitespace characters in rustdoc highlighting
Diffstat (limited to 'tests/rustdoc')
-rw-r--r--tests/rustdoc/source-code-highlight.rs29
1 files changed, 29 insertions, 0 deletions
diff --git a/tests/rustdoc/source-code-highlight.rs b/tests/rustdoc/source-code-highlight.rs
new file mode 100644
index 00000000000..0a1be791ec2
--- /dev/null
+++ b/tests/rustdoc/source-code-highlight.rs
@@ -0,0 +1,29 @@
+// We need this option to be enabled for the `foo` macro declaration to ensure
+// that the link on the ident is not including whitespace characters.
+
+//@ compile-flags: -Zunstable-options --generate-link-to-definition
+#![crate_name = "foo"]
+
+// @has 'src/foo/source-code-highlight.rs.html'
+
+// @hasraw - '<a href="../../foo/macro.foo.html">foo</a>'
+#[macro_export]
+macro_rules! foo {
+    () => {}
+}
+
+// @hasraw - '<span class="macro">foo!</span>'
+foo! {}
+
+// @hasraw - '<a href="../../foo/fn.f.html">f</a>'
+#[rustfmt::skip]
+pub fn f () {}
+// @hasraw - '<a href="../../foo/struct.Bar.html">Bar</a>'
+// @hasraw - '<a href="../../foo/struct.Bar.html">Bar</a>'
+// @hasraw - '<a href="{{channel}}/std/primitive.u32.html">u32</a>'
+#[rustfmt::skip]
+pub struct Bar ( u32 );
+// @hasraw - '<a href="../../foo/enum.Foo.html">Foo</a>'
+pub enum Foo {
+    A,
+}