blob: 6dc5a6bff175db8ab367adfc2b62c703c4c3b61f [file] [log] [blame] [edit]
// Test that the "hide deprecated" setting is correctly handled.
include: "utils.goml"
go-to: "file://" + |DOC_PATH| + "/lib2/deprecated/index.html"
store-value: (deprecated_class, ".deprecated")
// There should be two deprecated items listed on the module page:
// `DeprecatedStruct` and `DeprecatedTrait`.
assert-count: ("dt" + |deprecated_class|, 2)
// `DeprecatedStruct` and `DeprecatedTrait` should be displayed for now.
assert-css: ("dt" + |deprecated_class|, {"display": "block"}, ALL)
// We enable the "hide deprecated items" setting.
call-function: ("open-settings-menu", {})
click: "#hide-deprecated-items"
// None of them should be displayed anymore.
wait-for-css: ("dt" + |deprecated_class|, {"display": "none"}, ALL)
// We disable the setting.
click: "#hide-deprecated-items"
// All of them should be displayed back.
wait-for-css: ("dt" + |deprecated_class|, {"display": "block"}, ALL)
// Now we go to a trait with a deprecated method and a deprecated associated const.
go-to: "file://" + |DOC_PATH| + "/lib2/deprecated/trait.NormalTrait.html"
// There should be two deprecated items.
assert-count: ("details" + |deprecated_class|, 2)
// They should be displayed for now.
assert-css: ("details" + |deprecated_class|, {"display": "block"}, ALL)
// We enable the "hide deprecated items" setting.
call-function: ("open-settings-menu", {})
click: "#hide-deprecated-items"
// They shouldn't be displayed anymore.
wait-for-css: ("details" + |deprecated_class|, {"display": "none"}, ALL)
// We disable the setting.
click: "#hide-deprecated-items"
// All of them should be displayed back.
wait-for-css: ("details" + |deprecated_class|, {"display": "block"}, ALL)
// We now go to a struct with a deprecated method which implements a deprecated trait and a trait
// with deprecated associated items.
go-to: "file://" + |DOC_PATH| + "/lib2/deprecated/struct.NonDeprecatedStruct.html"
// There should be five deprecated items (six minus one "future" deprecated)...
assert-count: ("details" + |deprecated_class|, 5)
// One of which being a deprecated impl because the trait itself is deprecated.
assert-count: ("details.implementors-toggle" + |deprecated_class|, 1)
// And another has `since = "TBD"` and should NOT have the `deprecated` class.
assert: "details:not(" + |deprecated_class| + ") #method\.future_deprecated_fn"
// They should all be displayed for now.
assert-css: ("details" + |deprecated_class|, {"display": "block"}, ALL)
// We enable the "hide deprecated items" setting.
call-function: ("open-settings-menu", {})
click: "#hide-deprecated-items"
// They shouldn't be displayed anymore.
wait-for-css: ("details" + |deprecated_class|, {"display": "none"}, ALL)
// We disable the setting.
click: "#hide-deprecated-items"
// All of them should be displayed back.
wait-for-css: ("details" + |deprecated_class|, {"display": "block"}, ALL)
// And now we check with the search results.
call-function: ("perform-search", {"query": "deprecated::depr"})
// There should at least 7 results.
store-count: ("#results ul.search-results.active > a", nb_search_results)
assert: |nb_search_results| >= 7
// There should be at least 5 deprecated items.
store-count: ("#results ul.search-results.active > a" + |deprecated_class|, nb_deprecated_results)
assert: |nb_search_results| >= 5
// Deprecated items should all be displayed.
assert-css: ("#results ul.search-results.active > a" + |deprecated_class|, {"display": "grid"}, ALL)
// We enable the "hide deprecated items" setting.
call-function: ("open-settings-menu", {})
click: "#hide-deprecated-items"
// None of them should be displayed anymore.
wait-for-css: (
"#results ul.search-results.active > a" + |deprecated_class|,
{"display": "none"},
ALL,
)
// Finally we check that the future deprecated item doesn't have the deprecated class in the search
// and therefore isn't impact by the setting.
call-function: ("perform-search", {"query": "deprecated::future_deprecated"})
assert-text: (
"#results ul.search-results.active > a:not(" + |deprecated_class| + ") .path",
" lib2::deprecated::NonDeprecatedStruct::future_deprecated_fn",
)