// The goal of this test is to check that the external trait implementors, generated with JS,
// have the same display than the "local" ones.
go-to: "file://" + |DOC_PATH| + "/implementors/trait.Whatever.html"
wait-for-css: ("#implementors-list", {"display": "block"})
// There are supposed to be four implementors listed.
assert-count: ("#implementors-list .impl", 4)
// There are supposed to be two non-negative implementors.
assert-count: ("#implementors-list .negative-marker ~ *", 2)
// Now we check that both implementors have an anchor, an ID and a similar DOM.
define-function: (
    "check-dom",
    [id],
    block {
        assert-attribute: (|id| + " > a.anchor", {"href": |id|})
        assert: |id| + " > .code-header"
    },
)

call-function: ("check-dom", {"id": "#impl-Whatever-for-Struct2"})
call-function: ("check-dom", {"id": "#impl-Whatever-2"})
call-function: ("check-dom", {"id": "#impl-Whatever-for-Struct"})
call-function: ("check-dom", {"id": "#impl-Whatever-3"})

// Ensure that negative impl are sorted first.
assert-property: (
    "#implementors-list > *:nth-child(1) > h3",
    {"textContent": "impl !Whatever for Struct2"},
)
assert-property: (
    "#implementors-list > *:nth-child(2) > h3",
    {"textContent": "impl !Whatever for StructToImplOnReexport"},
)
// Third one is the negative marker.
assert-attribute: ("#implementors-list > *:nth-child(3)", {"class": "negative-marker"})
// This one is a `<detail>` so the selector is a bit different.
assert-property: (
    "#implementors-list > *:nth-child(4) section > h3",
    {"textContent": "impl Whatever for Struct"},
)
assert-property: (
    "#implementors-list > *:nth-child(5) > h3",
    {"textContent": "impl Whatever for Foo"},
)

go-to: "file://" + |DOC_PATH| + "/test_docs/struct.HasEmptyTraits.html"
compare-elements-position-near-false: (
    "#impl-EmptyTrait1-for-HasEmptyTraits",
    "#impl-EmptyTrait2-for-HasEmptyTraits",
    {"y": 34},
)
compare-elements-position-near: (
    "#impl-EmptyTrait3-for-HasEmptyTraits h3",
    "#impl-EmptyTrait3-for-HasEmptyTraits .item-info",
    {"y": 34},
)

// Now check that re-exports work correctly.
// There should be exactly one impl shown on both of these pages.
go-to: "file://" + |DOC_PATH| + "/lib2/trait.TraitToReexport.html"
assert-count: ("#implementors-list .impl", 1)
go-to: "file://" + |DOC_PATH| + "/implementors/trait.TraitToReexport.html"
assert-count: ("#implementors-list .impl", 1)

// Now check that the link is properly rewritten for a crate called `http`.
// An older version of rustdoc had a buggy check for absolute links.
go-to: "file://" + |DOC_PATH| + "/http/trait.HttpTrait.html"
assert-count: ("#implementors-list .impl", 1)
assert-attribute: ("#implementors-list .impl a.trait", {"href": "../http/trait.HttpTrait.html"})

// Now we check that if JS is disabled, the implementors list will be visible.
javascript: false
reload:
assert-css: ("#implementors-list", {"display": "block"})
