Skip to content

Commit

Permalink
Add test for implementors
Browse files Browse the repository at this point in the history
  • Loading branch information
GuillaumeGomez committed Jul 12, 2021
1 parent da6d82e commit bd81949
Show file tree
Hide file tree
Showing 3 changed files with 30 additions and 0 deletions.
16 changes: 16 additions & 0 deletions src/test/rustdoc-gui/implementors.goml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
// The goal of this test is to check that the external trait implementors, generated with JS,
// have the same display than the "local" ones.
goto: file://|DOC_PATH|/implementors/trait.Whatever.html
assert: "#implementors-list"
// There are supposed to be two implementors listed.
assert-count: ("#implementors-list > .impl", 2)
// Now we check that both implementors have an anchor, an ID and a similar DOM.
assert: ("#implementors-list > .impl:nth-child(1) > a.anchor")
assert-attribute: ("#implementors-list > .impl:nth-child(1)", {"id": "impl-Whatever"})
assert-attribute: ("#implementors-list > .impl:nth-child(1) > a.anchor", {"href": "#impl-Whatever"})
assert: "#implementors-list > .impl:nth-child(1) > code.in-band"

assert: ("#implementors-list > .impl:nth-child(2) > a.anchor")
assert-attribute: ("#implementors-list > .impl:nth-child(2)", {"id": "impl-Whatever-1"})
assert-attribute: ("#implementors-list > .impl:nth-child(2) > a.anchor", {"href": "#impl-Whatever-1"})
assert: "#implementors-list > .impl:nth-child(2) > code.in-band"
7 changes: 7 additions & 0 deletions src/test/rustdoc-gui/src/implementors/Cargo.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
[package]
name = "implementors"
version = "0.1.0"
edition = "2018"

[lib]
path = "lib.rs"
7 changes: 7 additions & 0 deletions src/test/rustdoc-gui/src/implementors/lib.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
pub trait Whatever {
fn method() {}
}

pub struct Struct;

impl Whatever for Struct {}

0 comments on commit bd81949

Please sign in to comment.