summaryrefslogtreecommitdiffstats
path: root/tests/rustdoc/jump-to-def-doc-links.rs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/rustdoc/jump-to-def-doc-links.rs')
-rw-r--r--tests/rustdoc/jump-to-def-doc-links.rs51
1 files changed, 51 insertions, 0 deletions
diff --git a/tests/rustdoc/jump-to-def-doc-links.rs b/tests/rustdoc/jump-to-def-doc-links.rs
new file mode 100644
index 000000000..014d58032
--- /dev/null
+++ b/tests/rustdoc/jump-to-def-doc-links.rs
@@ -0,0 +1,51 @@
+// compile-flags: -Zunstable-options --generate-link-to-definition
+
+#![crate_name = "foo"]
+
+// @has 'src/foo/jump-to-def-doc-links.rs.html'
+
+// @has - '//a[@href="../../foo/struct.Bar.html"]' 'Bar'
+// @has - '//a[@href="../../foo/struct.Foo.html"]' 'Foo'
+pub struct Bar; pub struct Foo;
+
+// @has - '//a[@href="../../foo/enum.Enum.html"]' 'Enum'
+pub enum Enum {
+ Variant1(String),
+ Variant2(u8),
+}
+
+// @has - '//a[@href="../../foo/struct.Struct.html"]' 'Struct'
+pub struct Struct {
+ pub a: u8,
+ b: Foo,
+}
+
+impl Struct {
+ pub fn foo() {}
+ pub fn foo2(&self) {}
+ fn bar() {}
+ fn bar(&self) {}
+}
+
+// @has - '//a[@href="../../foo/trait.Trait.html"]' 'Trait'
+pub trait Trait {
+ fn foo();
+}
+
+impl Trait for Struct {
+ fn foo() {}
+}
+
+// @has - '//a[@href="../../foo/union.Union.html"]' 'Union'
+pub union Union {
+ pub a: u16,
+ pub f: u32,
+}
+
+// @has - '//a[@href="../../foo/fn.bar.html"]' 'bar'
+pub fn bar(b: Bar) {
+ let x = Foo;
+}
+
+// @has - '//a[@href="../../foo/bar/index.html"]' 'bar'
+pub mod bar {}