| // This test ensures that the elements in ".search-form" have the expected display. | |
| include: "utils.goml" | |
| go-to: "file://" + |DOC_PATH| + "/test_docs/index.html?search=test" | |
| wait-for: "#search-tabs" // Waiting for the search.js to load. | |
| wait-for-false: "#search-tabs .count.loading" | |
| show-text: true | |
| define-function: ( | |
| "check-search-colors", | |
| [ | |
| theme, border, background, search_input_color, search_input_border_focus, | |
| menu_button_a_color, menu_button_a_border_hover, menu_a_color, | |
| ], | |
| block { | |
| call-function: ("switch-theme", {"theme": |theme|}) | |
| assert-css: ( | |
| ".search-input", | |
| { | |
| "border-color": |border|, | |
| "background-color": |background|, | |
| "color": |search_input_color|, | |
| }, | |
| ) | |
| // Focus on search input. | |
| focus: ".search-input" | |
| assert-css: ( | |
| ".search-input", | |
| { | |
| "border-color": |search_input_border_focus|, | |
| "background-color": |background|, | |
| "color": |search_input_color|, | |
| }, | |
| ) | |
| assert-css: ( | |
| "rustdoc-toolbar .help-menu > a", | |
| { | |
| "color": |menu_button_a_color|, | |
| "border-color": "transparent", | |
| "background-color": "transparent", | |
| }, | |
| ) | |
| // Hover help button. | |
| move-cursor-to: "rustdoc-toolbar .help-menu" | |
| assert-css: ( | |
| "rustdoc-toolbar .help-menu > a", | |
| { | |
| "color": |menu_button_a_color|, | |
| "border-color": |menu_button_a_border_hover|, | |
| "background-color": "transparent", | |
| }, | |
| ) | |
| // Link color inside | |
| click: "rustdoc-toolbar .help-menu" | |
| assert-css: ( | |
| "rustdoc-toolbar #help a", | |
| { | |
| "color": |menu_a_color|, | |
| }, | |
| ) | |
| assert-css: ( | |
| "rustdoc-toolbar .settings-menu > a", | |
| { | |
| "color": |menu_button_a_color|, | |
| "border-color": "transparent", | |
| "background-color": "transparent", | |
| }, | |
| ) | |
| // Hover settings menu. | |
| move-cursor-to: "rustdoc-toolbar .settings-menu" | |
| assert-css: ( | |
| "rustdoc-toolbar .settings-menu:hover > a", | |
| { | |
| "color": |menu_button_a_color|, | |
| "border-color": |menu_button_a_border_hover|, | |
| "background-color": "transparent", | |
| }, | |
| ) | |
| }, | |
| ) | |
| call-function: ( | |
| "check-search-colors", | |
| { | |
| "theme": "ayu", | |
| "border": "#5c6773", | |
| "background": "#141920", | |
| "search_input_color": "#fff", | |
| "search_input_border_focus": "#5c6773", | |
| "menu_button_a_color": "#c5c5c5", | |
| "menu_button_a_border_hover": "#e0e0e0", | |
| "menu_a_color": "#39afd7", | |
| } | |
| ) | |
| call-function: ( | |
| "check-search-colors", | |
| { | |
| "theme": "dark", | |
| "border": "#e0e0e0", | |
| "background": "#f0f0f0", | |
| "search_input_color": "#111", | |
| "search_input_border_focus": "#008dfd", | |
| "menu_button_a_color": "#ddd", | |
| "menu_button_a_border_hover": "#ffb900", | |
| "menu_a_color": "#d2991d", | |
| } | |
| ) | |
| call-function: ( | |
| "check-search-colors", | |
| { | |
| "theme": "light", | |
| "border": "#e0e0e0", | |
| "background": "#fff", | |
| "search_input_color": "#000", | |
| "search_input_border_focus": "#66afe9", | |
| "menu_button_a_color": "#000", | |
| "menu_button_a_border_hover": "#717171", | |
| "menu_a_color": "#3873ad", | |
| } | |
| ) | |
| // Check that search input correctly decodes form encoding. | |
| go-to: "file://" + |DOC_PATH| + "/test_docs/index.html?search=a+b" | |
| wait-for: "#search-tabs" // Waiting for the search.js to load. | |
| wait-for-false: "#search-tabs .count.loading" | |
| assert-property: (".search-input", { "value": "a b" }) | |
| // Check that literal + is not treated as space. | |
| go-to: "file://" + |DOC_PATH| + "/test_docs/index.html?search=a%2Bb" | |
| wait-for: "#search-tabs" // Waiting for the search.js to load. | |
| wait-for-false: "#search-tabs .count.loading" | |
| assert-property: (".search-input", { "value": "a+b" }) |