summaryrefslogtreecommitdiff
path: root/tests/rustdoc/issue-60522-duplicated-glob-reexport.rs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/rustdoc/issue-60522-duplicated-glob-reexport.rs')
-rw-r--r--tests/rustdoc/issue-60522-duplicated-glob-reexport.rs39
1 files changed, 39 insertions, 0 deletions
diff --git a/tests/rustdoc/issue-60522-duplicated-glob-reexport.rs b/tests/rustdoc/issue-60522-duplicated-glob-reexport.rs
new file mode 100644
index 00000000000..1429b5e4741
--- /dev/null
+++ b/tests/rustdoc/issue-60522-duplicated-glob-reexport.rs
@@ -0,0 +1,39 @@
+// Regression test for <https://github.com/rust-lang/rust/issues/60522>.
+// This test ensures that the `banana` and `peach` modules don't appear twice
+// and that the visible modules are not the re-exported ones.
+
+#![crate_name = "foo"]
+
+// @has 'foo/index.html'
+// @count - '//*[@id="main-content"]/*[@class="small-section-header"]' 1
+// @has - '//*[@id="main-content"]/*[@class="small-section-header"]' 'Modules'
+// @count - '//*[@id="main-content"]/*[@class="item-table"]//*[@class="mod"]' 2
+// @has - '//*[@id="main-content"]//*[@class="mod"]' 'banana'
+// @has - '//*[@id="main-content"]//*[@href="banana/index.html"]' 'banana'
+// @has - '//*[@id="main-content"]//*[@class="mod"]' 'peach'
+// @has - '//*[@id="main-content"]//*[@href="peach/index.html"]' 'peach'
+
+pub use crate::my_crate::*;
+
+mod my_crate {
+ pub mod banana {
+ pub struct Yellow;
+ }
+ pub mod peach {
+ pub struct Pink;
+ }
+}
+
+// @has 'foo/banana/index.html'
+// @count - '//*[@id="main-content"]//*[@class="struct"]' 1
+// @has - '//*[@id="main-content"]//*[@class="struct"]' 'Brown'
+pub mod banana {
+ pub struct Brown;
+}
+
+// @has 'foo/peach/index.html'
+// @count - '//*[@id="main-content"]//*[@class="struct"]' 1
+// @has - '//*[@id="main-content"]//*[@class="struct"]' 'Pungent'
+pub mod peach {
+ pub struct Pungent;
+}