Add test for impl blocks containing only private items
This commit is contained in:
parent
dd816a9c2e
commit
c634852cfb
44
src/test/rustdoc/empty-impl-block-private-with-doc.rs
Normal file
44
src/test/rustdoc/empty-impl-block-private-with-doc.rs
Normal file
@ -0,0 +1,44 @@
|
||||
// compile-flags: --document-private-items
|
||||
|
||||
#![feature(inherent_associated_types)]
|
||||
#![allow(incomplete_features)]
|
||||
#![crate_name = "foo"]
|
||||
|
||||
// @has 'foo/struct.Foo.html'
|
||||
pub struct Foo;
|
||||
|
||||
// There are 3 impl blocks with public item and one that should not be displayed
|
||||
// by default because it only contains private items (but not in this case because
|
||||
// we used `--document-private-items`).
|
||||
// @count - '//*[@class="impl has-srclink"]' 'impl Foo' 4
|
||||
|
||||
// Impl block only containing private items should not be displayed unless the
|
||||
// `--document-private-items` flag is used.
|
||||
/// Private
|
||||
impl Foo {
|
||||
const BAR: u32 = 0;
|
||||
type FOO = i32;
|
||||
fn hello() {}
|
||||
}
|
||||
|
||||
// But if any element of the impl block is public, it should be displayed.
|
||||
/// Not private
|
||||
impl Foo {
|
||||
pub const BAR: u32 = 0;
|
||||
type FOO = i32;
|
||||
fn hello() {}
|
||||
}
|
||||
|
||||
/// Not private
|
||||
impl Foo {
|
||||
const BAR: u32 = 0;
|
||||
pub type FOO = i32;
|
||||
fn hello() {}
|
||||
}
|
||||
|
||||
/// Not private
|
||||
impl Foo {
|
||||
const BAR: u32 = 0;
|
||||
type FOO = i32;
|
||||
pub fn hello() {}
|
||||
}
|
40
src/test/rustdoc/empty-impl-block-private.rs
Normal file
40
src/test/rustdoc/empty-impl-block-private.rs
Normal file
@ -0,0 +1,40 @@
|
||||
#![feature(inherent_associated_types)]
|
||||
#![allow(incomplete_features)]
|
||||
#![crate_name = "foo"]
|
||||
|
||||
// @has 'foo/struct.Foo.html'
|
||||
pub struct Foo;
|
||||
|
||||
// There are 3 impl blocks with public item and one that should not be displayed
|
||||
// because it only contains private items.
|
||||
// @count - '//*[@class="impl has-srclink"]' 'impl Foo' 3
|
||||
|
||||
// Impl block only containing private items should not be displayed.
|
||||
/// Private
|
||||
impl Foo {
|
||||
const BAR: u32 = 0;
|
||||
type FOO = i32;
|
||||
fn hello() {}
|
||||
}
|
||||
|
||||
// But if any element of the impl block is public, it should be displayed.
|
||||
/// Not private
|
||||
impl Foo {
|
||||
pub const BAR: u32 = 0;
|
||||
type FOO = i32;
|
||||
fn hello() {}
|
||||
}
|
||||
|
||||
/// Not private
|
||||
impl Foo {
|
||||
const BAR: u32 = 0;
|
||||
pub type FOO = i32;
|
||||
fn hello() {}
|
||||
}
|
||||
|
||||
/// Not private
|
||||
impl Foo {
|
||||
const BAR: u32 = 0;
|
||||
type FOO = i32;
|
||||
pub fn hello() {}
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user