about summary refs log tree commit diff
diff options
context:
space:
mode:
authorGuillaume Gomez <guillaume.gomez@huawei.com>2022-11-11 17:26:44 +0100
committerGuillaume Gomez <guillaume.gomez@huawei.com>2022-11-11 17:31:02 +0100
commit0839d39570d651e74b78a6cbe61eba02e07b6c2a (patch)
tree1df9614e9dd2398fd1e89cab6e5959070a4af638
parent8c80fe7f15f587d57a3bf40e4b0ee05a7cea8cf0 (diff)
downloadrust-0839d39570d651e74b78a6cbe61eba02e07b6c2a.tar.gz
rust-0839d39570d651e74b78a6cbe61eba02e07b6c2a.zip
Add regression test for multi-level import
-rw-r--r--src/test/rustdoc/multiple-import-levels.rs34
1 files changed, 34 insertions, 0 deletions
diff --git a/src/test/rustdoc/multiple-import-levels.rs b/src/test/rustdoc/multiple-import-levels.rs
new file mode 100644
index 00000000000..1daae49cde9
--- /dev/null
+++ b/src/test/rustdoc/multiple-import-levels.rs
@@ -0,0 +1,34 @@
+// The goal of this test is to ensure that the attributes of all imports are taken into
+// account.
+
+#![crate_name = "foo"]
+
+mod a {
+    /// 1
+    pub struct Type;
+}
+
+mod b {
+    /// 2
+    pub use crate::a::Type;
+}
+
+mod c {
+    /// 3
+    pub use crate::b::Type;
+    /// 4
+    pub use crate::b::Type as Woof;
+}
+
+// @has 'foo/struct.Type.html'
+// @has - '//*[@class="rustdoc-toggle top-doc"]/*[@class="docblock"]' 'foo 2 1'
+/// foo
+pub use b::Type;
+// @has 'foo/struct.Whatever.html'
+// @has - '//*[@class="rustdoc-toggle top-doc"]/*[@class="docblock"]' 'whatever 3 2 1'
+/// whatever
+pub use c::Type as Whatever;
+// @has 'foo/struct.Woof.html'
+// @has - '//*[@class="rustdoc-toggle top-doc"]/*[@class="docblock"]' 'a dog 4 2 1'
+/// a dog
+pub use c::Woof;