| // This test is to ensure that the anchors (`ยง`) have the expected color and position. |
| |
| define-function: ( |
| "check-colors", |
| (theme, main_color, title_color, main_heading_color, main_heading_type_color, src_link_color, sidebar_link_color), |
| block { |
| go-to: "file://" + |DOC_PATH| + "/staged_api/struct.Foo.html" |
| // This is needed to ensure that the text color is computed. |
| show-text: true |
| |
| // Setting the theme. |
| set-local-storage: {"rustdoc-theme": |theme|, "rustdoc-use-system-theme": "false"} |
| // We reload the page so the local storage settings are being used. |
| reload: |
| |
| assert-css: ("#toggle-all-docs", {"color": |main_color|}) |
| assert-css: (".main-heading h1 a:nth-of-type(1)", {"color": |main_heading_color|}) |
| assert-css: (".main-heading a:nth-of-type(2)", {"color": |main_heading_type_color|}) |
| assert-css: ( |
| ".rightside .srclink", |
| {"color": |src_link_color|, "text-decoration": "none solid " + |src_link_color|}, |
| ALL, |
| ) |
| compare-elements-css: ( |
| ".rightside .srclink", |
| ".rightside.srclink", |
| ["color", "text-decoration"], |
| ) |
| compare-elements-css: ( |
| ".main-heading .srclink", |
| ".rightside.srclink", |
| ["color", "text-decoration"], |
| ) |
| |
| move-cursor-to: ".main-heading .srclink" |
| assert-css: ( |
| ".main-heading .srclink", |
| {"color": |src_link_color|, "text-decoration": "underline solid " + |src_link_color|}, |
| ) |
| move-cursor-to: ".impl-items .rightside .srclink" |
| assert-css: ( |
| ".impl-items .rightside .srclink", |
| {"color": |src_link_color|, "text-decoration": "none solid " + |src_link_color|}, |
| ) |
| move-cursor-to: ".impl-items .rightside.srclink" |
| assert-css: ( |
| ".impl-items .rightside.srclink", |
| {"color": |src_link_color|, "text-decoration": "none solid " + |src_link_color|}, |
| ) |
| |
| go-to: "file://" + |DOC_PATH| + "/test_docs/struct.HeavilyDocumentedStruct.html" |
| // Since we changed page, we need to set the theme again. |
| set-local-storage: {"rustdoc-theme": |theme|, "rustdoc-use-system-theme": "false"} |
| // We reload the page so the local storage settings are being used. |
| reload: |
| |
| assert-css: ("#top-doc-prose-title", {"color": |title_color|}) |
| |
| assert-css: (".sidebar a", {"color": |sidebar_link_color|}) |
| assert-css: (".main-heading h1 a", {"color": |title_color|}) |
| |
| // We move the cursor over the "Implementations" title so the anchor is displayed. |
| move-cursor-to: "h2#implementations" |
| assert-css: ("h2#implementations a.anchor", {"color": |main_color|}) |
| |
| // Same thing with the impl block title. |
| move-cursor-to: "#impl-HeavilyDocumentedStruct" |
| assert-css: ("#impl-HeavilyDocumentedStruct a.anchor", {"color": |main_color|}) |
| |
| assert-css: ("#title-for-struct-impl-item-doc", {"margin-left": "0px"}) |
| }, |
| ) |
| |
| call-function: ( |
| "check-colors", |
| { |
| "theme": "ayu", |
| "main_color": "rgb(197, 197, 197)", |
| "title_color": "rgb(255, 255, 255)", |
| "main_heading_color": "rgb(255, 255, 255)", |
| "main_heading_type_color": "rgb(255, 160, 165)", |
| "src_link_color": "rgb(57, 175, 215)", |
| "sidebar_link_color": "rgb(83, 177, 219)", |
| }, |
| ) |
| call-function: ( |
| "check-colors", |
| { |
| "theme": "dark", |
| "main_color": "rgb(221, 221, 221)", |
| "title_color": "rgb(221, 221, 221)", |
| "main_heading_color": "rgb(221, 221, 221)", |
| "main_heading_type_color": "rgb(45, 191, 184)", |
| "src_link_color": "rgb(210, 153, 29)", |
| "sidebar_link_color": "rgb(253, 191, 53)", |
| }, |
| ) |
| call-function: ( |
| "check-colors", |
| { |
| "theme": "light", |
| "main_color": "rgb(0, 0, 0)", |
| "title_color": "rgb(0, 0, 0)", |
| "main_heading_color": "rgb(0, 0, 0)", |
| "main_heading_type_color": "rgb(173, 55, 138)", |
| "src_link_color": "rgb(56, 115, 173)", |
| "sidebar_link_color": "rgb(53, 109, 164)", |
| }, |
| ) |