rust/tests/rustdoc-gui/help-page.goml

72 lines
2.7 KiB
Plaintext
Raw Normal View History

// This test ensures that opening the help page in its own tab works.
go-to: "file://" + |DOC_PATH| + "/help.html"
set-window-size: (1000, 1000) // Try desktop size first.
wait-for: "#help"
assert-css: ("#help", {"display": "block"})
assert-css: ("#help dd", {"font-size": "16px"})
click: "#help-button > a"
assert-css: ("#help", {"display": "block"})
compare-elements-property: (".sub", "#help", ["offsetWidth"])
compare-elements-position: (".sub", "#help", ("x"))
set-window-size: (500, 1000) // Try mobile next.
assert-css: ("#help", {"display": "block"})
compare-elements-property: (".sub", "#help", ["offsetWidth"])
compare-elements-position: (".sub", "#help", ("x"))
2022-11-20 07:32:10 -06:00
// Checking the color of the elements of the help menu.
show-text: true
define-function: (
"check-colors",
(theme, color, background, box_shadow),
block {
2022-11-20 07:32:10 -06:00
// Setting the theme.
set-local-storage: {"rustdoc-theme": |theme|, "rustdoc-use-system-theme": "false"}
2022-11-20 07:32:10 -06:00
// We reload the page so the local storage settings are being used.
reload:
assert-css: ("#help kbd", {
2022-11-20 07:32:10 -06:00
"color": |color|,
"background-color": |background|,
"box-shadow": |box_shadow| + " 0px -1px 0px 0px inset",
}, ALL)
},
2022-11-20 07:32:10 -06:00
)
call-function: ("check-colors", {
"theme": "ayu",
"color": "rgb(197, 197, 197)",
"background": "rgb(49, 69, 89)",
"box_shadow": "rgb(92, 103, 115)",
})
call-function: ("check-colors", {
"theme": "dark",
2023-01-05 04:03:45 -06:00
"color": "rgb(0, 0, 0)",
2022-11-20 07:32:10 -06:00
"background": "rgb(250, 251, 252)",
"box_shadow": "rgb(198, 203, 209)",
})
call-function: ("check-colors", {
"theme": "light",
"color": "rgb(0, 0, 0)",
"background": "rgb(250, 251, 252)",
"box_shadow": "rgb(198, 203, 209)",
})
// This test ensures that opening the help popover without switching pages works.
go-to: "file://" + |DOC_PATH| + "/test_docs/index.html"
set-window-size: (1000, 1000) // Only supported on desktop.
assert-false: "#help"
click: "#help-button > a"
assert-css: ("#help", {"display": "block"})
assert-css: ("#help dd", {"font-size": "16px"})
click: "#help-button > a"
assert-css: ("#help", {"display": "none"})
compare-elements-property-false: (".sub", "#help", ["offsetWidth"])
compare-elements-position-false: (".sub", "#help", ("x"))
// This test ensures that the "the rustdoc book" anchor link within the help popover works.
go-to: "file://" + |DOC_PATH| + "/test_docs/index.html"
set-window-size: (1000, 1000) // Popover only appears when the screen width is >700px.
assert-false: "#help"
click: "#help-button > a"
2023-06-23 12:34:37 -05:00
click: "//*[@id='help']//a[text()='the rustdoc book']"
wait-for-document-property: ({"URL": "https://doc.rust-lang.org/"}, STARTS_WITH)