summaryrefslogtreecommitdiffstats
path: root/tests/rustdoc-gui/theme-in-history.goml
diff options
context:
space:
mode:
Diffstat (limited to 'tests/rustdoc-gui/theme-in-history.goml')
-rw-r--r--tests/rustdoc-gui/theme-in-history.goml27
1 files changed, 27 insertions, 0 deletions
diff --git a/tests/rustdoc-gui/theme-in-history.goml b/tests/rustdoc-gui/theme-in-history.goml
new file mode 100644
index 000000000..10508e86a
--- /dev/null
+++ b/tests/rustdoc-gui/theme-in-history.goml
@@ -0,0 +1,27 @@
+// Ensures that the theme is working when going back in history.
+goto: "file://" + |DOC_PATH| + "/test_docs/index.html"
+// Set the theme to dark.
+local-storage: {
+ "rustdoc-theme": "dark",
+ "rustdoc-use-system-theme": "false",
+}
+// We reload the page so the local storage settings are being used.
+reload:
+assert-css: ("body", { "background-color": "rgb(53, 53, 53)" })
+assert-local-storage: { "rustdoc-theme": "dark" }
+
+// Now we go to the settings page.
+goto: "file://" + |DOC_PATH| + "/settings.html"
+wait-for: "#settings"
+// We change the theme to "light".
+click: "#theme-light"
+wait-for-css: ("body", { "background-color": "rgb(255, 255, 255)" })
+assert-local-storage: { "rustdoc-theme": "light" }
+
+// We go back in history.
+history-go-back:
+// Confirm that we're not on the settings page.
+assert-false: "#settings"
+// Check that the current theme is still "light".
+assert-css: ("body", { "background-color": "rgb(255, 255, 255)" })
+assert-local-storage: { "rustdoc-theme": "light" }