mirror of
https://github.com/rust-lang/rust.git
synced 2024-11-25 08:13:41 +00:00
Rollup merge of #110037 - notriddle:notriddle/theme-default, r=GuillaumeGomez
rustdoc: add test and bug fix for theme defaults Part of https://github.com/rust-lang/rust/issues/66181
This commit is contained in:
commit
370084860a
@ -153,6 +153,7 @@ const updateTheme = (function() {
|
||||
if (getSettingValue("use-system-theme") !== "false") {
|
||||
const lightTheme = getSettingValue("preferred-light-theme") || "light";
|
||||
const darkTheme = getSettingValue("preferred-dark-theme") || "dark";
|
||||
updateLocalStorage("use-system-theme", "true");
|
||||
|
||||
// use light theme if user prefers it, or has no preference
|
||||
switchTheme(mql.matches ? darkTheme : lightTheme, true);
|
||||
|
24
tests/rustdoc-gui/theme-defaults.goml
Normal file
24
tests/rustdoc-gui/theme-defaults.goml
Normal file
@ -0,0 +1,24 @@
|
||||
// Ensure that the theme picker always starts with the actual defaults.
|
||||
goto: "file://" + |DOC_PATH| + "/test_docs/index.html"
|
||||
click: "#settings-menu"
|
||||
wait-for: "#theme-system-preference"
|
||||
assert: "#theme-system-preference:checked"
|
||||
assert: "#preferred-light-theme-light:checked"
|
||||
assert: "#preferred-dark-theme-dark:checked"
|
||||
assert-false: "#preferred-dark-theme-ayu:checked"
|
||||
|
||||
// Test legacy migration from old theme setup without system-preference matching.
|
||||
// See https://github.com/rust-lang/rust/pull/77809#issuecomment-707875732
|
||||
local-storage: {
|
||||
"rustdoc-preferred-light-theme": null,
|
||||
"rustdoc-preferred-dark-theme": null,
|
||||
"rustdoc-use-system-theme": null,
|
||||
"rustdoc-theme": "ayu"
|
||||
}
|
||||
goto: "file://" + |DOC_PATH| + "/test_docs/index.html"
|
||||
click: "#settings-menu"
|
||||
wait-for: "#theme-system-preference"
|
||||
assert: "#theme-system-preference:checked"
|
||||
assert: "#preferred-light-theme-light:checked"
|
||||
assert-false: "#preferred-dark-theme-dark:checked"
|
||||
assert: "#preferred-dark-theme-ayu:checked"
|
Loading…
Reference in New Issue
Block a user