Skip to content

Commit

Permalink
Add GUI test for trait bounds display
Browse files Browse the repository at this point in the history
  • Loading branch information
GuillaumeGomez committed Jul 19, 2024
1 parent 590c01a commit eec3c3d
Show file tree
Hide file tree
Showing 2 changed files with 41 additions and 0 deletions.
6 changes: 6 additions & 0 deletions tests/rustdoc-gui/src/test_docs/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -614,3 +614,9 @@ pub mod private {
B,
}
}

pub mod trait_bounds {
pub trait OneBound: Sized {}
pub trait TwoBounds: Sized + Copy {}
pub trait ThreeBounds: Sized + Copy + Eq {}
}
35 changes: 35 additions & 0 deletions tests/rustdoc-gui/trait-with-bounds.goml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
// Check that if a trait has more than 2 bounds, they are displayed on different lines.

// It tries to load a JS for each trait but there are none since they're not implemented.
fail-on-request-error: false
go-to: "file://" + |DOC_PATH| + "/test_docs/trait_bounds/trait.OneBound.html"
// They should have the same Y position.
compare-elements-position: (
".item-decl code",
".item-decl a.trait[title='trait core::marker::Sized']",
["y"],
)
go-to: "file://" + |DOC_PATH| + "/test_docs/trait_bounds/trait.TwoBounds.html"
// They should have the same Y position.
compare-elements-position: (
".item-decl code",
".item-decl a.trait[title='trait core::marker::Copy']",
["y"],
)
go-to: "file://" + |DOC_PATH| + "/test_docs/trait_bounds/trait.ThreeBounds.html"
// All on their own line.
compare-elements-position-false: (
".item-decl code",
".item-decl a.trait[title='trait core::marker::Sized']",
["y"],
)
compare-elements-position-false: (
".item-decl a.trait[title='trait core::marker::Sized']",
".item-decl a.trait[title='trait core::marker::Copy']",
["y"],
)
compare-elements-position-false: (
".item-decl a.trait[title='trait core::marker::Copy']",
".item-decl a.trait[title='trait core::cmp::Eq']",
["y"],
)

0 comments on commit eec3c3d

Please sign in to comment.