diff options
author | Guillaume Gomez <guillaume.gomez@huawei.com> | 2023-05-16 14:35:46 +0200 |
---|---|---|
committer | Guillaume Gomez <guillaume.gomez@huawei.com> | 2023-05-16 14:35:46 +0200 |
commit | 0f1d4b5d4d46687130cbd2766ab1d761bdac90c4 (patch) | |
tree | 783b02baee63caf26719e9a89d33691c5d21846a | |
parent | 88493d26657557b1e328be2057594db79cb2f594 (diff) | |
download | rust-0f1d4b5d4d46687130cbd2766ab1d761bdac90c4.tar.gz |
Add regression test for #111415
-rw-r--r-- | tests/rustdoc/nested-items-issue-111415.rs | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/tests/rustdoc/nested-items-issue-111415.rs b/tests/rustdoc/nested-items-issue-111415.rs new file mode 100644 index 00000000000..9b7688c332c --- /dev/null +++ b/tests/rustdoc/nested-items-issue-111415.rs @@ -0,0 +1,36 @@ +// Regression test for <https://github.com/rust-lang/rust/issues/111415>. +// This test ensures that only impl blocks are documented in bodies. + +#![crate_name = "foo"] + +// @has 'foo/index.html' +// Checking there are only three sections. +// @count - '//*[@id="main-content"]/*[@class="small-section-header"]' 3 +// @has - '//*[@id="main-content"]/*[@class="small-section-header"]' 'Structs' +// @has - '//*[@id="main-content"]/*[@class="small-section-header"]' 'Functions' +// @has - '//*[@id="main-content"]/*[@class="small-section-header"]' 'Traits' +// Checking that there are only three items. +// @count - '//*[@id="main-content"]//*[@class="item-name"]' 3 +// @has - '//*[@id="main-content"]//a[@href="struct.Bar.html"]' 'Bar' +// @has - '//*[@id="main-content"]//a[@href="fn.foo.html"]' 'foo' +// @has - '//*[@id="main-content"]//a[@href="trait.Foo.html"]' 'Foo' + +// Now checking that the `foo` method is visible in `Bar` page. +// @has 'foo/struct.Bar.html' +// @has - '//*[@id="method.foo"]/*[@class="code-header"]' 'pub fn foo()' +// @has - '//*[@id="method.bar"]/*[@class="code-header"]' 'fn bar()' +pub struct Bar; + +pub trait Foo { + fn bar() {} +} + +pub fn foo() { + pub mod inaccessible {} + pub fn inner() {} + pub const BAR: u32 = 0; + impl Bar { + pub fn foo() {} + } + impl Foo for Bar {} +} |