rust/tests/rustdoc/toggle-item-contents.rs
Michael Howell 3a3f70c94e rustdoc: remove redundant item kind class from .item-decl > pre
This class originated in the very first commit of `rustdoc_ng`, and was used
to add a color border around the item decl based on its kind.

4fd061c426/src/rustdoc_ng/html/static/main.css (L102-L106)

The item decl no longer has a border, and there aren't any
kind-specific styles in modern rustdoc's rendering of this UI item.

Most of this commit is updating test cases so that they use `item-decl` to
find the `<pre>` tag instead of relying on the fact that the class name
had `rust {kind}` in it while other `<pre>` tags only had class `rust`.
2023-01-14 11:34:03 -07:00

186 lines
4.3 KiB
Rust

#![allow(unused)]
// @has 'toggle_item_contents/struct.PubStruct.html'
// @count - '//details[@class="toggle type-contents-toggle"]' 0
pub struct PubStruct {
pub a: usize,
pub b: usize,
}
// @has 'toggle_item_contents/struct.BigPubStruct.html'
// @count - '//details[@class="toggle type-contents-toggle"]' 1
// @has - '//details[@class="toggle type-contents-toggle"]' 'Show 13 fields'
pub struct BigPubStruct {
pub a: usize,
pub b: usize,
pub c: usize,
pub d: usize,
pub e: usize,
pub f: usize,
pub g: usize,
pub h: usize,
pub i: usize,
pub j: usize,
pub k: usize,
pub l: usize,
pub m: usize,
}
// @has 'toggle_item_contents/union.BigUnion.html'
// @count - '//details[@class="toggle type-contents-toggle"]' 1
// @has - '//details[@class="toggle type-contents-toggle"]' 'Show 13 fields'
pub union BigUnion {
pub a: usize,
pub b: usize,
pub c: usize,
pub d: usize,
pub e: usize,
pub f: usize,
pub g: usize,
pub h: usize,
pub i: usize,
pub j: usize,
pub k: usize,
pub l: usize,
pub m: usize,
}
// @has 'toggle_item_contents/union.Union.html'
// @count - '//details[@class="toggle type-contents-toggle"]' 0
pub union Union {
pub a: usize,
pub b: usize,
pub c: usize,
}
// @has 'toggle_item_contents/struct.PrivStruct.html'
// @count - '//details[@class="toggle type-contents-toggle"]' 0
// @has - '//div[@class="item-decl"]' '/* private fields */'
pub struct PrivStruct {
a: usize,
b: usize,
}
// @has 'toggle_item_contents/enum.Enum.html'
// @!has - '//details[@class="toggle type-contents-toggle"]' ''
pub enum Enum {
A, B, C,
D {
a: u8,
b: u8
}
}
// @has 'toggle_item_contents/enum.EnumStructVariant.html'
// @!has - '//details[@class="toggle type-contents-toggle"]' ''
pub enum EnumStructVariant {
A, B, C,
D {
a: u8,
}
}
// @has 'toggle_item_contents/enum.LargeEnum.html'
// @count - '//div[@class="item-decl"]/pre//details[@class="toggle type-contents-toggle"]' 1
// @has - '//div[@class="item-decl"]/pre//details[@class="toggle type-contents-toggle"]' 'Show 13 variants'
pub enum LargeEnum {
A, B, C, D, E, F(u8), G, H, I, J, K, L, M
}
// @has 'toggle_item_contents/trait.Trait.html'
// @count - '//details[@class="toggle type-contents-toggle"]' 0
pub trait Trait {
type A;
#[must_use]
fn foo();
fn bar();
}
// @has 'toggle_item_contents/trait.GinormousTrait.html'
// @count - '//details[@class="toggle type-contents-toggle"]' 1
// @has - '//details[@class="toggle type-contents-toggle"]' 'Show 16 associated items'
pub trait GinormousTrait {
type A;
type B;
type C;
type D;
type E;
type F;
type G;
type H;
type I;
type J;
type K;
type L;
type M;
const N: usize = 1;
#[must_use]
fn foo();
fn bar();
}
// @has 'toggle_item_contents/trait.HugeTrait.html'
// @count - '//details[@class="toggle type-contents-toggle"]' 1
// @has - '//details[@class="toggle type-contents-toggle"]' 'Show 12 associated constants and 2 methods'
pub trait HugeTrait {
type A;
const M: usize = 1;
const N: usize = 1;
const O: usize = 1;
const P: usize = 1;
const Q: usize = 1;
const R: usize = 1;
const S: usize = 1;
const T: usize = 1;
const U: usize = 1;
const V: usize = 1;
const W: usize = 1;
const X: usize = 1;
#[must_use]
fn foo();
fn bar();
}
// @has 'toggle_item_contents/trait.GiganticTrait.html'
// @count - '//details[@class="toggle type-contents-toggle"]' 1
// @has - '//details[@class="toggle type-contents-toggle"]' 'Show 1 associated constant and 1 method'
pub trait GiganticTrait {
type A;
type B;
type C;
type D;
type E;
type F;
type G;
type H;
type I;
type J;
type K;
type L;
const M: usize = 1;
#[must_use]
fn foo();
}
// @has 'toggle_item_contents/trait.BigTrait.html'
// @count - '//details[@class="toggle type-contents-toggle"]' 1
// @has - '//details[@class="toggle type-contents-toggle"]' 'Show 14 methods'
pub trait BigTrait {
type A;
#[must_use]
fn foo();
fn bar();
fn baz();
fn quux();
fn frob();
fn greeble();
fn blap();
fn whoop();
fn pow();
fn bang();
fn oomph();
fn argh();
fn wap();
fn ouch();
}